When auto channel selection (ACS) is used for HE 40MHz in 2.4GHz band, AP sets center frequency after finding a 40MHz channel and then runs a scan for overlapping BSSes in neighboring channels. Upon OBSS detection, AP should downgrade to 20MHz bandwidth. Currently this is broken because allowed_ht40_channel_pair() returns true in this case and the steps to reset center frequency are not executed causing failure to bring interface up. Fix the condition to allow rollback to 20MHz. Signed-off-by: Aloka Dixit <alokad@xxxxxxxxxxxxxx> --- v3: Rebased to latest. Modified commit description. src/ap/hw_features.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/ap/hw_features.c b/src/ap/hw_features.c index f6e69030d767..1563a9ee34a4 100644 --- a/src/ap/hw_features.c +++ b/src/ap/hw_features.c @@ -313,7 +313,7 @@ static void ieee80211n_check_scan(struct hostapd_iface *iface) { struct wpa_scan_results *scan_res; int oper40; - int res; + int res = 0; /* Check list of neighboring BSSes (from scan) to see whether 40 MHz is * allowed per IEEE Std 802.11-2012, 10.15.3.2 */ @@ -349,7 +349,8 @@ static void ieee80211n_check_scan(struct hostapd_iface *iface) } } - res = ieee80211n_allowed_ht40_channel_pair(iface); + if (iface->conf->secondary_channel) + res = ieee80211n_allowed_ht40_channel_pair(iface); if (!res) { iface->conf->secondary_channel = 0; hostapd_set_oper_centr_freq_seg0_idx(iface->conf, 0); base-commit: 88436baaac4172fda2abbe41449ff0bf8994ee9d -- 2.25.0 _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap