From a9d753be453fb6cfc1589794df923b8e5d5c9490 Mon Sep 17 00:00:00 2001 From: gavin Date: Tue, 10 Dec 2013 19:17:31 +0000 Subject: [PATCH] Merge r259174 from stable/10 (head r256294 by adrian): Fix the "am I a net80211 vap" check for bpf listeners. I changed it to use if_transmit a while ago but apparently with monitor mode the if_transmit method is overridden. This is (mostly) a workaround until a more permanent solution can be found. Submitted by: Patrick Kelsey Approved by: re (glebius) git-svn-id: svn://svn.freebsd.org/base/releng/10.0@259187 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- sys/net80211/ieee80211_freebsd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/net80211/ieee80211_freebsd.c b/sys/net80211/ieee80211_freebsd.c index b616c445..8c97f1e2 100644 --- a/sys/net80211/ieee80211_freebsd.c +++ b/sys/net80211/ieee80211_freebsd.c @@ -808,9 +808,9 @@ static eventhandler_tag wlan_ifllevent; static void bpf_track(void *arg, struct ifnet *ifp, int dlt, int attach) { - /* NB: identify vap's by if_start */ + /* NB: identify vap's by if_init */ if (dlt == DLT_IEEE802_11_RADIO && - ifp->if_transmit == ieee80211_vap_transmit) { + ifp->if_init == ieee80211_init) { struct ieee80211vap *vap = ifp->if_softc; /* * Track bpf radiotap listener state. We mark the vap -- 2.42.0