qcacld-3.0: Add support for AKM25

Add support for FT-SAE-EXT-KEY AKM.

Change-Id: Ia013a81f67d204fed486ab130b3480654703f59c
CRs-Fixed: 3406625
This commit is contained in:
Surya Prakash Sivaraj
2023-02-07 20:51:32 -08:00
committed by Madan Koyyalamudi
parent 9fee6143d7
commit 83299d06fc
11 changed files with 34 additions and 10 deletions

View File

@@ -1561,6 +1561,10 @@ static uint32_t cm_get_rsn_wmi_auth_type(int32_t akm)
return WMI_AUTH_RSNA_FILS_SHA384;
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FILS_SHA256))
return WMI_AUTH_RSNA_FILS_SHA256;
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE_EXT_KEY))
return WMI_AUTH_FT_RSNA_SAE_SHA384;
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_SAE_EXT_KEY))
return WMI_AUTH_WPA3_SAE_SHA384;
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE))
return WMI_AUTH_FT_RSNA_SAE;
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_SAE))
@@ -1587,8 +1591,6 @@ static uint32_t cm_get_rsn_wmi_auth_type(int32_t akm)
return WMI_AUTH_RSNA_SUITE_B_8021X_SHA384;
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_IEEE8021X_SHA384))
return WMI_AUTH_FT_RSNA_SUITE_B_8021X_SHA384;
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_SAE_EXT_KEY))
return WMI_AUTH_WPA3_SAE_SHA384;
else
return WMI_AUTH_NONE;
}
@@ -3501,7 +3503,8 @@ cm_akm_roam_allowed(struct wlan_objmgr_psoc *psoc,
return QDF_STATUS_E_NOSUPPORT;
}
if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_SAE_EXT_KEY) &&
if ((QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_SAE_EXT_KEY) ||
QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE_EXT_KEY)) &&
!CM_IS_FW_SAE_EXT_ROAM_SUPPORTED(fw_akm_bitmap)) {
mlme_info("Roaming not supported for SAE EXT akm");
return QDF_STATUS_E_NOSUPPORT;
@@ -5403,7 +5406,8 @@ bool cm_is_auth_type_11r(struct wlan_mlme_psoc_ext_obj *mlme_obj,
QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_IEEE8021X) ||
QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_PSK) ||
QDF_HAS_PARAM(akm,
WLAN_CRYPTO_KEY_MGMT_FT_IEEE8021X_SHA384)) {
WLAN_CRYPTO_KEY_MGMT_FT_IEEE8021X_SHA384) ||
QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE_EXT_KEY)) {
return true;
}

View File

@@ -395,6 +395,8 @@ static const uint8_t *cm_diag_get_akm_str(enum mgmt_auth_type auth_type,
return "FILS-SHA384";
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FILS_SHA256))
return "FILS-SHA256";
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE_EXT_KEY))
return "FT-SAE-EXT-KEY";
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE))
return "FT-SAE";
else if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_SAE_EXT_KEY))
@@ -1479,7 +1481,8 @@ static void cm_process_connect_complete(struct wlan_objmgr_psoc *psoc,
sizeof(struct wlan_frame_hdr));
}
akm = wlan_crypto_get_param(vdev, WLAN_CRYPTO_PARAM_KEY_MGMT);
if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE)) {
if (QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE) ||
QDF_HAS_PARAM(akm, WLAN_CRYPTO_KEY_MGMT_FT_SAE_EXT_KEY)) {
mlme_debug("Update the MDID in PMK cache for FT-SAE case");
cm_update_pmk_cache_ft(psoc, vdev_id, NULL);
}