svn commit: r241034 - head/sys/dev/usb/net
Hans Petter Selasky
hselasky at FreeBSD.org
Fri Sep 28 16:23:01 UTC 2012
Author: hselasky
Date: Fri Sep 28 16:23:01 2012
New Revision: 241034
URL: http://svn.freebsd.org/changeset/base/241034
Log:
Make sure we don't leak a mbuf in a fail case.
Modified:
head/sys/dev/usb/net/if_smsc.c
Modified: head/sys/dev/usb/net/if_smsc.c
==============================================================================
--- head/sys/dev/usb/net/if_smsc.c Fri Sep 28 15:33:13 2012 (r241033)
+++ head/sys/dev/usb/net/if_smsc.c Fri Sep 28 16:23:01 2012 (r241034)
@@ -1043,8 +1043,11 @@ smsc_bulk_read_callback(struct usb_xfer
/* Finally enqueue the mbuf on the receive queue */
/* Remove 4 trailing bytes */
- if (pktlen >= (4 + ETHER_HDR_LEN))
- uether_rxmbuf(ue, m, pktlen - 4);
+ if (pktlen < (4 + ETHER_HDR_LEN)) {
+ m_freem(m);
+ goto tr_setup;
+ }
+ uether_rxmbuf(ue, m, pktlen - 4);
}
/* Update the offset to move to the next potential packet */
More information about the svn-src-all
mailing list