projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
cb3bb3d
)
wifi: mac80211: Check 802.11 encaps offloading in ieee80211_tx_h_select_key()
author
Remi Pommarel
<repk@triplefau.lt>
Thu, 17 Jul 2025 15:45:28 +0000
(17:45 +0200)
committer
Johannes Berg
<johannes.berg@intel.com>
Fri, 18 Jul 2025 12:29:20 +0000
(14:29 +0200)
With 802.11 encapsulation offloading, ieee80211_tx_h_select_key() is
called on 802.3 frames. In that case do not try to use skb data as
valid 802.11 headers.
Reported-by: Bert Karwatzki <spasswolf@web.de>
Closes: https://lore.kernel.org/linux-wireless/
20250410215527
.3001-1-spasswolf@web.de
Fixes:
bb42f2d13ffc
("mac80211: Move reorder-sensitive TX handlers to after TXQ dequeue")
Signed-off-by: Remi Pommarel <repk@triplefau.lt>
Link:
https://patch.msgid.link/1af4b5b903a5fca5ebe67333d5854f93b2be5abe.1752765971.git.repk@triplefau.lt
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/tx.c
patch
|
blob
|
blame
|
history
diff --git
a/net/mac80211/tx.c
b/net/mac80211/tx.c
index baa9d31087733a0653e79884f2d216326a6da896..73ea4d5bf266f52d6dc65ad5ae73b72147093931 100644
(file)
--- a/
net/mac80211/tx.c
+++ b/
net/mac80211/tx.c
@@
-612,6
+612,12
@@
ieee80211_tx_h_select_key(struct ieee80211_tx_data *tx)
else
tx->key = NULL;
+ if (info->flags & IEEE80211_TX_CTL_HW_80211_ENCAP) {
+ if (tx->key && tx->key->flags & KEY_FLAG_UPLOADED_TO_HARDWARE)
+ info->control.hw_key = &tx->key->conf;
+ return TX_CONTINUE;
+ }
+
if (tx->key) {
bool skip_hw = false;