Patchwork [3.5.y.z,extended,stable] Patch "mac80211: fix AP-mode frame matching" has been added to staging queue

mail settings
Submitter Luis Henriques
Date May 28, 2013, 9:51 a.m.
Message ID <>
Download mbox | patch
Permalink /patch/246789/
State New
Headers show


Luis Henriques - May 28, 2013, 9:51 a.m.
This is a note to let you know that I have just added a patch titled

    mac80211: fix AP-mode frame matching

to the linux-3.5.y-queue branch of the 3.5.y.z extended stable tree 
which can be found at:;a=shortlog;h=refs/heads/linux-3.5.y-queue

If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.5.y.z tree, see



From 662ab25991b6ac286143d5edd30fab4f791833d1 Mon Sep 17 00:00:00 2001
From: Johannes Berg <>
Date: Mon, 13 May 2013 16:42:40 +0200
Subject: [PATCH] mac80211: fix AP-mode frame matching

commit 2b9ccd4e4308272e5aec614b77c5385e7ec2ec90 upstream.

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.

Reported-by: Jouni Malinen <>
Signed-off-by: Johannes Berg <>
[ luis: adjust context ]
Signed-off-by: Luis Henriques <>
 net/mac80211/rx.c | 3 +++
 1 file changed, 3 insertions(+)



diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index 064384c..1914a65 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -2861,6 +2861,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 (!(status->rx_flags & IEEE80211_RX_IN_SCAN) &&
 			    ieee80211_is_public_action(hdr, skb->len))
 				return 1;