diff options
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r-- | net/mac80211/rx.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 472b19fc914..279ee493520 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c | |||
@@ -1695,7 +1695,10 @@ static int prepare_for_handlers(struct ieee80211_sub_if_data *sdata, | |||
1695 | case IEEE80211_IF_TYPE_IBSS: | 1695 | case IEEE80211_IF_TYPE_IBSS: |
1696 | if (!bssid) | 1696 | if (!bssid) |
1697 | return 0; | 1697 | return 0; |
1698 | if (!ieee80211_bssid_match(bssid, sdata->u.sta.bssid)) { | 1698 | if ((rx->fc & IEEE80211_FCTL_FTYPE) == IEEE80211_FTYPE_MGMT && |
1699 | (rx->fc & IEEE80211_FCTL_STYPE) == IEEE80211_STYPE_BEACON) | ||
1700 | return 1; | ||
1701 | else if (!ieee80211_bssid_match(bssid, sdata->u.sta.bssid)) { | ||
1699 | if (!(rx->flags & IEEE80211_TXRXD_RXIN_SCAN)) | 1702 | if (!(rx->flags & IEEE80211_TXRXD_RXIN_SCAN)) |
1700 | return 0; | 1703 | return 0; |
1701 | rx->flags &= ~IEEE80211_TXRXD_RXRA_MATCH; | 1704 | rx->flags &= ~IEEE80211_TXRXD_RXRA_MATCH; |