summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorArik Nemtsov <arik@wizery.com>2011-08-23 07:21:27 (GMT)
committerJohn W. Linville <linville@tuxdriver.com>2011-08-26 14:47:56 (GMT)
commita21fa87e3a3a8390f17f53967baa574f4e1e1e76 (patch)
tree66e6dfbfbc376968da91a9698f5670f62ed11e00 /net
parent1a6e9d0f2e5de4cc8dfa3e8e67c2decd02976cf3 (diff)
downloadlinux-fsl-qoriq-a21fa87e3a3a8390f17f53967baa574f4e1e1e76.tar.xz
mac80211: allow action frames with unknown BSSID in GO mode
When operating as a P2P GO, we receive some P2P action frames where the BSSID is set to the peer MAC address. Specifically, this occurs for invitation responses. These are valid action frames and they should be passed up. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net')
-rw-r--r--net/mac80211/rx.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index edd4619..f45fd2f 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -2716,7 +2716,9 @@ static int prepare_for_handlers(struct ieee80211_rx_data *rx,
} else if (!ieee80211_bssid_match(bssid,
sdata->vif.addr)) {
if (!(status->rx_flags & IEEE80211_RX_IN_SCAN) &&
- !ieee80211_is_beacon(hdr->frame_control))
+ !ieee80211_is_beacon(hdr->frame_control) &&
+ !(ieee80211_is_action(hdr->frame_control) &&
+ sdata->vif.p2p))
return 0;
status->rx_flags &= ~IEEE80211_RX_RA_MATCH;
}