* [PATCH wireless] wifi: wil6210: restore the GTK as a group key after recovery
@ 2026-11-07 13:50 Zhao Li
0 siblings, 0 replies; only message in thread
From: Zhao Li @ 2026-11-07 13:50 UTC (permalink / raw)
To: linux-wireless; +Cc: Benjamin Berg, linux-kernel, Johannes Berg, Zhao Li
AP recovery fails to reinstall the saved GTK because the key-type
conversion changed the former false pairwise argument into
NL80211_KEYTYPE_PAIRWISE. With no peer address, the pairwise path finds
no station and returns -EINVAL, or, if the AP advertises FT, sends the
GTK to the firmware as a pairwise key.
Pass NL80211_KEYTYPE_GROUP so AP recovery selects WMI_KEY_USE_TX_GROUP and
reinstalls the saved group key through wmi_add_cipher_key().
AI assistance was used.
Fixes: 3191dfbf0779 ("wifi: cfg80211: add Control Integrity Protocol (CIP) APIs")
Signed-off-by: Zhao Li <enderaoelyther@gmail.com>
---
Compile-tested only; no new W=1 GCC/Clang, sparse or smatch warnings.
drivers/net/wireless/ath/wil6210/cfg80211.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/wireless/ath/wil6210/cfg80211.c b/drivers/net/wireless/ath/wil6210/cfg80211.c
index bf060281c9a2..2563073b4766 100644
--- a/drivers/net/wireless/ath/wil6210/cfg80211.c
+++ b/drivers/net/wireless/ath/wil6210/cfg80211.c
@@ -2075,7 +2075,7 @@ void wil_cfg80211_ap_recovery(struct wil6210_priv *wil)
key_params.seq_len = IEEE80211_GCMP_PN_LEN;
rc = wil_cfg80211_add_key(wiphy, vif_to_wdev(vif), -1,
vif->gtk_index,
- NL80211_KEYTYPE_PAIRWISE,
+ NL80211_KEYTYPE_GROUP,
NULL, &key_params);
if (rc)
wil_err(wil, "vif %d recovery add key failed (%d)\n",
base-commit: 6b4b543fa18757297ac756a6fe6e64f506b7844a
--
2.56.0
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-11-07 13:50 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-07 13:50 [PATCH wireless] wifi: wil6210: restore the GTK as a group key after recovery Zhao Li
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®