diff options
author | rwatson <rwatson@FreeBSD.org> | 2007-07-07 09:46:34 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2007-07-07 09:46:34 +0000 |
commit | a78856a25adea9c313f58c5948c157421a7089f6 (patch) | |
tree | 3d3c6e6d186211f33928b260c91c66d0da9e12b9 /sys/netinet/udp_usrreq.c | |
parent | 0985df88fce8b53350ba7440655502f80785ea5b (diff) | |
download | FreeBSD-src-a78856a25adea9c313f58c5948c157421a7089f6.zip FreeBSD-src-a78856a25adea9c313f58c5948c157421a7089f6.tar.gz |
Minor UDPv4 cleanup: capitalize comment, move statistics update after mbuf
free to be consistent with other error handling, and release socket buffer
lock before freeing mbufs and statistics updates rather than after.
Approved by: re (kensmith)
Diffstat (limited to 'sys/netinet/udp_usrreq.c')
-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 9391f07..3b1e70b 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); } |