Lines Matching refs:elems
367 struct ieee802_11_elems elems; in parse_basic_ml() local
371 &elems, 0) != ParseFailed) { in parse_basic_ml()
372 if (elems.rsn_ie) in parse_basic_ml()
374 elems.rsn_ie, in parse_basic_ml()
375 elems.rsn_ie_len); in parse_basic_ml()
376 if (elems.rsnxe) in parse_basic_ml()
378 elems.rsnxe, in parse_basic_ml()
379 elems.rsnxe_len); in parse_basic_ml()
388 static void parse_basic_ml_elems(struct ieee802_11_elems *elems, bool ap, in parse_basic_ml_elems() argument
393 mlbuf = ieee802_11_defrag(elems->basic_mle, elems->basic_mle_len, true); in parse_basic_ml_elems()
406 struct ieee802_11_elems elems; in rx_mgmt_beacon() local
423 &elems, 0) == ParseFailed) { in rx_mgmt_beacon()
432 if (elems.rsnxe) { in rx_mgmt_beacon()
433 os_memcpy(bss->rsnxe, elems.rsnxe, elems.rsnxe_len); in rx_mgmt_beacon()
434 bss->rsnxe_len = elems.rsnxe_len; in rx_mgmt_beacon()
439 if (elems.rsnxe_override) { in rx_mgmt_beacon()
440 os_memcpy(bss->rsnxoe, elems.rsnxe_override + 4, in rx_mgmt_beacon()
441 elems.rsnxe_override_len - 4); in rx_mgmt_beacon()
442 bss->rsnxoe_len = elems.rsnxe_override_len; in rx_mgmt_beacon()
448 bss_update(wt, bss, &elems, 1); in rx_mgmt_beacon()
450 if (elems.mbssid) { in rx_mgmt_beacon()
451 const u8 *pos = elems.mbssid; in rx_mgmt_beacon()
452 const u8 *end = elems.mbssid + elems.mbssid_len; in rx_mgmt_beacon()
523 os_memcpy(&merged, &elems, sizeof(merged)); in rx_mgmt_beacon()
638 struct ieee802_11_elems elems; in rx_mgmt_probe_resp() local
652 &elems, 0) == ParseFailed) { in rx_mgmt_probe_resp()
661 bss_update(wt, bss, &elems, 2); in rx_mgmt_probe_resp()
669 struct ieee802_11_elems elems; in process_fils_auth() local
681 sizeof(mgmt->u.auth), &elems, 0) == in process_fils_auth()
686 if (!elems.rsn_ie) { in process_fils_auth()
691 if (wpa_parse_wpa_ie_rsn(elems.rsn_ie - 2, in process_fils_auth()
692 elems.rsn_ie_len + 2, &data) < 0) { in process_fils_auth()
701 if (!elems.fils_nonce) { in process_fils_auth()
708 os_memcpy(sta->anonce, elems.fils_nonce, FILS_NONCE_LEN); in process_fils_auth()
710 os_memcpy(sta->snonce, elems.fils_nonce, FILS_NONCE_LEN); in process_fils_auth()
725 struct ieee802_11_elems elems; in process_ft_auth() local
745 if (ieee802_11_parse_elems(ie, ie_len, &elems, 0) == ParseFailed) in process_ft_auth()
750 if (elems.basic_mle) in process_ft_auth()
751 parse_basic_ml_elems(&elems, false, sta, 6); in process_ft_auth()
762 spa = elems.basic_mle ? sta->mld_mac_addr : sta->addr; in process_ft_auth()
763 aa = elems.basic_mle ? bss->mld_mac_addr : bss->bssid; in process_ft_auth()
1166 struct ieee802_11_elems elems; in rx_mgmt_assoc_req() local
1209 if (ieee802_11_parse_elems(ie, ie_len, &elems, 0) == ParseFailed) { in rx_mgmt_assoc_req()
1215 if (elems.rsn_selection) { in rx_mgmt_assoc_req()
1216 sta->rsn_selection = elems.rsn_selection[0]; in rx_mgmt_assoc_req()
1223 if (elems.rsnxe) { in rx_mgmt_assoc_req()
1224 os_memcpy(sta->rsnxe, elems.rsnxe, elems.rsnxe_len); in rx_mgmt_assoc_req()
1225 sta->rsnxe_len = elems.rsnxe_len; in rx_mgmt_assoc_req()
1228 if (elems.owe_dh && elems.owe_dh_len >= 2) { in rx_mgmt_assoc_req()
1229 sta->owe_group = WPA_GET_LE16(elems.owe_dh); in rx_mgmt_assoc_req()
1244 sta_update_assoc(sta, &elems); in rx_mgmt_assoc_req()
1245 if (elems.basic_mle) { in rx_mgmt_assoc_req()
1255 parse_basic_ml_elems(&elems, false, sta, 2); in rx_mgmt_assoc_req()
1326 struct ieee802_11_elems elems; in rx_mgmt_assoc_resp() local
1360 ieee802_11_parse_elems(ies, ies_len, &elems, 0) != ParseFailed) in rx_mgmt_assoc_resp()
1361 parse_basic_ml_elems(&elems, true, NULL, 4); in rx_mgmt_assoc_resp()
1377 if (ieee802_11_parse_elems(ies, ies_len, &elems, 0) == ParseFailed) { in rx_mgmt_assoc_resp()
1384 if (!elems.timeout_int || in rx_mgmt_assoc_resp()
1385 elems.timeout_int[0] != WLAN_TIMEOUT_ASSOC_COMEBACK) { in rx_mgmt_assoc_resp()
1430 if (elems.owe_dh && elems.owe_dh_len >= 2) { in rx_mgmt_assoc_resp()
1431 sta->owe_group = WPA_GET_LE16(elems.owe_dh); in rx_mgmt_assoc_resp()
1443 struct ieee802_11_elems elems; in rx_mgmt_reassoc_req() local
1468 if (ieee802_11_parse_elems(ie, ie_len, &elems, 0) == ParseFailed) { in rx_mgmt_reassoc_req()
1483 if (!sta && elems.basic_mle) { in rx_mgmt_reassoc_req()
1487 mld_addr = get_basic_mle_mld_addr(elems.basic_mle, in rx_mgmt_reassoc_req()
1488 elems.basic_mle_len); in rx_mgmt_reassoc_req()
1525 if (elems.rsnxe) { in rx_mgmt_reassoc_req()
1526 os_memcpy(sta->rsnxe, elems.rsnxe, elems.rsnxe_len); in rx_mgmt_reassoc_req()
1527 sta->rsnxe_len = elems.rsnxe_len; in rx_mgmt_reassoc_req()
1530 if (elems.owe_dh && elems.owe_dh_len >= 2) { in rx_mgmt_reassoc_req()
1531 sta->owe_group = WPA_GET_LE16(elems.owe_dh); in rx_mgmt_reassoc_req()
1547 sta_update_assoc(sta, &elems); in rx_mgmt_reassoc_req()
1548 if (elems.basic_mle) { in rx_mgmt_reassoc_req()
1559 parse_basic_ml_elems(&elems, false, sta, 2); in rx_mgmt_reassoc_req()
1563 if (elems.ftie) { in rx_mgmt_reassoc_req()
1577 if (elems.basic_mle) { in rx_mgmt_reassoc_req()
1712 if (elems.basic_mle) { in rx_mgmt_reassoc_req()
2087 struct ieee802_11_elems elems; in rx_mgmt_reassoc_resp() local
2120 ieee802_11_parse_elems(ies, ies_len, &elems, 0) != ParseFailed) in rx_mgmt_reassoc_resp()
2121 parse_basic_ml_elems(&elems, true, NULL, 4); in rx_mgmt_reassoc_resp()
2138 if (ieee802_11_parse_elems(ies, ies_len, &elems, 0) == ParseFailed) { in rx_mgmt_reassoc_resp()
2145 if (!elems.timeout_int || in rx_mgmt_reassoc_resp()
2146 elems.timeout_int[0] != WLAN_TIMEOUT_ASSOC_COMEBACK) { in rx_mgmt_reassoc_resp()
2180 if (elems.ftie) { in rx_mgmt_reassoc_resp()
2424 elems.ftie - 2, elems.fte_defrag_len + 2, in rx_mgmt_reassoc_resp()
2449 elems.ftie - 2, elems.fte_defrag_len + 2); in rx_mgmt_reassoc_resp()
2498 if (elems.owe_dh && elems.owe_dh_len >= 2) { in rx_mgmt_reassoc_resp()
2499 sta->owe_group = WPA_GET_LE16(elems.owe_dh); in rx_mgmt_reassoc_resp()