Currently first link BSS is always disabled at last. However, now first BSS can be dynamically adjusted. Hence remove such restriction. Signed-off-by: Aditya Kumar Singh <quic_adisi@xxxxxxxxxxx> --- hostapd/ctrl_iface.c | 17 +---------------- src/ap/hostapd.c | 24 ------------------------ 2 files changed, 1 insertion(+), 40 deletions(-) diff --git a/hostapd/ctrl_iface.c b/hostapd/ctrl_iface.c index 714d09837605..300042848bab 100644 --- a/hostapd/ctrl_iface.c +++ b/hostapd/ctrl_iface.c @@ -3503,7 +3503,6 @@ static void hostapd_disable_iface_bss(struct hostapd_iface *iface) static int hostapd_ctrl_iface_disable_mld(struct hostapd_iface *iface) { unsigned int i; - struct hostapd_iface *first_iface = NULL; if (!iface || !iface->bss[0]->conf->mld_ap) { wpa_printf(MSG_ERROR, @@ -3523,26 +3522,17 @@ static int hostapd_ctrl_iface_disable_mld(struct hostapd_iface *iface) !hostapd_is_ml_partner(h_hapd, iface->bss[0])) continue; - if (hostapd_mld_is_first_bss(h_hapd)) { - first_iface = h_iface; - continue; - } hostapd_disable_iface_bss(iface); } - if (first_iface) - hostapd_disable_iface_bss(first_iface); - /* Then, fully disable interfaces */ - for (i = 0; i < iface->interfaces->count; ++i) { struct hostapd_iface *h_iface = iface->interfaces->iface[i]; struct hostapd_data *h_hapd = h_iface->bss[0]; struct hostapd_bss_config *h_conf = h_hapd->conf; if (!h_conf->mld_ap || - !hostapd_is_ml_partner(h_hapd, iface->bss[0]) || - hostapd_mld_is_first_bss(h_hapd)) + !hostapd_is_ml_partner(h_hapd, iface->bss[0])) continue; if (hostapd_disable_iface(h_iface)) { @@ -3551,11 +3541,6 @@ static int hostapd_ctrl_iface_disable_mld(struct hostapd_iface *iface) } } - if (first_iface && hostapd_disable_iface(first_iface)) { - wpa_printf(MSG_ERROR, "Disabling AP MLD failed"); - return -1; - } - return 0; } diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c index 863547c0de33..842a527466c0 100644 --- a/src/ap/hostapd.c +++ b/src/ap/hostapd.c @@ -3495,30 +3495,6 @@ int hostapd_disable_iface(struct hostapd_iface *hapd_iface) return -1; } -#ifdef CONFIG_IEEE80211BE - if (hapd_iface->bss[0]->conf->mld_ap && - hostapd_mld_is_first_bss((hapd_iface->bss[0]))) { - /* Do not allow mld_first_bss disabling before other BSSs */ - for (j = 0; j < hapd_iface->interfaces->count; ++j) { - struct hostapd_iface *h_iface = - hapd_iface->interfaces->iface[j]; - struct hostapd_data *h_hapd = h_iface->bss[0]; - struct hostapd_bss_config *h_conf = h_hapd->conf; - - if (!h_conf->mld_ap || - !hostapd_is_ml_partner(h_hapd, hapd_iface->bss[0]) || - h_iface == hapd_iface) - continue; - - if (h_iface->state != HAPD_IFACE_DISABLED) { - wpa_printf(MSG_INFO, - "Do not allow disable mld_first_bss first"); - return -1; - } - } - } -#endif /* CONFIG_IEEE80211BE */ - wpa_msg(hapd_iface->bss[0]->msg_ctx, MSG_INFO, AP_EVENT_DISABLED); driver = hapd_iface->bss[0]->driver; drv_priv = hapd_iface->bss[0]->drv_priv; -- 2.25.1 _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap