Lines Matching defs:elems

21 					    struct ieee802_11_elems *elems,
47 elems->wpa_ie = pos;
48 elems->wpa_ie_len = elen;
68 elems->wmm = pos;
69 elems->wmm_len = elen;
72 elems->wmm_tspec = pos;
73 elems->wmm_tspec_len = elen;
85 elems->wps_ie = pos;
86 elems->wps_ie_len = elen;
101 elems->p2p = pos;
102 elems->p2p_len = elen;
106 elems->wfd = pos;
107 elems->wfd_len = elen;
111 elems->hs20 = pos;
112 elems->hs20_len = elen;
116 elems->osen = pos;
117 elems->osen_len = elen;
121 elems->mbo = pos;
122 elems->mbo_len = elen;
126 elems->roaming_cons_sel = pos;
127 elems->roaming_cons_sel_len = elen;
130 elems->multi_ap = pos;
131 elems->multi_ap_len = elen;
140 elems->sae_pk = pos + 4;
141 elems->sae_pk_len = elen - 4;
155 elems->vendor_ht_cap = pos;
156 elems->vendor_ht_cap_len = elen;
162 elems->vendor_vht = pos;
163 elems->vendor_vht_len = elen;
179 elems->pref_freq_list = pos;
180 elems->pref_freq_list_len = elen;
203 struct ieee802_11_elems *elems,
210 elems->basic_mle = pos;
211 elems->basic_mle_len = elen;
212 *total_len = &elems->basic_mle_len;
215 elems->probe_req_mle = pos;
216 elems->probe_req_mle_len = elen;
217 *total_len = &elems->probe_req_mle_len;
220 elems->reconf_mle = pos;
221 elems->reconf_mle_len = elen;
222 *total_len = &elems->reconf_mle_len;
225 elems->tdls_mle = pos;
226 elems->tdls_mle_len = elen;
227 *total_len = &elems->tdls_mle_len;
230 elems->prior_access_mle = pos;
231 elems->prior_access_mle_len = elen;
232 *total_len = &elems->prior_access_mle_len;
247 static size_t ieee802_11_fragments_length(struct ieee802_11_elems *elems,
258 elems->num_frag_elems++;
266 struct ieee802_11_elems *elems,
288 elems->assoc_delay_info = pos;
293 elems->fils_req_params = pos;
294 elems->fils_req_params_len = elen;
297 elems->fils_key_confirm = pos;
298 elems->fils_key_confirm_len = elen;
303 elems->fils_session = pos;
308 elems->fils_hlp = pos;
309 elems->fils_hlp_len = elen;
310 total_len = &elems->fils_hlp_len;
315 elems->fils_ip_addr_assign = pos;
316 elems->fils_ip_addr_assign_len = elen;
321 elems->key_delivery = pos;
322 elems->key_delivery_len = elen;
325 elems->wrapped_data = pos;
326 elems->wrapped_data_len = elen;
327 total_len = &elems->wrapped_data_len;
332 elems->fils_pk = pos;
333 elems->fils_pk_len = elen;
338 elems->fils_nonce = pos;
343 elems->owe_dh = pos;
344 elems->owe_dh_len = elen;
347 elems->password_id = pos;
348 elems->password_id_len = elen;
351 elems->he_capabilities = pos;
352 elems->he_capabilities_len = elen;
355 elems->he_operation = pos;
356 elems->he_operation_len = elen;
359 elems->oci = pos;
360 elems->oci_len = elen;
363 elems->short_ssid_list = pos;
364 elems->short_ssid_list_len = elen;
369 elems->he_6ghz_band_cap = pos;
372 elems->pasn_params = pos;
373 elems->pasn_params_len = elen;
376 elems->eht_capabilities = pos;
377 elems->eht_capabilities_len = elen;
380 elems->eht_operation = pos;
381 elems->eht_operation_len = elen;
386 if (ieee802_11_parse_mle(pos, elen, &total_len, elems,
391 elems->mbssid_known_bss = pos;
392 elems->mbssid_known_bss_len = elen;
405 elems, pos + elen, (start + len) - (pos + elen));
412 struct ieee802_11_elems *elems,
426 if (id == WLAN_EID_FRAGMENT && elems->num_frag_elems > 0) {
427 elems->num_frag_elems--;
430 elems->num_frag_elems = 0;
440 if (elems->ssid) {
445 elems->ssid = pos;
446 elems->ssid_len = elen;
449 elems->supp_rates = pos;
450 elems->supp_rates_len = elen;
455 elems->ds_params = pos;
461 elems->challenge = pos;
462 elems->challenge_len = elen;
467 elems->erp_info = pos;
470 elems->ext_supp_rates = pos;
471 elems->ext_supp_rates_len = elen;
475 elems,
480 elems->rsn_ie = pos;
481 elems->rsn_ie_len = elen;
484 elems->rsnxe = pos;
485 elems->rsnxe_len = elen;
490 elems->power_capab = pos;
491 elems->power_capab_len = elen;
494 elems->supp_channels = pos;
495 elems->supp_channels_len = elen;
500 elems->mdie = pos;
501 elems->mdie_len = elen;
506 elems->ftie = pos;
507 elems->ftie_len = elen;
508 elems->fte_defrag_len = elen;
509 total_len = &elems->fte_defrag_len;
514 elems->timeout_int = pos;
519 elems->ht_capabilities = pos;
524 elems->ht_operation = pos;
527 elems->mesh_config = pos;
528 elems->mesh_config_len = elen;
531 elems->mesh_id = pos;
532 elems->mesh_id_len = elen;
535 elems->peer_mgmt = pos;
536 elems->peer_mgmt_len = elen;
541 elems->vht_capabilities = pos;
546 elems->vht_operation = pos;
551 elems->opmode_notif = pos;
556 elems->link_id = pos;
559 elems->interworking = pos;
560 elems->interworking_len = elen;
565 elems->qos_map_set = pos;
566 elems->qos_map_set_len = elen;
569 elems->ext_capab = pos;
570 elems->ext_capab_len = elen;
575 elems->bss_max_idle_period = pos;
578 elems->ssid_list = pos;
579 elems->ssid_list_len = elen;
582 elems->ampe = pos;
583 elems->ampe_len = elen;
586 elems->mic = pos;
587 elems->mic_len = elen;
591 if (elems->mb_ies.nof_ies >= MAX_NOF_MB_IES_SUPPORTED) {
598 elems->mb_ies.ies[elems->mb_ies.nof_ies].ie = pos;
599 elems->mb_ies.ies[elems->mb_ies.nof_ies].ie_len = elen;
600 elems->mb_ies.nof_ies++;
603 elems->supp_op_classes = pos;
604 elems->supp_op_classes_len = elen;
607 elems->rrm_enabled = pos;
608 elems->rrm_enabled_len = elen;
613 elems->mbssid = pos;
614 elems->mbssid_len = elen;
617 elems->cag_number = pos;
618 elems->cag_number_len = elen;
623 elems->ap_csn = pos;
628 elems->fils_indic = pos;
629 elems->fils_indic_len = elen;
634 elems->dils = pos;
635 elems->dils_len = elen;
640 elems->s1g_capab = pos;
648 if (ieee802_11_parse_extension(pos, elen, elems, start,
664 elems, pos + elen,
688 * @elems: Data structure for parsed elements
693 struct ieee802_11_elems *elems,
696 os_memset(elems, 0, sizeof(*elems));
698 return __ieee802_11_parse_elems(start, len, elems, show_errors);
707 void ieee802_11_elems_clear_ids(struct ieee802_11_elems *elems,
715 elems->ssid = NULL;
716 elems->ssid_len = 0;
719 elems->supp_rates = NULL;
720 elems->supp_rates_len = 0;
723 elems->ds_params = NULL;
726 elems->challenge = NULL;
727 elems->challenge_len = 0;
730 elems->erp_info = NULL;
733 elems->ext_supp_rates = NULL;
734 elems->ext_supp_rates_len = 0;
737 elems->rsn_ie = NULL;
738 elems->rsn_ie_len = 0;
741 elems->rsnxe = NULL;
742 elems->rsnxe_len = 0;
745 elems->power_capab = NULL;
746 elems->power_capab_len = 0;
749 elems->supp_channels = NULL;
750 elems->supp_channels_len = 0;
753 elems->mdie = NULL;
754 elems->mdie_len = 0;
757 elems->ftie = NULL;
758 elems->ftie_len = 0;
761 elems->timeout_int = NULL;
764 elems->ht_capabilities = NULL;
767 elems->ht_operation = NULL;
770 elems->mesh_config = NULL;
771 elems->mesh_config_len = 0;
774 elems->mesh_id = NULL;
775 elems->mesh_id_len = 0;
778 elems->peer_mgmt = NULL;
779 elems->peer_mgmt_len = 0;
782 elems->vht_capabilities = NULL;
785 elems->vht_operation = NULL;
788 elems->opmode_notif = NULL;
791 elems->link_id = NULL;
794 elems->interworking = NULL;
795 elems->interworking_len = 0;
798 elems->qos_map_set = NULL;
799 elems->qos_map_set_len = 0;
802 elems->ext_capab = NULL;
803 elems->ext_capab_len = 0;
806 elems->bss_max_idle_period = NULL;
809 elems->ssid_list = NULL;
810 elems->ssid_list_len = 0;
813 elems->ampe = NULL;
814 elems->ampe_len = 0;
817 elems->mic = NULL;
818 elems->mic_len = 0;
821 os_memset(&elems->mb_ies, 0, sizeof(elems->mb_ies));
822 elems->mb_ies.nof_ies = 0;
825 elems->supp_op_classes = NULL;
826 elems->supp_op_classes_len = 0;
829 elems->rrm_enabled = NULL;
830 elems->rrm_enabled_len = 0;
833 elems->cag_number = NULL;
834 elems->cag_number_len = 0;
837 elems->ap_csn = NULL;
840 elems->fils_indic = NULL;
841 elems->fils_indic_len = 0;
844 elems->dils = NULL;
845 elems->dils_len = 0;
848 elems->s1g_capab = NULL;
861 void ieee802_11_elems_clear_ext_ids(struct ieee802_11_elems *elems,
869 elems->assoc_delay_info = NULL;
872 elems->fils_req_params = NULL;
873 elems->fils_req_params_len = 0;
876 elems->fils_key_confirm = NULL;
877 elems->fils_key_confirm_len = 0;
880 elems->fils_session = NULL;
883 elems->fils_hlp = NULL;
884 elems->fils_hlp_len = 0;
887 elems->fils_ip_addr_assign = NULL;
888 elems->fils_ip_addr_assign_len = 0;
891 elems->key_delivery = NULL;
892 elems->key_delivery_len = 0;
895 elems->wrapped_data = NULL;
896 elems->wrapped_data_len = 0;
899 elems->fils_pk = NULL;
900 elems->fils_pk_len = 0;
903 elems->fils_nonce = NULL;
906 elems->owe_dh = NULL;
907 elems->owe_dh_len = 0;
910 elems->password_id = NULL;
911 elems->password_id_len = 0;
914 elems->he_capabilities = NULL;
915 elems->he_capabilities_len = 0;
918 elems->he_operation = NULL;
919 elems->he_operation_len = 0;
922 elems->oci = NULL;
923 elems->oci_len = 0;
926 elems->short_ssid_list = NULL;
927 elems->short_ssid_list_len = 0;
930 elems->he_6ghz_band_cap = NULL;
933 elems->pasn_params = NULL;
934 elems->pasn_params_len = 0;
937 elems->basic_mle = NULL;
938 elems->probe_req_mle = NULL;
939 elems->reconf_mle = NULL;
940 elems->tdls_mle = NULL;
941 elems->prior_access_mle = NULL;
943 elems->basic_mle_len = 0;
944 elems->probe_req_mle_len = 0;
945 elems->reconf_mle_len = 0;
946 elems->tdls_mle_len = 0;
947 elems->prior_access_mle_len = 0;
950 elems->eht_capabilities = NULL;
951 elems->eht_capabilities_len = 0;
954 elems->eht_operation = NULL;
955 elems->eht_operation_len = 0;
963 struct ieee802_11_elems *elems,
1076 ieee802_11_elems_clear_ids(elems, &non_inherit[1],
1090 ieee802_11_elems_clear_ext_ids(elems, &non_inherit[1],
1099 elems, show_errors);
2060 int supp_rates_11b_only(struct ieee802_11_elems *elems)
2065 if (elems->supp_rates == NULL && elems->ext_supp_rates == NULL)
2068 for (i = 0; elems->supp_rates && i < elems->supp_rates_len; i++) {
2069 if (is_11b(elems->supp_rates[i]))
2075 for (i = 0; elems->ext_supp_rates && i < elems->ext_supp_rates_len;
2077 if (is_11b(elems->ext_supp_rates[i]))