| Date | Wed, 03 Jul 2013 14:39:01 -0400 | From | Steven Rostedt <> | Subject | [004/141] mac80211: fix AP-mode frame matching |
| |
3.6.11.6 stable review patch. If anyone has any objections, please let me know.
------------------
From: Johannes Berg <johannes.berg@intel.com>
[ Upstream commit 2b9ccd4e4308272e5aec614b77c5385e7ec2ec90 ]
In AP mode, ignore frames with mis-matched BSSID that aren't multicast or sent to the correct destination. This fixes reporting public action frames to userspace multiple times on multiple virtual AP interfaces.
Cc: stable@vger.kernel.org Reported-by: Jouni Malinen <j@w1.fi> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> --- net/mac80211/rx.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 37fe5ce..bd11c1c 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c @@ -2813,6 +2813,9 @@ static int prepare_for_handlers(struct ieee80211_rx_data *rx, * and location updates. Note that mac80211 * itself never looks at these frames. */ + if (!multicast && + !ether_addr_equal(sdata->vif.addr, hdr->addr1)) + return 0; if (ieee80211_is_public_action(hdr, skb->len)) return 1; if (!ieee80211_is_beacon(hdr->frame_control)) -- 1.7.10.4
|