Lines Matching refs:ies

120 	struct cfg80211_bss_ies *ies;
125 ies = (void *)rcu_access_pointer(bss->pub.beacon_ies);
126 if (ies && !bss->pub.hidden_beacon_bss)
127 kfree_rcu(ies, rcu_head);
128 ies = (void *)rcu_access_pointer(bss->pub.proberesp_ies);
129 if (ies)
130 kfree_rcu(ies, rcu_head);
420 const struct cfg80211_bss_ies *ies;
429 ies = rcu_access_pointer(a->ies);
430 if (!ies)
432 ssid_elem = cfg80211_find_elem(WLAN_EID_SSID, ies->data, ies->len);
554 static int cfg80211_calc_short_ssid(const struct cfg80211_bss_ies *ies,
558 *elem = cfg80211_find_elem(WLAN_EID_SSID, ies->data, ies->len);
648 static int cfg80211_parse_colocated_ap(const struct cfg80211_bss_ies *ies,
658 ret = cfg80211_calc_short_ssid(ies, &ssid_elem, &s_ssid_tmp);
663 ies->data, ies->len) {
832 const struct cfg80211_bss_ies *ies;
834 ies = rcu_access_pointer(res->ies);
835 count += cfg80211_parse_colocated_ap(ies,
1304 cfg80211_find_elem_match(u8 eid, const u8 *ies, unsigned int len,
1310 for_each_element_id(elem, eid, ies, len) {
1321 const u8 *ies,
1331 elem = cfg80211_find_elem_match(WLAN_EID_VENDOR_SPECIFIC, ies, len,
1366 a_ies = rcu_access_pointer(a->ies);
1369 b_ies = rcu_access_pointer(b->ies);
1606 const struct cfg80211_bss_ies *ies;
1613 ies = rcu_access_pointer(new->pub.beacon_ies);
1614 if (WARN_ON(!ies))
1617 ie = cfg80211_find_ie(WLAN_EID_SSID, ies->data, ies->len);
1649 ies = rcu_access_pointer(bss->pub.ies);
1650 if (!ies)
1652 ie = cfg80211_find_ie(WLAN_EID_SSID, ies->data, ies->len);
1684 const struct cfg80211_bss_ies *ies;
1686 ies = rcu_access_pointer(bss->pub.beacon_ies);
1687 WARN_ON(ies != old_ies);
1710 rcu_assign_pointer(known->pub.ies,
1740 if (old == rcu_access_pointer(known->pub.ies))
1741 rcu_assign_pointer(known->pub.ies, new->pub.beacon_ies);
1785 if (WARN_ON(!rcu_access_pointer(tmp->pub.ies))) {
1797 struct cfg80211_bss_ies *ies;
1807 ies = (void *)rcu_dereference(tmp->pub.beacon_ies);
1808 if (ies)
1809 kfree_rcu(ies, rcu_head);
1810 ies = (void *)rcu_dereference(tmp->pub.proberesp_ies);
1811 if (ies)
1812 kfree_rcu(ies, rcu_head);
1833 ies = (void *)rcu_access_pointer(new->pub.beacon_ies);
1836 if (ies)
1837 kfree_rcu(ies, rcu_head);
2037 struct cfg80211_bss_ies *ies;
2105 ies = kzalloc(sizeof(*ies) + data->ielen, gfp);
2106 if (!ies)
2108 ies->len = data->ielen;
2109 ies->tsf = data->tsf;
2110 ies->from_beacon = false;
2111 memcpy(ies->data, data->ie, data->ielen);
2115 ies->from_beacon = true;
2118 rcu_assign_pointer(tmp.pub.beacon_ies, ies);
2121 rcu_assign_pointer(tmp.pub.proberesp_ies, ies);
2124 rcu_assign_pointer(tmp.pub.ies, ies);
2132 rdev_inform_bss(rdev, &res->pub, ies, drv_data->drv_data);
2352 ssize_t cfg80211_defragment_element(const struct element *elem, const u8 *ies,
2386 elem->data < ies + ieslen &&
2387 elem->data + elem->datalen <= ies + ieslen;
2795 struct cfg80211_bss_ies *ies;
2875 ies = kzalloc(sizeof(*ies) + ielen, gfp);
2876 if (!ies)
2878 ies->len = ielen;
2879 ies->tsf = le64_to_cpu(mgmt->u.probe_resp.timestamp);
2880 ies->from_beacon = ieee80211_is_beacon(mgmt->frame_control) ||
2882 memcpy(ies->data, variable, ielen);
2885 rcu_assign_pointer(tmp.pub.proberesp_ies, ies);
2887 rcu_assign_pointer(tmp.pub.beacon_ies, ies);
2888 rcu_assign_pointer(tmp.pub.ies, ies);
2908 rdev_inform_bss(rdev, &res->pub, ies, data->drv_data);
3274 const struct cfg80211_bss_ies *ies,
3280 if (!ies)
3287 pos = ies->data;
3288 end = pos + ies->len;
3325 const struct cfg80211_bss_ies *ies;
3407 ies = rcu_dereference(bss->pub.ies);
3408 rem = ies->len;
3409 ie = ies->data;
3556 sprintf(buf, "tsf=%016llx", (unsigned long long)(ies->tsf));
3572 current_ev = ieee80211_scan_add_ies(info, ies, current_ev, end_buf);