Lines Matching refs:sm

855 		    struct wpa_state_machine *sm, int freq,  in wpa_validate_wpa_ie()  argument
869 if (wpa_auth == NULL || sm == NULL) in wpa_validate_wpa_ie()
882 version, MAC2STR(sm->addr)); in wpa_validate_wpa_ie()
902 MAC2STR(sm->addr)); in wpa_validate_wpa_ie()
1006 MACSTR " (res=%d)", MAC2STR(sm->addr), res); in wpa_validate_wpa_ie()
1013 MACSTR, data.group_cipher, MAC2STR(sm->addr)); in wpa_validate_wpa_ie()
1017 if (sm->rsn_override_2) in wpa_validate_wpa_ie()
1020 else if (sm->rsn_override) in wpa_validate_wpa_ie()
1026 MACSTR, data.key_mgmt, MAC2STR(sm->addr)); in wpa_validate_wpa_ie()
1032 sm->wpa_key_mgmt = WPA_KEY_MGMT_IEEE8021X_SUITE_B_192; in wpa_validate_wpa_ie()
1034 sm->wpa_key_mgmt = WPA_KEY_MGMT_IEEE8021X_SUITE_B; in wpa_validate_wpa_ie()
1038 sm->wpa_key_mgmt = WPA_KEY_MGMT_FT_FILS_SHA384; in wpa_validate_wpa_ie()
1040 sm->wpa_key_mgmt = WPA_KEY_MGMT_FT_FILS_SHA256; in wpa_validate_wpa_ie()
1043 sm->wpa_key_mgmt = WPA_KEY_MGMT_FILS_SHA384; in wpa_validate_wpa_ie()
1045 sm->wpa_key_mgmt = WPA_KEY_MGMT_FILS_SHA256; in wpa_validate_wpa_ie()
1050 sm->wpa_key_mgmt = WPA_KEY_MGMT_FT_IEEE8021X_SHA384; in wpa_validate_wpa_ie()
1053 sm->wpa_key_mgmt = WPA_KEY_MGMT_FT_IEEE8021X; in wpa_validate_wpa_ie()
1055 sm->wpa_key_mgmt = WPA_KEY_MGMT_FT_PSK; in wpa_validate_wpa_ie()
1059 sm->wpa_key_mgmt = WPA_KEY_MGMT_IEEE8021X_SHA384; in wpa_validate_wpa_ie()
1062 sm->wpa_key_mgmt = WPA_KEY_MGMT_IEEE8021X_SHA256; in wpa_validate_wpa_ie()
1064 sm->wpa_key_mgmt = WPA_KEY_MGMT_PSK_SHA256; in wpa_validate_wpa_ie()
1067 sm->wpa_key_mgmt = WPA_KEY_MGMT_SAE; in wpa_validate_wpa_ie()
1069 sm->wpa_key_mgmt = WPA_KEY_MGMT_SAE_EXT_KEY; in wpa_validate_wpa_ie()
1071 sm->wpa_key_mgmt = WPA_KEY_MGMT_FT_SAE; in wpa_validate_wpa_ie()
1073 sm->wpa_key_mgmt = WPA_KEY_MGMT_FT_SAE_EXT_KEY; in wpa_validate_wpa_ie()
1076 sm->wpa_key_mgmt = WPA_KEY_MGMT_IEEE8021X; in wpa_validate_wpa_ie()
1079 sm->wpa_key_mgmt = WPA_KEY_MGMT_OWE; in wpa_validate_wpa_ie()
1083 sm->wpa_key_mgmt = WPA_KEY_MGMT_DPP; in wpa_validate_wpa_ie()
1087 sm->wpa_key_mgmt = WPA_KEY_MGMT_OSEN; in wpa_validate_wpa_ie()
1090 sm->wpa_key_mgmt = WPA_KEY_MGMT_PSK; in wpa_validate_wpa_ie()
1092 if (version == WPA_PROTO_RSN && sm->rsn_override_2) in wpa_validate_wpa_ie()
1095 else if (version == WPA_PROTO_RSN && sm->rsn_override) in wpa_validate_wpa_ie()
1106 data.pairwise_cipher, MAC2STR(sm->addr)); in wpa_validate_wpa_ie()
1128 wpa_key_mgmt_sae(sm->wpa_key_mgmt) && in wpa_validate_wpa_ie()
1147 wpa_auth_set_ocv(sm, 0); in wpa_validate_wpa_ie()
1154 wpa_auth_set_ocv(sm, (data.capabilities & WPA_CAPABILITY_OCVC) ? in wpa_validate_wpa_ie()
1161 sm->mgmt_frame_prot = 0; in wpa_validate_wpa_ie()
1163 sm->mgmt_frame_prot = 1; in wpa_validate_wpa_ie()
1164 sm->mfpr = !!(data.capabilities & WPA_CAPABILITY_MFPR); in wpa_validate_wpa_ie()
1166 if (sm->mgmt_frame_prot && (ciphers & WPA_CIPHER_TKIP)) { in wpa_validate_wpa_ie()
1173 if (wpa_key_mgmt_ft(sm->wpa_key_mgmt)) { in wpa_validate_wpa_ie()
1193 if (sm->wpa_key_mgmt == WPA_KEY_MGMT_OWE && !owe_dh) { in wpa_validate_wpa_ie()
1201 if (sm->wpa_key_mgmt == WPA_KEY_MGMT_DPP && in wpa_validate_wpa_ie()
1210 sm->pairwise = wpa_pick_pairwise_cipher(ciphers, 0); in wpa_validate_wpa_ie()
1211 if (sm->pairwise < 0) in wpa_validate_wpa_ie()
1216 sm->wpa = WPA_VERSION_WPA2; in wpa_validate_wpa_ie()
1218 sm->wpa = WPA_VERSION_WPA; in wpa_validate_wpa_ie()
1223 if (sm->wpa_key_mgmt != assoc_sm->wpa_key_mgmt) in wpa_validate_wpa_ie()
1225 if (sm->pairwise != assoc_sm->pairwise) in wpa_validate_wpa_ie()
1230 if ((sm->wpa_key_mgmt == WPA_KEY_MGMT_FT_FILS_SHA256 || in wpa_validate_wpa_ie()
1231 sm->wpa_key_mgmt == WPA_KEY_MGMT_FT_FILS_SHA384) && in wpa_validate_wpa_ie()
1232 (sm->auth_alg == WLAN_AUTH_FILS_SK || in wpa_validate_wpa_ie()
1233 sm->auth_alg == WLAN_AUTH_FILS_SK_PFS || in wpa_validate_wpa_ie()
1234 sm->auth_alg == WLAN_AUTH_FILS_PK) && in wpa_validate_wpa_ie()
1235 (data.num_pmkid != 1 || !data.pmkid || !sm->pmk_r1_name_valid || in wpa_validate_wpa_ie()
1236 os_memcmp_const(data.pmkid, sm->pmk_r1_name, in wpa_validate_wpa_ie()
1238 wpa_auth_vlogger(wpa_auth, sm->addr, LOGGER_DEBUG, in wpa_validate_wpa_ie()
1244 sm->pmksa = NULL; in wpa_validate_wpa_ie()
1248 sm->pmksa = pmksa_cache_auth_get(wpa_auth->pmksa, sm->addr, in wpa_validate_wpa_ie()
1250 if (sm->pmksa) { in wpa_validate_wpa_ie()
1251 pmkid = sm->pmksa->pmkid; in wpa_validate_wpa_ie()
1255 for (i = 0; sm->pmksa == NULL && wpa_auth->conf.okc && in wpa_validate_wpa_ie()
1260 idata.spa = sm->addr; in wpa_validate_wpa_ie()
1264 wpa_auth_vlogger(wpa_auth, sm->addr, LOGGER_DEBUG, in wpa_validate_wpa_ie()
1266 sm->pmksa = pmksa_cache_add_okc(wpa_auth->pmksa, in wpa_validate_wpa_ie()
1274 if (sm->pmksa && pmkid) { in wpa_validate_wpa_ie()
1277 vlan = sm->pmksa->vlan_desc; in wpa_validate_wpa_ie()
1278 wpa_auth_vlogger(wpa_auth, sm->addr, LOGGER_DEBUG, in wpa_validate_wpa_ie()
1280 sm->pmksa->eap_type_authsrv, in wpa_validate_wpa_ie()
1287 if (sm->wpa_key_mgmt == WPA_KEY_MGMT_SAE || in wpa_validate_wpa_ie()
1288 sm->wpa_key_mgmt == WPA_KEY_MGMT_SAE_EXT_KEY) { in wpa_validate_wpa_ie()
1300 if (!ap_sae_offload && data.num_pmkid && !sm->pmksa) { in wpa_validate_wpa_ie()
1301 wpa_auth_vlogger(wpa_auth, sm->addr, LOGGER_DEBUG, in wpa_validate_wpa_ie()
1309 if (sm->wpa_key_mgmt == WPA_KEY_MGMT_DPP && !sm->pmksa) { in wpa_validate_wpa_ie()
1310 wpa_auth_vlogger(wpa_auth, sm->addr, LOGGER_DEBUG, in wpa_validate_wpa_ie()
1316 if (conf->extended_key_id && sm->wpa == WPA_VERSION_WPA2 && in wpa_validate_wpa_ie()
1317 sm->pairwise != WPA_CIPHER_TKIP && in wpa_validate_wpa_ie()
1319 sm->use_ext_key_id = true; in wpa_validate_wpa_ie()
1321 !wpa_key_mgmt_ft(sm->wpa_key_mgmt) && in wpa_validate_wpa_ie()
1322 !wpa_key_mgmt_fils(sm->wpa_key_mgmt)) in wpa_validate_wpa_ie()
1323 sm->keyidx_active = 1; in wpa_validate_wpa_ie()
1325 sm->keyidx_active = 0; in wpa_validate_wpa_ie()
1328 sm->keyidx_active); in wpa_validate_wpa_ie()
1330 sm->use_ext_key_id = false; in wpa_validate_wpa_ie()
1333 if (sm->wpa_ie == NULL || sm->wpa_ie_len < wpa_ie_len) { in wpa_validate_wpa_ie()
1334 os_free(sm->wpa_ie); in wpa_validate_wpa_ie()
1335 sm->wpa_ie = os_malloc(wpa_ie_len); in wpa_validate_wpa_ie()
1336 if (sm->wpa_ie == NULL) in wpa_validate_wpa_ie()
1339 os_memcpy(sm->wpa_ie, wpa_ie, wpa_ie_len); in wpa_validate_wpa_ie()
1340 sm->wpa_ie_len = wpa_ie_len; in wpa_validate_wpa_ie()
1343 if (!sm->rsnxe || sm->rsnxe_len < rsnxe_len) { in wpa_validate_wpa_ie()
1344 os_free(sm->rsnxe); in wpa_validate_wpa_ie()
1345 sm->rsnxe = os_malloc(rsnxe_len); in wpa_validate_wpa_ie()
1346 if (!sm->rsnxe) in wpa_validate_wpa_ie()
1349 os_memcpy(sm->rsnxe, rsnxe, rsnxe_len); in wpa_validate_wpa_ie()
1350 sm->rsnxe_len = rsnxe_len; in wpa_validate_wpa_ie()
1352 os_free(sm->rsnxe); in wpa_validate_wpa_ie()
1353 sm->rsnxe = NULL; in wpa_validate_wpa_ie()
1354 sm->rsnxe_len = 0; in wpa_validate_wpa_ie()
1363 struct wpa_state_machine *sm, in wpa_validate_osen() argument
1366 if (wpa_auth == NULL || sm == NULL) in wpa_validate_osen()
1370 sm->wpa_key_mgmt = WPA_KEY_MGMT_OSEN; in wpa_validate_osen()
1371 sm->mgmt_frame_prot = 1; in wpa_validate_osen()
1372 sm->pairwise = WPA_CIPHER_CCMP; in wpa_validate_osen()
1373 sm->wpa = WPA_VERSION_WPA2; in wpa_validate_osen()
1375 if (sm->wpa_ie == NULL || sm->wpa_ie_len < osen_ie_len) { in wpa_validate_osen()
1376 os_free(sm->wpa_ie); in wpa_validate_osen()
1377 sm->wpa_ie = os_malloc(osen_ie_len); in wpa_validate_osen()
1378 if (sm->wpa_ie == NULL) in wpa_validate_osen()
1382 os_memcpy(sm->wpa_ie, osen_ie, osen_ie_len); in wpa_validate_osen()
1383 sm->wpa_ie_len = osen_ie_len; in wpa_validate_osen()
1391 int wpa_auth_uses_mfp(struct wpa_state_machine *sm) in wpa_auth_uses_mfp() argument
1393 return sm ? sm->mgmt_frame_prot : 0; in wpa_auth_uses_mfp()
1399 void wpa_auth_set_ocv(struct wpa_state_machine *sm, int ocv) in wpa_auth_set_ocv() argument
1401 if (sm) in wpa_auth_set_ocv()
1402 sm->ocv_enabled = ocv; in wpa_auth_set_ocv()
1406 int wpa_auth_uses_ocv(struct wpa_state_machine *sm) in wpa_auth_uses_ocv() argument
1408 return sm ? sm->ocv_enabled : 0; in wpa_auth_uses_ocv()
1415 u8 * wpa_auth_write_assoc_resp_owe(struct wpa_state_machine *sm, in wpa_auth_write_assoc_resp_owe() argument
1422 if (!sm) in wpa_auth_write_assoc_resp_owe()
1424 conf = &sm->wpa_auth->conf; in wpa_auth_write_assoc_resp_owe()
1439 sm->pmksa ? sm->pmksa->pmkid : NULL); in wpa_auth_write_assoc_resp_owe()
1449 u8 * wpa_auth_write_assoc_resp_fils(struct wpa_state_machine *sm, in wpa_auth_write_assoc_resp_fils() argument
1455 if (!sm || in wpa_auth_write_assoc_resp_fils()
1456 sm->wpa_key_mgmt & (WPA_KEY_MGMT_FT_FILS_SHA256 | in wpa_auth_write_assoc_resp_fils()
1460 res = wpa_write_rsn_ie(&sm->wpa_auth->conf, pos, max_len, NULL); in wpa_auth_write_assoc_resp_fils()