brcmfmac: Add WPA3 Personal with FT to supported cipher suites
authorPaweł Drewniak <czajernia@gmail.com>
Tue, 24 Aug 2021 22:13:30 +0000 (23:13 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Sun, 29 Aug 2021 08:33:07 +0000 (11:33 +0300)
This allows the driver to connect to BSSIDs supporting SAE with 802.11r.
Tested on Raspberry Pi 4 Model B (STA) and UniFi 6LR/OpenWRT 21.02.0-rc2.
AP was set to 'sae-mixed' (WPA2/3 Personal).

Signed-off-by: Paweł Drewniak <czajernia@gmail.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20210824221330.3847139-1-czajernia@gmail.com
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c

index cedba56fc448e6357f26d41160a55ad2ebedaec5..f7b96cd69242d0fa38cb265a94490e48ca306236 100644 (file)
@@ -1829,6 +1829,14 @@ brcmf_set_key_mgmt(struct net_device *ndev, struct cfg80211_connect_params *sme)
                                profile->use_fwsup = BRCMF_PROFILE_FWSUP_SAE;
                        }
                        break;
+               case WLAN_AKM_SUITE_FT_OVER_SAE:
+                       val = WPA3_AUTH_SAE_PSK | WPA2_AUTH_FT;
+                       profile->is_ft = true;
+                       if (sme->crypto.sae_pwd) {
+                               brcmf_dbg(INFO, "using SAE offload\n");
+                               profile->use_fwsup = BRCMF_PROFILE_FWSUP_SAE;
+                       }
+                       break;
                default:
                        bphy_err(drvr, "invalid cipher group (%d)\n",
                                 sme->crypto.cipher_group);