diff options
Diffstat (limited to 'sys/netinet')
| -rw-r--r-- | sys/netinet/udp_usrreq.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index 9391f078e885..3b1e70bfa1aa 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -496,10 +496,10 @@ udp_append(struct inpcb *inp, struct ip *ip, struct mbuf *n, int off, INP_LOCK_ASSERT(inp); #ifdef IPSEC - /* check AH/ESP integrity. */ + /* Check AH/ESP integrity. */ if (ipsec4_in_reject(n, inp)) { - ipsec4stat.in_polvio++; m_freem(n); + ipsec4stat.in_polvio++; return; } #endif /* IPSEC */ @@ -538,11 +538,11 @@ udp_append(struct inpcb *inp, struct ip *ip, struct mbuf *n, int off, so = inp->inp_socket; SOCKBUF_LOCK(&so->so_rcv); if (sbappendaddr_locked(&so->so_rcv, append_sa, n, opts) == 0) { + SOCKBUF_UNLOCK(&so->so_rcv); m_freem(n); if (opts) m_freem(opts); udpstat.udps_fullsock++; - SOCKBUF_UNLOCK(&so->so_rcv); } else sorwakeup_locked(so); } |
