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 15d511eba9..527f866dcb 100644 --- a/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h +++ b/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h @@ -375,6 +375,7 @@ enum extn_element_ie { #define WLAN_AKM_FILS_SHA384 0x0F #define WLAN_AKM_FILS_FT_SHA256 0x10 #define WLAN_AKM_FILS_FT_SHA384 0x11 +#define WLAN_AKM_OWE 0x12 #define WLAN_ASE_NONE 0x00 #define WLAN_ASE_8021X_UNSPEC 0x01 diff --git a/umac/cmn_services/inc/wlan_cmn.h b/umac/cmn_services/inc/wlan_cmn.h index f4b5c8f916..62371c536a 100644 --- a/umac/cmn_services/inc/wlan_cmn.h +++ b/umac/cmn_services/inc/wlan_cmn.h @@ -329,6 +329,7 @@ enum wlan_auth_type { WLAN_AUTH_TYPE_FT_FILS_SHA256, WLAN_AUTH_TYPE_FT_FILS_SHA384, WLAN_AUTH_TYPE_DPP_RSN, + WLAN_AUTH_TYPE_OWE, WLAN_NUM_OF_SUPPORT_AUTH_TYPE, }; diff --git a/umac/scan/core/src/wlan_scan_cache_db_ops.c b/umac/scan/core/src/wlan_scan_cache_db_ops.c index 01e7df5e6c..326ea22e91 100644 --- a/umac/scan/core/src/wlan_scan_cache_db_ops.c +++ b/umac/scan/core/src/wlan_scan_cache_db_ops.c @@ -586,6 +586,16 @@ 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_OWE))) { + if (WLAN_AUTH_TYPE_OWE == + filter->auth_type[i]) { + neg_auth = WLAN_AUTH_TYPE_OWE; + match = true; + break; + } + } if (scm_is_cipher_match(rsn.akm_suites, rsn.akm_suite_count, WLAN_RSN_SEL(WLAN_AKM_FT_IEEE8021X))) {