]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - queue-4.4/mac80211-drop-robust-management-frames-from-unknown-ta.patch
4.4-stable patches
[thirdparty/kernel/stable-queue.git] / queue-4.4 / mac80211-drop-robust-management-frames-from-unknown-ta.patch
1 From 588f7d39b3592a36fb7702ae3b8bdd9be4621e2f Mon Sep 17 00:00:00 2001
2 From: Johannes Berg <johannes.berg@intel.com>
3 Date: Wed, 13 Feb 2019 15:13:30 +0100
4 Subject: mac80211: drop robust management frames from unknown TA
5
6 From: Johannes Berg <johannes.berg@intel.com>
7
8 commit 588f7d39b3592a36fb7702ae3b8bdd9be4621e2f upstream.
9
10 When receiving a robust management frame, drop it if we don't have
11 rx->sta since then we don't have a security association and thus
12 couldn't possibly validate the frame.
13
14 Cc: stable@vger.kernel.org
15 Signed-off-by: Johannes Berg <johannes.berg@intel.com>
16 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
17
18 ---
19 net/mac80211/rx.c | 2 ++
20 1 file changed, 2 insertions(+)
21
22 --- a/net/mac80211/rx.c
23 +++ b/net/mac80211/rx.c
24 @@ -3324,6 +3324,8 @@ static bool ieee80211_accept_frame(struc
25 case NL80211_IFTYPE_STATION:
26 if (!bssid && !sdata->u.mgd.use_4addr)
27 return false;
28 + if (ieee80211_is_robust_mgmt_frame(skb) && !rx->sta)
29 + return false;
30 if (multicast)
31 return true;
32 return ether_addr_equal(sdata->vif.addr, hdr->addr1);