Lines Matching refs:elems
1288 struct ieee802_11_elems *elems, in ieee80211_sta_process_chanswitch() argument
1312 res = ieee80211_parse_ch_switch_ie(sdata, elems, current_band, in ieee80211_sta_process_chanswitch()
2874 struct ieee802_11_elems elems; in ieee80211_auth_challenge() local
2881 ieee802_11_parse_elems(pos, len - (pos - (u8 *)mgmt), false, &elems, in ieee80211_auth_challenge()
2883 if (!elems.challenge) in ieee80211_auth_challenge()
2891 elems.challenge - 2, elems.challenge_len + 2, in ieee80211_auth_challenge()
3222 const struct ieee802_11_elems *elems) in ieee80211_twt_req_supported() argument
3224 if (elems->ext_capab_len < 10) in ieee80211_twt_req_supported()
3227 if (!(elems->ext_capab[9] & WLAN_EXT_CAPA10_TWT_RESPONDER_SUPPORT)) in ieee80211_twt_req_supported()
3236 struct ieee802_11_elems *elems) in ieee80211_recalc_twt_req() argument
3238 bool twt = ieee80211_twt_req_supported(sta, elems); in ieee80211_recalc_twt_req()
3267 struct ieee802_11_elems *elems) in ieee80211_assoc_success() argument
3293 ieee802_11_parse_elems(pos, len - (pos - (u8 *)mgmt), false, elems, in ieee80211_assoc_success()
3296 if (elems->aid_resp) in ieee80211_assoc_success()
3297 aid = le16_to_cpu(elems->aid_resp->aid); in ieee80211_assoc_success()
3314 if (!is_s1g && !elems->supp_rates) { in ieee80211_assoc_success()
3321 elems->ext_capab && elems->ext_capab_len >= 5 && in ieee80211_assoc_success()
3322 (elems->ext_capab[4] & WLAN_EXT_CAPA5_TDLS_CH_SW_PROHIBITED); in ieee80211_assoc_success()
3332 ((assoc_data->wmm && !elems->wmm_param) || in ieee80211_assoc_success()
3334 (!elems->ht_cap_elem || !elems->ht_operation)) || in ieee80211_assoc_success()
3336 (!elems->vht_cap_elem || !elems->vht_operation)))) { in ieee80211_assoc_success()
3354 !elems->wmm_param && bss_elems.wmm_param) { in ieee80211_assoc_success()
3355 elems->wmm_param = bss_elems.wmm_param; in ieee80211_assoc_success()
3364 if (!elems->ht_cap_elem && bss_elems.ht_cap_elem && in ieee80211_assoc_success()
3366 elems->ht_cap_elem = bss_elems.ht_cap_elem; in ieee80211_assoc_success()
3370 if (!elems->ht_operation && bss_elems.ht_operation && in ieee80211_assoc_success()
3372 elems->ht_operation = bss_elems.ht_operation; in ieee80211_assoc_success()
3376 if (!elems->vht_cap_elem && bss_elems.vht_cap_elem && in ieee80211_assoc_success()
3378 elems->vht_cap_elem = bss_elems.vht_cap_elem; in ieee80211_assoc_success()
3382 if (!elems->vht_operation && bss_elems.vht_operation && in ieee80211_assoc_success()
3384 elems->vht_operation = bss_elems.vht_operation; in ieee80211_assoc_success()
3395 (!elems->wmm_param || !elems->ht_cap_elem || !elems->ht_operation)) { in ieee80211_assoc_success()
3403 (!elems->vht_cap_elem || !elems->vht_operation)) { in ieee80211_assoc_success()
3411 !elems->he_6ghz_capa) { in ieee80211_assoc_success()
3438 (!elems->he_cap || !elems->he_operation)) { in ieee80211_assoc_success()
3447 if (elems->ht_cap_elem && !(ifmgd->flags & IEEE80211_STA_DISABLE_HT)) in ieee80211_assoc_success()
3449 elems->ht_cap_elem, sta); in ieee80211_assoc_success()
3451 if (elems->vht_cap_elem && !(ifmgd->flags & IEEE80211_STA_DISABLE_VHT)) in ieee80211_assoc_success()
3453 elems->vht_cap_elem, sta); in ieee80211_assoc_success()
3455 if (elems->he_operation && !(ifmgd->flags & IEEE80211_STA_DISABLE_HE) && in ieee80211_assoc_success()
3456 elems->he_cap) { in ieee80211_assoc_success()
3458 elems->he_cap, in ieee80211_assoc_success()
3459 elems->he_cap_len, in ieee80211_assoc_success()
3460 elems->he_6ghz_capa, in ieee80211_assoc_success()
3464 if (elems->rsnx && elems->rsnx_len && in ieee80211_assoc_success()
3465 (elems->rsnx[0] & WLAN_RSNX_CAPA_PROTECTED_TWT) && in ieee80211_assoc_success()
3472 changed |= ieee80211_recalc_twt_req(sdata, sta, elems); in ieee80211_assoc_success()
3484 le32_get_bits(elems->he_operation->he_oper_params, in ieee80211_assoc_success()
3487 le32_get_bits(elems->he_operation->he_oper_params, in ieee80211_assoc_success()
3490 !le32_get_bits(elems->he_operation->he_oper_params, in ieee80211_assoc_success()
3497 le32_get_bits(elems->he_operation->he_oper_params, in ieee80211_assoc_success()
3500 le32_get_bits(elems->he_operation->he_oper_params, in ieee80211_assoc_success()
3503 bss_conf->uora_exists = !!elems->uora_element; in ieee80211_assoc_success()
3504 if (elems->uora_element) in ieee80211_assoc_success()
3505 bss_conf->uora_ocw_range = elems->uora_element[0]; in ieee80211_assoc_success()
3507 ieee80211_he_op_ie_to_bss_conf(&sdata->vif, elems->he_operation); in ieee80211_assoc_success()
3508 ieee80211_he_spr_ie_to_bss_conf(&sdata->vif, elems->he_spr); in ieee80211_assoc_success()
3532 if (elems->opmode_notif && in ieee80211_assoc_success()
3533 !(*elems->opmode_notif & IEEE80211_OPMODE_NOTIF_RX_NSS_TYPE_BF)) { in ieee80211_assoc_success()
3536 nss = *elems->opmode_notif & IEEE80211_OPMODE_NOTIF_RX_NSS_MASK; in ieee80211_assoc_success()
3551 sta->sta.wme = (elems->wmm_param || elems->s1g_capab) && in ieee80211_assoc_success()
3583 } else if (!ieee80211_sta_wmm_params(local, sdata, elems->wmm_param, in ieee80211_assoc_success()
3584 elems->wmm_param_len, in ieee80211_assoc_success()
3585 elems->mu_edca_param_set)) { in ieee80211_assoc_success()
3599 if (elems->max_idle_period_ie) { in ieee80211_assoc_success()
3601 le16_to_cpu(elems->max_idle_period_ie->max_idle_period); in ieee80211_assoc_success()
3603 !!(elems->max_idle_period_ie->idle_options & in ieee80211_assoc_success()
3643 struct ieee802_11_elems elems; in ieee80211_rx_mgmt_assoc_resp() local
3700 ieee802_11_parse_elems(pos, len - (pos - (u8 *)mgmt), false, &elems, in ieee80211_rx_mgmt_assoc_resp()
3704 elems.timeout_int && in ieee80211_rx_mgmt_assoc_resp()
3705 elems.timeout_int->type == WLAN_TIMEOUT_ASSOC_COMEBACK) { in ieee80211_rx_mgmt_assoc_resp()
3707 tu = le32_to_cpu(elems.timeout_int->value); in ieee80211_rx_mgmt_assoc_resp()
3727 if (!ieee80211_assoc_success(sdata, cbss, mgmt, len, &elems)) { in ieee80211_rx_mgmt_assoc_resp()
3961 struct ieee802_11_elems elems; in ieee80211_rx_mgmt_beacon() local
4008 len - baselen, false, &elems, in ieee80211_rx_mgmt_beacon()
4014 if (elems.dtim_period) in ieee80211_rx_mgmt_beacon()
4015 ifmgd->dtim_period = elems.dtim_period; in ieee80211_rx_mgmt_beacon()
4023 sdata->vif.bss_conf.sync_dtim_count = elems.dtim_count; in ieee80211_rx_mgmt_beacon()
4026 if (elems.mbssid_config_ie) in ieee80211_rx_mgmt_beacon()
4028 elems.mbssid_config_ie->profile_periodicity; in ieee80211_rx_mgmt_beacon()
4032 if (elems.ext_capab_len >= 11 && in ieee80211_rx_mgmt_beacon()
4033 (elems.ext_capab[10] & WLAN_EXT_CAPA11_EMA_SUPPORT)) in ieee80211_rx_mgmt_beacon()
4074 len - baselen, false, &elems, in ieee80211_rx_mgmt_beacon()
4079 ieee80211_check_tim(elems.tim, elems.tim_len, bss_conf->aid)) { in ieee80211_rx_mgmt_beacon()
4149 sdata->vif.bss_conf.sync_dtim_count = elems.dtim_count; in ieee80211_rx_mgmt_beacon()
4162 &elems, true); in ieee80211_rx_mgmt_beacon()
4165 ieee80211_sta_wmm_params(local, sdata, elems.wmm_param, in ieee80211_rx_mgmt_beacon()
4166 elems.wmm_param_len, in ieee80211_rx_mgmt_beacon()
4167 elems.mu_edca_param_set)) in ieee80211_rx_mgmt_beacon()
4176 bss_conf->dtim_period = elems.dtim_period ?: 1; in ieee80211_rx_mgmt_beacon()
4188 if (elems.erp_info) { in ieee80211_rx_mgmt_beacon()
4190 erp_value = elems.erp_info[0]; in ieee80211_rx_mgmt_beacon()
4203 changed |= ieee80211_recalc_twt_req(sdata, sta, &elems); in ieee80211_rx_mgmt_beacon()
4205 if (ieee80211_config_bw(sdata, sta, elems.ht_cap_elem, in ieee80211_rx_mgmt_beacon()
4206 elems.vht_cap_elem, elems.ht_operation, in ieee80211_rx_mgmt_beacon()
4207 elems.vht_operation, elems.he_operation, in ieee80211_rx_mgmt_beacon()
4208 elems.s1g_oper, bssid, &changed)) { in ieee80211_rx_mgmt_beacon()
4223 if (sta && elems.opmode_notif) in ieee80211_rx_mgmt_beacon()
4224 ieee80211_vht_handle_opmode(sdata, sta, *elems.opmode_notif, in ieee80211_rx_mgmt_beacon()
4229 elems.country_elem, in ieee80211_rx_mgmt_beacon()
4230 elems.country_elem_len, in ieee80211_rx_mgmt_beacon()
4231 elems.pwr_constr_elem, in ieee80211_rx_mgmt_beacon()
4232 elems.cisco_dtpc_elem); in ieee80211_rx_mgmt_beacon()
4263 struct ieee802_11_elems elems; in ieee80211_sta_rx_queued_mgmt() local
4305 ies_len, true, &elems, mgmt->bssid, NULL); in ieee80211_sta_rx_queued_mgmt()
4307 if (elems.parse_error) in ieee80211_sta_rx_queued_mgmt()
4313 &elems, false); in ieee80211_sta_rx_queued_mgmt()
4328 ies_len, true, &elems, mgmt->bssid, NULL); in ieee80211_sta_rx_queued_mgmt()
4330 if (elems.parse_error) in ieee80211_sta_rx_queued_mgmt()
4334 elems.ext_chansw_ie = in ieee80211_sta_rx_queued_mgmt()
4340 &elems, false); in ieee80211_sta_rx_queued_mgmt()