1 diff U3 hostapd/config_file.c hostapd/config_file.c
2 --- a/hostapd/config_file.c Wed Aug 7 15:25:25 2019
3 +++ b/hostapd/config_file.c Fri Sep 20 17:36:33 2019
6 #endif /* CONFIG_OCV */
7 #ifdef CONFIG_IEEE80211N
8 + } else if (os_strcmp(buf, "noscan") == 0) {
9 + conf->noscan = atoi(pos);
10 + } else if (os_strcmp(buf, "ht_coex") == 0) {
11 + conf->no_ht_coex = !atoi(pos);
12 } else if (os_strcmp(buf, "ieee80211n") == 0) {
13 conf->ieee80211n = atoi(pos);
14 } else if (os_strcmp(buf, "ht_capab") == 0) {
15 diff U3 src/ap/ap_config.h src/ap/ap_config.h
16 --- a/src/ap/ap_config.h Wed Aug 7 15:25:25 2019
17 +++ b/src/ap/ap_config.h Fri Sep 20 17:38:06 2019
25 int secondary_channel;
26 int no_pri_sec_switch;
27 diff U3 src/ap/hw_features.c src/ap/hw_features.c
28 --- a/src/ap/hw_features.c Wed Aug 7 15:25:25 2019
29 +++ b/src/ap/hw_features.c Fri Sep 20 17:39:02 2019
33 /* Check that HT40 is used and PRI / SEC switch is allowed */
34 - if (!iface->conf->secondary_channel || iface->conf->no_pri_sec_switch)
35 + if (!iface->conf->secondary_channel || iface->conf->no_pri_sec_switch ||
36 + iface->conf->noscan)
39 hostapd_set_state(iface, HAPD_IFACE_HT_SCAN);
40 diff U3 src/ap/ieee802_11_ht.c src/ap/ieee802_11_ht.c
41 --- a/src/ap/ieee802_11_ht.c Wed Aug 7 15:25:25 2019
42 +++ b/src/ap/ieee802_11_ht.c Fri Sep 20 17:41:24 2019
47 + if (iface->conf->noscan || iface->conf->no_ht_coex)
50 if (len < IEEE80211_HDRLEN + 2 + sizeof(*bc_ie)) {
52 "Ignore too short 20/40 BSS Coexistence Management frame");
54 void ht40_intolerant_add(struct hostapd_iface *iface, struct sta_info *sta)
56 if (iface->current_mode->mode != HOSTAPD_MODE_IEEE80211G)
59 + if (iface->conf->noscan || iface->conf->no_ht_coex)
62 wpa_printf(MSG_INFO, "HT: Forty MHz Intolerant is set by STA " MACSTR