From c07f3b682160ff2837330e29e2f5f35c6e9ecc01 Mon Sep 17 00:00:00 2001 From: Ting-Ying Li Date: Tue, 14 Sep 2021 04:33:27 -0500 Subject: [PATCH 073/296] brcmfmac: enable pmk catching for ext-sae wpa3 ap Update pmkid in auth_status and enable NL80211_EXT_FEATURE_AP_PMKSA_CACHING for ext-sae. Signed-off-by: Ting-Ying Li --- .../net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c index f2348018e600..7ea9770a30f3 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c @@ -6196,6 +6196,9 @@ brcmf_cfg80211_external_auth(struct wiphy *wiphy, struct net_device *dev, auth_status.ssid_len = cpu_to_le32(min_t(u8, params->ssid.ssid_len, IEEE80211_MAX_SSID_LEN)); memcpy(auth_status.ssid, params->ssid.ssid, auth_status.ssid_len); + memset(auth_status.pmkid, 0, WLAN_PMKID_LEN); + if (params->pmkid) + memcpy(auth_status.pmkid, params->pmkid, WLAN_PMKID_LEN); ret = brcmf_fil_iovar_data_set(ifp, "auth_status", &auth_status, sizeof(auth_status)); @@ -8168,8 +8171,12 @@ static int brcmf_setup_wiphy(struct wiphy *wiphy, struct brcmf_if *ifp) wiphy_ext_feature_set(wiphy, NL80211_EXT_FEATURE_SAE_OFFLOAD_AP); } - if (brcmf_feat_is_enabled(ifp, BRCMF_FEAT_SAE_EXT)) + if (brcmf_feat_is_enabled(ifp, BRCMF_FEAT_SAE_EXT)) { wiphy->features |= NL80211_FEATURE_SAE; + wiphy_ext_feature_set(wiphy, + NL80211_EXT_FEATURE_AP_PMKSA_CACHING); + } + wiphy->mgmt_stypes = brcmf_txrx_stypes; wiphy->max_remain_on_channel_duration = 5000; if (brcmf_feat_is_enabled(ifp, BRCMF_FEAT_PNO)) { -- 2.25.1