summaryrefslogtreecommitdiffstats
path: root/sys/net80211
diff options
context:
space:
mode:
authoravatar <avatar@FreeBSD.org>2005-07-06 01:31:34 +0000
committeravatar <avatar@FreeBSD.org>2005-07-06 01:31:34 +0000
commit9fb6cc8fde85360ec292c60cb811ea4c9bbd701f (patch)
tree88d11c5990aa3cd7e9468c27ec2d3b6b98848352 /sys/net80211
parent23f56c61a96992c32ea50b6322160e084052f565 (diff)
downloadFreeBSD-src-9fb6cc8fde85360ec292c60cb811ea4c9bbd701f.zip
FreeBSD-src-9fb6cc8fde85360ec292c60cb811ea4c9bbd701f.tar.gz
Only update the scan entry state based on newly received frames.
This fixes duplicative BSS entries(memory leaks as well) listed in "ifconfig dev list scan" when a station fails to associate with an AP. Reviewed by: sam Approved by: re (scottl)
Diffstat (limited to 'sys/net80211')
-rw-r--r--sys/net80211/ieee80211_input.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/net80211/ieee80211_input.c b/sys/net80211/ieee80211_input.c
index 46d0e60..50c3ccf 100644
--- a/sys/net80211/ieee80211_input.c
+++ b/sys/net80211/ieee80211_input.c
@@ -1917,7 +1917,8 @@ ieee80211_recv_mgmt(struct ieee80211com *ic, struct mbuf *m0,
return;
}
- if (ni == ic->ic_bss) {
+ if (ni == ic->ic_bss &&
+ !IEEE80211_ADDR_EQ(wh->i_addr2, ni->ni_bssid)) {
#ifdef IEEE80211_DEBUG
if (ieee80211_msg_scan(ic))
dump_probe_beacon(subtype, 1,
OpenPOWER on IntegriCloud