summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Cline <jcline@redhat.com>2020-03-30 11:19:10 -0400
committerJeremy Cline <jcline@redhat.com>2020-03-30 11:20:39 -0400
commit7ffc6f43770c8af7d733c131d2bed274b7baec9a (patch)
tree7feabdb98b3e6ec0cf36f929d920b6348f3be0f8
parentc6d05afe539cb3c6202a9f60dccbd240f936c00b (diff)
downloadkernel-7ffc6f43770c8af7d733c131d2bed274b7baec9a.tar.gz
kernel-7ffc6f43770c8af7d733c131d2bed274b7baec9a.tar.xz
kernel-7ffc6f43770c8af7d733c131d2bed274b7baec9a.zip
Backport iwlwifi authentication fix
-rw-r--r--0001-mac80211-fix-authentication-with-iwlwifi-mvm.patch35
-rw-r--r--kernel.spec2
2 files changed, 37 insertions, 0 deletions
diff --git a/0001-mac80211-fix-authentication-with-iwlwifi-mvm.patch b/0001-mac80211-fix-authentication-with-iwlwifi-mvm.patch
new file mode 100644
index 000000000..fb8319ecf
--- /dev/null
+++ b/0001-mac80211-fix-authentication-with-iwlwifi-mvm.patch
@@ -0,0 +1,35 @@
+From b8b93985bfe32da1230ec77c75dde398a0c3b142 Mon Sep 17 00:00:00 2001
+From: Johannes Berg <johannes.berg@intel.com>
+Date: Sun, 29 Mar 2020 22:50:06 +0200
+Subject: [PATCH] mac80211: fix authentication with iwlwifi/mvm
+
+The original patch didn't copy the ieee80211_is_data() condition
+because on most drivers the management frames don't go through
+this path. However, they do on iwlwifi/mvm, so we do need to keep
+the condition here.
+
+Cc: stable@vger.kernel.org
+Fixes: ce2e1ca70307 ("mac80211: Check port authorization in the ieee80211_tx_dequeue() case")
+Signed-off-by: Johannes Berg <johannes.berg@intel.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ net/mac80211/tx.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
+index d9cca6dbd870..efe4c1fc68e5 100644
+--- a/net/mac80211/tx.c
++++ b/net/mac80211/tx.c
+@@ -3610,7 +3610,8 @@ struct sk_buff *ieee80211_tx_dequeue(struct ieee80211_hw *hw,
+ * Drop unicast frames to unauthorised stations unless they are
+ * EAPOL frames from the local station.
+ */
+- if (unlikely(!ieee80211_vif_is_mesh(&tx.sdata->vif) &&
++ if (unlikely(ieee80211_is_data(hdr->frame_control) &&
++ !ieee80211_vif_is_mesh(&tx.sdata->vif) &&
+ tx.sdata->vif.type != NL80211_IFTYPE_OCB &&
+ !is_multicast_ether_addr(hdr->addr1) &&
+ !test_sta_flag(tx.sta, WLAN_STA_AUTHORIZED) &&
+--
+2.26.0
+
diff --git a/kernel.spec b/kernel.spec
index 2ea63fce5..b07e34257 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -889,6 +889,8 @@ Patch507: drm-dp-mst-error-handling-improvements.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1811850
Patch509: drm-i915-backports.patch
+Patch510: 0001-mac80211-fix-authentication-with-iwlwifi-mvm.patch
+
# END OF PATCH DEFINITIONS
%endif