The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=509a185dd9405141df4d304d7805019b40e736cf
commit 509a185dd9405141df4d304d7805019b40e736cf Author: Gleb Smirnoff <[email protected]> AuthorDate: 2026-01-10 18:56:19 +0000 Commit: Gleb Smirnoff <[email protected]> CommitDate: 2026-01-10 18:56:19 +0000 net80211: fix bpf tap leak on wlan(4) detach PR: 292337 Fixes: 8774a990ee4094f16d596d4b78e0f3239e5d0c88 --- sys/net80211/ieee80211_radiotap.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/sys/net80211/ieee80211_radiotap.c b/sys/net80211/ieee80211_radiotap.c index 4d36be6df9f5..aa1812045953 100644 --- a/sys/net80211/ieee80211_radiotap.c +++ b/sys/net80211/ieee80211_radiotap.c @@ -110,12 +110,6 @@ ieee80211_radiotap_detach(struct ieee80211com *ic) { } -void -ieee80211_radiotap_vdetach(struct ieee80211vap *vap) -{ - /* NB: bpfdetach is called by ether_ifdetach and claims all taps */ -} - static void set_channel(void *p, const struct ieee80211_channel *c) { @@ -472,3 +466,12 @@ ieee80211_radiotap_vattach(struct ieee80211vap *vap) if_ref(vap->iv_ifp); } } + +void +ieee80211_radiotap_vdetach(struct ieee80211vap *vap) +{ + if (vap->iv_rawbpf != NULL) { + bpf_detach(vap->iv_rawbpf); + if_rele(vap->iv_ifp); + } +}
