From: Felix Fietkau Date: Fri, 18 Dec 2020 21:58:10 +0000 (+0100) Subject: mac80211: do not drop tx nulldata packets on encrypted links X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=3ab695368a5c8dc6228055bd05bd05f1974d818c;p=openwrt%2Fstaging%2Fnbd.git mac80211: do not drop tx nulldata packets on encrypted links Fixes sending out nulldata probing frames Signed-off-by: Felix Fietkau --- diff --git a/package/kernel/mac80211/patches/subsys/336-mac80211-do-not-drop-tx-nulldata-packets-on-encrypte.patch b/package/kernel/mac80211/patches/subsys/336-mac80211-do-not-drop-tx-nulldata-packets-on-encrypte.patch new file mode 100644 index 0000000000..378c37455d --- /dev/null +++ b/package/kernel/mac80211/patches/subsys/336-mac80211-do-not-drop-tx-nulldata-packets-on-encrypte.patch @@ -0,0 +1,25 @@ +From: Felix Fietkau +Date: Fri, 18 Dec 2020 20:08:06 +0100 +Subject: [PATCH] mac80211: do not drop tx nulldata packets on encrypted links + +ieee80211_tx_h_select_key drops any non-mgmt packets without a key when +encryption is used. This is wrong for nulldata packets that can't be +encrypted and are sent out for probing clients and indicating 4-address +mode. + +Reported-by: Sebastian Gottschall +Fixes: a0761a301746 ("mac80211: drop data frames without key on encrypted links") +Signed-off-by: Felix Fietkau +--- + +--- a/net/mac80211/tx.c ++++ b/net/mac80211/tx.c +@@ -657,7 +657,7 @@ ieee80211_tx_h_select_key(struct ieee802 + if (!skip_hw && tx->key && + tx->key->flags & KEY_FLAG_UPLOADED_TO_HARDWARE) + info->control.hw_key = &tx->key->conf; +- } else if (!ieee80211_is_mgmt(hdr->frame_control) && tx->sta && ++ } else if (ieee80211_is_data_present(hdr->frame_control) && tx->sta && + test_sta_flag(tx->sta, WLAN_STA_USES_ENCRYPTION)) { + return TX_DROP; + }