diff --git a/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h b/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h index b3902e7969..9c08e3648f 100644 --- a/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h +++ b/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h @@ -377,6 +377,7 @@ enum extn_element_ie { #define WLAN_AKM_FT_PSK 0x04 #define WLAN_AKM_SHA256_IEEE8021X 0x05 #define WLAN_AKM_SHA256_PSK 0x06 +#define WLAN_AKM_SAE 0x08 #define WLAN_AKM_SUITEB_EAP_SHA256 0x0B #define WLAN_AKM_SUITEB_EAP_SHA384 0x0C #define WLAN_AKM_FILS_SHA256 0x0E diff --git a/umac/cmn_services/inc/wlan_cmn.h b/umac/cmn_services/inc/wlan_cmn.h index 062d9becf3..b28b3d0aa8 100644 --- a/umac/cmn_services/inc/wlan_cmn.h +++ b/umac/cmn_services/inc/wlan_cmn.h @@ -300,6 +300,7 @@ enum wlan_pmf_cap { * @WLAN_AUTH_TYPE_OPEN_SYSTEM: Open auth type * @WLAN_AUTH_TYPE_SHARED_KEY: Shared Key Auth type * @WLAN_AUTH_TYPE_AUTOSWITCH: Auto switch Open/Shared + * @WLAN_AUTH_TYPE_SAE: SAE auth type * @WLAN_AUTH_TYPE_WPA: WPA Enterprise * @WLAN_AUTH_TYPE_WPA_PSK: WPA PSK * @WLAN_AUTH_TYPE_WPA_NONE: WPA None @@ -323,6 +324,7 @@ enum wlan_auth_type { WLAN_AUTH_TYPE_OPEN_SYSTEM, WLAN_AUTH_TYPE_SHARED_KEY, WLAN_AUTH_TYPE_AUTOSWITCH, + WLAN_AUTH_TYPE_SAE, WLAN_AUTH_TYPE_WPA, WLAN_AUTH_TYPE_WPA_PSK, WLAN_AUTH_TYPE_WPA_NONE, diff --git a/umac/scan/core/src/wlan_scan_filter.c b/umac/scan/core/src/wlan_scan_filter.c index 5f4a64703c..545e74728f 100644 --- a/umac/scan/core/src/wlan_scan_filter.c +++ b/umac/scan/core/src/wlan_scan_filter.c @@ -390,6 +390,18 @@ static bool scm_is_rsn_security(struct scan_filter *filter, break; } } + + if (scm_is_cipher_match(rsn.akm_suites, + rsn.akm_suite_count, + WLAN_RSN_SEL(WLAN_AKM_SAE))) { + if (WLAN_AUTH_TYPE_SAE == + filter->auth_type[i]) { + neg_auth = WLAN_AUTH_TYPE_SAE; + match = true; + break; + } + } + if (scm_is_cipher_match(rsn.akm_suites, rsn.akm_suite_count, WLAN_RSN_DPP_AKM)) { if (WLAN_AUTH_TYPE_DPP_RSN ==