AP: Add testing option to indicate an AP is disabled

Add a testing configuration such that the AP would be reported as
disabled in the RNR TBTT information MLD parameters included by other
affiliated APs of the AP MLD.

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
This commit is contained in:
Ilan Peer 2023-12-21 13:08:22 +02:00 committed by Jouni Malinen
parent 2249b9f776
commit 0b55b8da3c
3 changed files with 17 additions and 1 deletions

View file

@ -4853,6 +4853,8 @@ static int hostapd_config_fill(struct hostapd_config *conf,
} else if (os_strcmp(buf, "eht_oper_puncturing_override") == 0) { } else if (os_strcmp(buf, "eht_oper_puncturing_override") == 0) {
if (get_u16(pos, line, &bss->eht_oper_puncturing_override)) if (get_u16(pos, line, &bss->eht_oper_puncturing_override))
return 1; return 1;
} else if (os_strcmp(buf, "mld_indicate_disabled") == 0) {
bss->mld_indicate_disabled = atoi(pos);
#endif /* CONFIG_TESTING_OPTIONS */ #endif /* CONFIG_TESTING_OPTIONS */
#endif /* CONFIG_IEEE80211BE */ #endif /* CONFIG_IEEE80211BE */
} else { } else {

View file

@ -952,6 +952,14 @@ struct hostapd_bss_config {
/* The AP's MLD MAC address within the AP MLD */ /* The AP's MLD MAC address within the AP MLD */
u8 mld_addr[ETH_ALEN]; u8 mld_addr[ETH_ALEN];
#ifdef CONFIG_TESTING_OPTIONS
/*
* If set indicate the AP as disabled in the RNR element included in the
* other APs in the AP MLD.
*/
bool mld_indicate_disabled;
#endif /* CONFIG_TESTING_OPTIONS */
#endif /* CONFIG_IEEE80211BE */ #endif /* CONFIG_IEEE80211BE */
}; };

View file

@ -7604,7 +7604,13 @@ static u8 * hostapd_eid_rnr_iface(struct hostapd_data *hapd,
*eid++ = hapd->conf->mld_id; *eid++ = hapd->conf->mld_id;
*eid++ = hapd->mld_link_id | (1 << 4); *eid++ = hapd->mld_link_id | (1 << 4);
*eid++ = 0; *eid = 0;
#ifdef CONFIG_TESTING_OPTIONS
if (hapd->conf->mld_indicate_disabled)
*eid |= RNR_TBTT_INFO_MLD_PARAM2_LINK_DISABLED;
#endif /* CONFIG_TESTING_OPTIONS */
eid++;
len += RNR_TBTT_INFO_MLD_LEN; len += RNR_TBTT_INFO_MLD_LEN;
#endif /* CONFIG_IEEE80211BE */ #endif /* CONFIG_IEEE80211BE */
} }