summaryrefslogtreecommitdiff
path: root/net/mac80211
diff options
context:
space:
mode:
authorArik Nemtsov <arik@wizery.com>2011-02-01 13:23:05 +0200
committerJohn W. Linville <linville@tuxdriver.com>2011-02-03 16:44:44 -0500
commit771bbd09f7febb854dd7c30f983aa57535f9e8c9 (patch)
tree2943cd110d0020596b227fe56ccfc7d285e85426 /net/mac80211
parentd057e5a381cbaec5632117bf62ba49438ab16214 (diff)
mac80211: pass up beacons from external BSS when operating as AP
Beacons from external BSSes are required for updating overlapping BSS info (i.e. ERP protection). Pass them up unconditionally. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211')
-rw-r--r--net/mac80211/rx.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index d78d6fc333d2..c08b8e90bbcb 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -2698,7 +2698,8 @@ static int prepare_for_handlers(struct ieee80211_rx_data *rx,
return 0;
} else if (!ieee80211_bssid_match(bssid,
sdata->vif.addr)) {
- if (!(status->rx_flags & IEEE80211_RX_IN_SCAN))
+ if (!(status->rx_flags & IEEE80211_RX_IN_SCAN) &&
+ !ieee80211_is_beacon(hdr->frame_control))
return 0;
status->rx_flags &= ~IEEE80211_RX_RA_MATCH;
}