summaryrefslogtreecommitdiffstats
path: root/sys/dev/an
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2006-01-15 12:06:09 +0000
committerrwatson <rwatson@FreeBSD.org>2006-01-15 12:06:09 +0000
commit428bff839a9349d39cb7f72cfed84283cf8e5722 (patch)
treefa9aafda98cee73b5a731e32ec0623be50781fbb /sys/dev/an
parentf3be6cf7644d59b10d9bcbc9a5fd57711bf25ac6 (diff)
downloadFreeBSD-src-428bff839a9349d39cb7f72cfed84283cf8e5722.zip
FreeBSD-src-428bff839a9349d39cb7f72cfed84283cf8e5722.tar.gz
If frame length is excessive, don't leak an mbuf and cluster when
abandoning processing. Found with: Coverity Prevent (tm) MFC after: 1 week
Diffstat (limited to 'sys/dev/an')
-rw-r--r--sys/dev/an/if_an.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/dev/an/if_an.c b/sys/dev/an/if_an.c
index cb22492..3824913 100644
--- a/sys/dev/an/if_an.c
+++ b/sys/dev/an/if_an.c
@@ -1034,6 +1034,7 @@ an_rxeof(struct an_softc *sc)
/* Check for insane frame length */
len = an_rx_desc.an_len + 12;
if (len > MCLBYTES) {
+ m_freem(m);
printf("an%d: oversized packet "
"received (%d, %d)\n",
sc->an_unit, len, MCLBYTES);
OpenPOWER on IntegriCloud