static size_t hostapd_probe_resp_elems_len(struct hostapd_data *hapd,
struct probe_resp_params *params)
{
-#ifdef CONFIG_IEEE80211BE
struct hostapd_data *hapd_probed = hapd;
-#endif /* CONFIG_IEEE80211BE */
size_t buflen = 0;
hapd = hostapd_mbssid_get_tx_bss(hapd);
}
#endif /* CONFIG_IEEE80211BE */
- buflen += hostapd_eid_mbssid_len(hapd, WLAN_FC_STYPE_PROBE_RESP, NULL,
+ buflen += hostapd_eid_mbssid_len(hapd_probed, WLAN_FC_STYPE_PROBE_RESP,
+ NULL,
params->known_bss,
params->known_bss_len, NULL);
buflen += hostapd_eid_rnr_len(hapd, WLAN_FC_STYPE_PROBE_RESP, true);
struct probe_resp_params *params,
u8 *pos, size_t len)
{
-#ifdef CONFIG_IEEE80211BE
struct hostapd_data *hapd_probed = hapd;
-#endif /* CONFIG_IEEE80211BE */
u8 *csa_pos;
u8 *epos;
pos = hostapd_get_rsne(hapd, pos, epos - pos);
pos = hostapd_eid_bss_load(hapd, pos, epos - pos);
- pos = hostapd_eid_mbssid(hapd, pos, epos, WLAN_FC_STYPE_PROBE_RESP, 0,
+ pos = hostapd_eid_mbssid(hapd_probed, pos, epos,
+ WLAN_FC_STYPE_PROBE_RESP, 0,
NULL, params->known_bss, params->known_bss_len,
NULL, NULL, NULL, 0);
pos = hostapd_eid_rm_enabled_capab(hapd, pos, epos - pos);
}
-size_t hostapd_eid_mbssid_len(struct hostapd_data *hapd, u32 frame_type,
+size_t hostapd_eid_mbssid_len(struct hostapd_data *hapd_probed, u32 frame_type,
u8 *elem_count, const u8 *known_bss,
size_t known_bss_len, size_t *rnr_len)
{
+ struct hostapd_data *hapd = hostapd_mbssid_get_tx_bss(hapd_probed);
size_t len = 0, bss_index = 1;
if (!hapd->iconf->mbssid || hapd->iface->num_bss <= 1 ||
while (bss_index < hapd->iface->num_bss) {
size_t rnr_count = bss_index;
- len += hostapd_eid_mbssid_elem_len(hapd, frame_type,
+ len += hostapd_eid_mbssid_elem_len(hapd_probed, frame_type,
&bss_index, known_bss,
known_bss_len);
}
-u8 * hostapd_eid_mbssid(struct hostapd_data *hapd, u8 *eid, u8 *end,
+u8 * hostapd_eid_mbssid(struct hostapd_data *hapd_probed, u8 *eid, u8 *end,
unsigned int frame_stype, u8 elem_count,
u8 **elem_offset,
const u8 *known_bss, size_t known_bss_len, u8 *rnr_eid,
u8 *rnr_count, u8 **rnr_offset, size_t rnr_len)
{
+ struct hostapd_data *hapd = hostapd_mbssid_get_tx_bss(hapd_probed);
size_t bss_index = 1, cur_len = 0;
u8 elem_index = 0, *rnr_start_eid = rnr_eid;
bool add_rnr;
elem_offset[elem_index] = eid;
elem_index = elem_index + 1;
}
- eid = hostapd_eid_mbssid_elem(hapd, eid, end, frame_stype,
+ eid = hostapd_eid_mbssid_elem(hapd_probed, eid, end,
+ frame_stype,
hostapd_max_bssid_indicator(hapd),
&bss_index, elem_count,
known_bss, known_bss_len);