Lines Matching refs:elems

1232 				 struct ieee802_11_elems *elems,  in ieee80211_sta_process_chanswitch()  argument
1258 res = ieee80211_parse_ch_switch_ie(sdata, elems, current_band, in ieee80211_sta_process_chanswitch()
2743 struct ieee802_11_elems elems; in ieee80211_auth_challenge() local
2747 ieee802_11_parse_elems(pos, len - (pos - (u8 *) mgmt), false, &elems); in ieee80211_auth_challenge()
2748 if (!elems.challenge) in ieee80211_auth_challenge()
2756 elems.challenge - 2, elems.challenge_len + 2, in ieee80211_auth_challenge()
3056 struct ieee802_11_elems elems; in ieee80211_assoc_success() local
3085 ieee802_11_parse_elems(pos, len - (pos - (u8 *) mgmt), false, &elems); in ieee80211_assoc_success()
3087 if (!elems.supp_rates) { in ieee80211_assoc_success()
3094 elems.ext_capab && elems.ext_capab_len >= 5 && in ieee80211_assoc_success()
3095 (elems.ext_capab[4] & WLAN_EXT_CAPA5_TDLS_CH_SW_PROHIBITED); in ieee80211_assoc_success()
3104 if ((assoc_data->wmm && !elems.wmm_param) || in ieee80211_assoc_success()
3106 (!elems.ht_cap_elem || !elems.ht_operation)) || in ieee80211_assoc_success()
3108 (!elems.vht_cap_elem || !elems.vht_operation))) { in ieee80211_assoc_success()
3124 !elems.wmm_param && bss_elems.wmm_param) { in ieee80211_assoc_success()
3125 elems.wmm_param = bss_elems.wmm_param; in ieee80211_assoc_success()
3134 if (!elems.ht_cap_elem && bss_elems.ht_cap_elem && in ieee80211_assoc_success()
3136 elems.ht_cap_elem = bss_elems.ht_cap_elem; in ieee80211_assoc_success()
3140 if (!elems.ht_operation && bss_elems.ht_operation && in ieee80211_assoc_success()
3142 elems.ht_operation = bss_elems.ht_operation; in ieee80211_assoc_success()
3146 if (!elems.vht_cap_elem && bss_elems.vht_cap_elem && in ieee80211_assoc_success()
3148 elems.vht_cap_elem = bss_elems.vht_cap_elem; in ieee80211_assoc_success()
3152 if (!elems.vht_operation && bss_elems.vht_operation && in ieee80211_assoc_success()
3154 elems.vht_operation = bss_elems.vht_operation; in ieee80211_assoc_success()
3165 (!elems.wmm_param || !elems.ht_cap_elem || !elems.ht_operation)) { in ieee80211_assoc_success()
3173 (!elems.vht_cap_elem || !elems.vht_operation)) { in ieee80211_assoc_success()
3206 (!elems.he_cap && !elems.he_operation)) in ieee80211_assoc_success()
3210 (!elems.he_cap || !elems.he_operation)) { in ieee80211_assoc_success()
3219 if (elems.ht_cap_elem && !(ifmgd->flags & IEEE80211_STA_DISABLE_HT)) in ieee80211_assoc_success()
3221 elems.ht_cap_elem, sta); in ieee80211_assoc_success()
3223 if (elems.vht_cap_elem && !(ifmgd->flags & IEEE80211_STA_DISABLE_VHT)) in ieee80211_assoc_success()
3225 elems.vht_cap_elem, sta); in ieee80211_assoc_success()
3227 if (elems.he_operation && !(ifmgd->flags & IEEE80211_STA_DISABLE_HE) && in ieee80211_assoc_success()
3228 elems.he_cap) { in ieee80211_assoc_success()
3230 elems.he_cap, in ieee80211_assoc_success()
3231 elems.he_cap_len, in ieee80211_assoc_success()
3241 le32_to_cpu(elems.he_operation->he_oper_params); in ieee80211_assoc_success()
3262 bss_conf->uora_exists = !!elems.uora_element; in ieee80211_assoc_success()
3263 if (elems.uora_element) in ieee80211_assoc_success()
3264 bss_conf->uora_ocw_range = elems.uora_element[0]; in ieee80211_assoc_success()
3281 if (elems.opmode_notif && in ieee80211_assoc_success()
3282 !(*elems.opmode_notif & IEEE80211_OPMODE_NOTIF_RX_NSS_TYPE_BF)) { in ieee80211_assoc_success()
3285 nss = *elems.opmode_notif & IEEE80211_OPMODE_NOTIF_RX_NSS_MASK; in ieee80211_assoc_success()
3300 sta->sta.wme = elems.wmm_param && local->hw.queues >= IEEE80211_NUM_ACS; in ieee80211_assoc_success()
3327 } else if (!ieee80211_sta_wmm_params(local, sdata, elems.wmm_param, in ieee80211_assoc_success()
3328 elems.wmm_param_len, in ieee80211_assoc_success()
3329 elems.mu_edca_param_set)) { in ieee80211_assoc_success()
3343 if (elems.max_idle_period_ie) { in ieee80211_assoc_success()
3345 le16_to_cpu(elems.max_idle_period_ie->max_idle_period); in ieee80211_assoc_success()
3347 !!(elems.max_idle_period_ie->idle_options & in ieee80211_assoc_success()
3388 struct ieee802_11_elems elems; in ieee80211_rx_mgmt_assoc_resp() local
3428 ieee802_11_parse_elems(pos, len - (pos - (u8 *) mgmt), false, &elems); in ieee80211_rx_mgmt_assoc_resp()
3431 elems.timeout_int && in ieee80211_rx_mgmt_assoc_resp()
3432 elems.timeout_int->type == WLAN_TIMEOUT_ASSOC_COMEBACK) { in ieee80211_rx_mgmt_assoc_resp()
3434 tu = le32_to_cpu(elems.timeout_int->value); in ieee80211_rx_mgmt_assoc_resp()
3486 struct ieee802_11_elems *elems) in ieee80211_rx_bss_info() argument
3498 bss = ieee80211_bss_info_update(local, rx_status, mgmt, len, elems, in ieee80211_rx_bss_info()
3514 struct ieee802_11_elems elems; in ieee80211_rx_mgmt_probe_resp() local
3528 false, &elems); in ieee80211_rx_mgmt_probe_resp()
3530 ieee80211_rx_bss_info(sdata, mgmt, len, rx_status, &elems); in ieee80211_rx_mgmt_probe_resp()
3664 struct ieee802_11_elems elems; in ieee80211_rx_mgmt_beacon() local
3700 len - baselen, false, &elems); in ieee80211_rx_mgmt_beacon()
3702 ieee80211_rx_bss_info(sdata, mgmt, len, rx_status, &elems); in ieee80211_rx_mgmt_beacon()
3703 if (elems.tim && !elems.parse_error) { in ieee80211_rx_mgmt_beacon()
3704 const struct ieee80211_tim_ie *tim_ie = elems.tim; in ieee80211_rx_mgmt_beacon()
3714 if (elems.tim) in ieee80211_rx_mgmt_beacon()
3716 elems.tim->dtim_count; in ieee80211_rx_mgmt_beacon()
3750 len - baselen, false, &elems, in ieee80211_rx_mgmt_beacon()
3754 ieee80211_check_tim(elems.tim, elems.tim_len, ifmgd->aid)) { in ieee80211_rx_mgmt_beacon()
3823 if (elems.tim) in ieee80211_rx_mgmt_beacon()
3825 elems.tim->dtim_count; in ieee80211_rx_mgmt_beacon()
3835 ieee80211_rx_bss_info(sdata, mgmt, len, rx_status, &elems); in ieee80211_rx_mgmt_beacon()
3839 &elems, true); in ieee80211_rx_mgmt_beacon()
3842 ieee80211_sta_wmm_params(local, sdata, elems.wmm_param, in ieee80211_rx_mgmt_beacon()
3843 elems.wmm_param_len, in ieee80211_rx_mgmt_beacon()
3844 elems.mu_edca_param_set)) in ieee80211_rx_mgmt_beacon()
3853 if (elems.tim) in ieee80211_rx_mgmt_beacon()
3854 bss_conf->dtim_period = elems.tim->dtim_period ?: 1; in ieee80211_rx_mgmt_beacon()
3868 if (elems.erp_info) { in ieee80211_rx_mgmt_beacon()
3870 erp_value = elems.erp_info[0]; in ieee80211_rx_mgmt_beacon()
3882 elems.ht_cap_elem, elems.ht_operation, in ieee80211_rx_mgmt_beacon()
3883 elems.vht_operation, elems.he_operation, in ieee80211_rx_mgmt_beacon()
3898 if (sta && elems.opmode_notif) in ieee80211_rx_mgmt_beacon()
3899 ieee80211_vht_handle_opmode(sdata, sta, *elems.opmode_notif, in ieee80211_rx_mgmt_beacon()
3904 elems.country_elem, in ieee80211_rx_mgmt_beacon()
3905 elems.country_elem_len, in ieee80211_rx_mgmt_beacon()
3906 elems.pwr_constr_elem, in ieee80211_rx_mgmt_beacon()
3907 elems.cisco_dtpc_elem); in ieee80211_rx_mgmt_beacon()
3918 struct ieee802_11_elems elems; in ieee80211_sta_rx_queued_mgmt() local
3958 ies_len, true, &elems); in ieee80211_sta_rx_queued_mgmt()
3960 if (elems.parse_error) in ieee80211_sta_rx_queued_mgmt()
3966 &elems, false); in ieee80211_sta_rx_queued_mgmt()
3977 ies_len, true, &elems); in ieee80211_sta_rx_queued_mgmt()
3979 if (elems.parse_error) in ieee80211_sta_rx_queued_mgmt()
3983 elems.ext_chansw_ie = in ieee80211_sta_rx_queued_mgmt()
3989 &elems, false); in ieee80211_sta_rx_queued_mgmt()