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 b4b0c872f58c..2cbd5948ab65 100644 --- a/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h +++ b/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h @@ -390,6 +390,7 @@ enum extn_element_ie { #define WLAN_WPA_CCKM_AKM 0x00964000 #define WLAN_RSN_CCKM_AKM 0x00964000 #define WLAN_RSN_DPP_AKM 0x029A6F50 +#define WLAN_RSN_OSEN_AKM 0x019A6F50 #define RSN_VERSION 1 #define WLAN_RSN_SEL(x) (((x) << 24) | WLAN_RSN_OUI) diff --git a/umac/cmn_services/inc/wlan_cmn.h b/umac/cmn_services/inc/wlan_cmn.h index 9905751ce2e5..627c53abe369 100644 --- a/umac/cmn_services/inc/wlan_cmn.h +++ b/umac/cmn_services/inc/wlan_cmn.h @@ -532,6 +532,7 @@ enum wlan_auth_type { WLAN_AUTH_TYPE_OWE, WLAN_AUTH_TYPE_SUITEB_EAP_SHA256, WLAN_AUTH_TYPE_SUITEB_EAP_SHA384, + WLAN_AUTH_TYPE_OSEN, WLAN_AUTH_TYPE_ANY, WLAN_NUM_OF_SUPPORT_AUTH_TYPE = WLAN_AUTH_TYPE_ANY, }; diff --git a/umac/scan/core/src/wlan_scan_filter.c b/umac/scan/core/src/wlan_scan_filter.c index cd49a073a73a..df80b454909a 100644 --- a/umac/scan/core/src/wlan_scan_filter.c +++ b/umac/scan/core/src/wlan_scan_filter.c @@ -482,6 +482,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_OSEN_AKM)) { + if (match_any_akm || + WLAN_AUTH_TYPE_OSEN == filter->auth_type[i]) { + neg_auth = WLAN_AUTH_TYPE_OSEN; + match = true; + break; + } + } if (scm_is_cipher_match(rsn.akm_suites, rsn.akm_suite_count, WLAN_RSN_SEL(WLAN_AKM_OWE))) {