diff options
author | gavin <gavin@FreeBSD.org> | 2013-12-10 13:38:39 +0000 |
---|---|---|
committer | gavin <gavin@FreeBSD.org> | 2013-12-10 13:38:39 +0000 |
commit | 02c40422cc3bdf6748ba728a6643bcd3b8e7ef9b (patch) | |
tree | 3007c21a1ed3655a7880bf2e7db31686bc139489 | |
parent | a26c2c1c13e7532e1f62dcde424866110a897621 (diff) | |
download | FreeBSD-src-02c40422cc3bdf6748ba728a6643bcd3b8e7ef9b.zip FreeBSD-src-02c40422cc3bdf6748ba728a6643bcd3b8e7ef9b.tar.gz |
Merge r256294 (by adrian) from head:
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.
Candidate for 10.0.
Submitted by: Patrick Kelsey <kelsey@ieee.org>
-rw-r--r-- | sys/net80211/ieee80211_freebsd.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/net80211/ieee80211_freebsd.c b/sys/net80211/ieee80211_freebsd.c index b616c44..8c97f1e 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 |