Skip to contentSkip to conversation

Patch "mac80211: Fix Public Action frame RX in AP mode" has been added to the 4.4-stable tree

PATCH [email protected] 1 participant 1 message Mar 12, 2016

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

mac80211: Fix Public Action frame RX in AP mode

to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:

     mac80211-fix-public-action-frame-rx-in-ap-mode.patch

and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 1ec7bae8bec9b72e347e01330c745ab5cdd66f0e Mon Sep 17 00:00:00 2001

From: Jouni Malinen <[email protected]>
Date: Tue, 1 Mar 2016 00:29:00 +0200
Subject: mac80211: Fix Public Action frame RX in AP mode

From: Jouni Malinen <[email protected]>

commit 1ec7bae8bec9b72e347e01330c745ab5cdd66f0e upstream.

Public Action frames use special rules for how the BSSID field (Address
3) is set. A wildcard BSSID is used in cases where the transmitter and recipient are not members of the same BSS. As such, we need to accept Public Action frames with wildcard BSSID.

Commit db8e17324553 ("mac80211: ignore frames between TDLS peers when operating as AP") added a rule that drops Action frames to TDLS-peers based on an Action frame having different DA (Address 1) and BSSID (Address 3) values. This is not correct since it misses the possibility of BSSID being a wildcard BSSID in which case the Address 1 would not necessarily match.

Fix this by allowing mac80211 to accept wildcard BSSID in an Action frame when in AP mode.

Fixes db8e17324553 ("mac80211: ignore frames between TDLS peers when operating as AP")
---
 net/mac80211/rx.c |    1 +
 1 file changed, 1 insertion(+)
net/mac80211/rx.c +1 -0
@@ -3385,6 +3385,7 @@ static bool ieee80211_accept_frame(struc
 				return false;
 			/* ignore action frames to TDLS-peers */
 			if (ieee80211_is_action(hdr->frame_control) &&
+			    !is_broadcast_ether_addr(bssid) &&
 			    !ether_addr_equal(bssid, hdr->addr1))
 				return false;
 		}

Patches currently in stable-queue which might be from [email protected] are

queue-4.4/mac80211-fix-public-action-frame-rx-in-ap-mode.patch