34 for (i = 0; i < adapter->
priv_num; i++) {
35 if (adapter->
priv[i] != priv) {
36 ie = &adapter->
priv[
i]->mgmt_ie[
idx];
52 for (i = 0; i < priv->
adapter->max_mgmt_ie_index; i++) {
59 if (mask == subtype_mask) {
67 if (!priv->
mgmt_ie[i].ie_length) {
68 if (mwifiex_ie_index_used_by_other_intf(priv, i))
94 while (input_len > 0) {
95 ie = (
struct mwifiex_ie *)(((
u8 *)ie_list) + travel_len);
104 if (mwifiex_ie_get_autoidx(priv, mask, ie, &index))
109 tmp = (
u8 *)&priv->
mgmt_ie[index].ie_buffer;
124 if (mwifiex_ie_index_used_by_other_intf(priv, index))
132 le16_add_cpu(&ie_list->
len,
160 ap_custom_ie = kzalloc(
sizeof(*ap_custom_ie),
GFP_KERNEL);
170 memcpy(pos, beacon_ie, len);
172 le16_add_cpu(&ap_custom_ie->
len, len);
179 le16_add_cpu(&ap_custom_ie->
len, len);
186 le16_add_cpu(&ap_custom_ie->
len, len);
189 ret = mwifiex_update_autoindex_ies(priv, ap_custom_ie);
191 pos = (
u8 *)(&ap_custom_ie->
ie_list[0].ie_index);
201 *probe_idx = *((
u16 *)pos);
208 *assoc_idx = *((
u16 *)pos);
221 static int mwifiex_update_vs_ie(
const u8 *ies,
int ies_len,
223 unsigned int oui,
u8 oui_type)
241 vs_ie, vs_ie->
len + 2);
254 static int mwifiex_set_mgmt_beacon_data_ies(
struct mwifiex_private *priv,
297 if (beacon_ie || pr_ie || ar_ie) {
298 ret = mwifiex_update_uap_custom_ie(priv, beacon_ie,
300 &pr_idx, ar_ie, &ar_idx);
342 ie_len = rsn_ie->
len + 2;
353 wpa_ie, wpa_ie->
len + 2);
354 ie_len += wpa_ie->
len + 2;
358 if (rsn_ie || wpa_ie) {
359 if (mwifiex_update_uap_custom_ie(priv, gen_ie, &rsn_idx,
371 return mwifiex_set_mgmt_beacon_data_ies(priv, info);
388 rsn_ie->ie_length = 0;
389 if (mwifiex_update_uap_custom_ie(priv, rsn_ie, &priv->
rsn_idx,
417 pr_ie->ie_length = 0;
430 if (beacon_ie || pr_ie || ar_ie)
431 ret = mwifiex_update_uap_custom_ie(priv,