summaryrefslogtreecommitdiffstats
path: root/sys/dev/an
diff options
context:
space:
mode:
authorbrooks <brooks@FreeBSD.org>2002-02-20 18:23:59 +0000
committerbrooks <brooks@FreeBSD.org>2002-02-20 18:23:59 +0000
commit68b18766569b51d6e6b08485f73e2b14092e2ece (patch)
tree769a5a835588614ed9dca7806cbb5cfc8efb2224 /sys/dev/an
parentc7a3f8f1368798b2fe5c03e73f085e077901ba84 (diff)
downloadFreeBSD-src-68b18766569b51d6e6b08485f73e2b14092e2ece.zip
FreeBSD-src-68b18766569b51d6e6b08485f73e2b14092e2ece.tar.gz
Add missing m_free() so we actually drain the send buffer in monitor mode.
Submitted by: Kenjiro Cho <kjc@csl.sony.co.jp>
Diffstat (limited to 'sys/dev/an')
-rw-r--r--sys/dev/an/if_an.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/an/if_an.c b/sys/dev/an/if_an.c
index 37b4c59..c058706 100644
--- a/sys/dev/an/if_an.c
+++ b/sys/dev/an/if_an.c
@@ -1968,11 +1968,13 @@ an_start(ifp)
if (!sc->an_associated)
return;
+ /* We can't send in monitor mode so toss any attempts. */
if (sc->an_monitor && (ifp->if_flags & IFF_PROMISC)) {
for (;;) {
IF_DEQUEUE(&ifp->if_snd, m0);
if (m0 == NULL)
break;
+ m_freem(m0);
}
return;
}
OpenPOWER on IntegriCloud