59 for (i = 0; i < params->
crypto.n_akm_suites; i++) {
60 switch (params->
crypto.akm_suites[i]) {
62 if (params->
crypto.wpa_versions &
67 if (params->
crypto.wpa_versions &
74 if (params->
crypto.wpa_versions &
79 if (params->
crypto.wpa_versions &
89 for (i = 0; i < params->
crypto.n_ciphers_pairwise; i++) {
90 switch (params->
crypto.ciphers_pairwise[i]) {
96 bss_config->
wpa_cfg.pairwise_cipher_wpa |=
99 bss_config->
wpa_cfg.pairwise_cipher_wpa2 |=
104 bss_config->
wpa_cfg.pairwise_cipher_wpa |=
107 bss_config->
wpa_cfg.pairwise_cipher_wpa2 |=
114 switch (params->
crypto.cipher_group) {
120 bss_config->
wpa_cfg.length = 0;
127 bss_config->
wep_cfg[
i].is_default = 1;
129 bss_config->
wep_cfg[
i].is_default = 0;
189 const u8 *var_pos = params->
beacon.head + var_offset;
190 int len = params->
beacon.head_len - var_offset;
242 pwk_cipher->
tlv.len =
254 pwk_cipher->
tlv.len =
266 gwk_cipher->
tlv.len =
296 mwifiex_uap_bss_wep(
u8 **tlv_buf,
void *cmd_buf,
u16 *param_size)
305 if (bss_cfg->
wep_cfg[i].length &&
317 bss_cfg->wep_cfg[i].
length;
319 bss_cfg->wep_cfg[i].
length;
333 mwifiex_uap_bss_param_prepare(
u8 *tlv,
void *cmd_buf,
u16 *param_size)
352 if (bss_cfg->
ssid.ssid_len) {
358 bss_cfg->ssid.ssid_len;
359 tlv +=
sizeof(
struct host_cmd_tlv) + bss_cfg->ssid.ssid_len;
363 bcast_ssid->tlv.len =
369 if (bss_cfg->
rates[0]) {
399 beacon_period->
tlv.type =
401 beacon_period->
tlv.len =
412 dtim_period->
tlv.len =
421 rts_threshold->
tlv.type =
423 rts_threshold->
tlv.len =
433 frag_threshold->
tlv.type =
435 frag_threshold->
tlv.len =
445 retry_limit->
tlv.len =
455 mwifiex_uap_bss_wpa(&tlv, cmd_buf, &cmd_size);
457 mwifiex_uap_bss_wep(&tlv, cmd_buf, &cmd_size);
472 encrypt_protocol->
tlv.type =
474 encrypt_protocol->
tlv.len =
482 if (bss_cfg->
ht_cap.cap_info) {
488 htcap->
ht_cap.ampdu_params_info =
489 bss_cfg->
ht_cap.ampdu_params_info;
492 htcap->
ht_cap.extended_ht_cap_info =
493 bss_cfg->
ht_cap.extended_ht_cap_info;
494 htcap->
ht_cap.tx_BF_cap_info = bss_cfg->
ht_cap.tx_BF_cap_info;
495 htcap->
ht_cap.antenna_selection_info =
496 bss_cfg->
ht_cap.antenna_selection_info;
507 cmd_size +=
sizeof(*ao_timer);
508 tlv +=
sizeof(*ao_timer);
518 cmd_size +=
sizeof(*ps_ao_timer);
519 tlv +=
sizeof(*ps_ao_timer);
528 static int mwifiex_uap_custom_ie_prepare(
u8 *tlv,
void *cmd_buf,
u16 *ie_size)
567 if (mwifiex_uap_bss_param_prepare(tlv, cmd_buf, ¶m_size))
573 if (mwifiex_uap_custom_ie_prepare(tlv, cmd_buf, &ie_size))
597 if (mwifiex_cmd_uap_sys_config(cmd, cmd_action, type, data_buf))
607 "PREP_CMD: unknown cmd %#x\n", cmd_no);