aboutsummaryrefslogtreecommitdiffstats
path: root/src/ap/ieee802_11_ht.c
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2015-02-03 10:29:37 (GMT)
committerJouni Malinen <j@w1.fi>2015-02-03 10:29:37 (GMT)
commitd027c7b118fe7bfea7b4ac70f16665a82a657e0e (patch)
tree523d7496e82287f1ccc8e31568bf76cd04d48688 /src/ap/ieee802_11_ht.c
parent5095a6b6fc244457bbe29e9f63e0c109f06eb305 (diff)
downloadhostap-d027c7b118fe7bfea7b4ac70f16665a82a657e0e.zip
hostap-d027c7b118fe7bfea7b4ac70f16665a82a657e0e.tar.gz
hostap-d027c7b118fe7bfea7b4ac70f16665a82a657e0e.tar.bz2
Fix 20/40 MHz co-ex report processing with obss_interval=0
If OBSS scan interval is not set, the AP must not schedule a timeout to restore 40 MHz operation immediately after having moved to a 20 MHz channel based on an unsolicited co-ex report. Fix this by scheduling the timeout only if obss_interval is non-zero. Since we do not currently support AP doing OBSS scans after the initial BSS setup, this means practically that 40-to-20 MHz transition is allowed, but 20-to-40 MHz is not with obss_interval=0. The latter gets enabled if obss_interval is set to a non-zero value so that associated STAs can take care of OBSS scanning. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Diffstat (limited to 'src/ap/ieee802_11_ht.c')
-rw-r--r--src/ap/ieee802_11_ht.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ap/ieee802_11_ht.c b/src/ap/ieee802_11_ht.c
index 3f299f3..4b0653d 100644
--- a/src/ap/ieee802_11_ht.c
+++ b/src/ap/ieee802_11_ht.c
@@ -292,7 +292,8 @@ void hostapd_2040_coex_action(struct hostapd_data *hapd,
iface->conf->secondary_channel = 0;
ieee802_11_set_beacons(iface);
}
- if (!iface->num_sta_ht40_intolerant) {
+ if (!iface->num_sta_ht40_intolerant &&
+ iface->conf->obss_interval) {
unsigned int delay_time;
delay_time = OVERLAPPING_BSS_TRANS_DELAY_FACTOR *
iface->conf->obss_interval;