mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 07:22:33 +00:00
8af79550e6
This also syncs the configuration files with the default configuration files, but no extra options are activated or deactivated. The mesh patches were partially merged into hostapd 2.8, the remaining patches were extracted from patchwork and are now applied by OpenWrt. The patches still have open questions which are not fixed by the author. They were taken from this page: https://patchwork.ozlabs.org/project/hostap/list/?series=62725&state=* The changes in 007-mesh-apply-channel-attributes-before-running-Mesh.patch where first applied to hostapd, but later reverted in hostapd commit 3e949655ccc5 because they caused memory leaks. The size of the ipkgs increase a bit (between 1.3% and 2.3%): old 2018-12-02 (2.7): 283337 wpad-basic_2018-12-02-c2c6c01b-11_mipsel_24kc.ipk 252857 wpad-mini_2018-12-02-c2c6c01b-11_mipsel_24kc.ipk 417473 wpad-openssl_2018-12-02-c2c6c01b-11_mipsel_24kc.ipk 415105 wpad-wolfssl_2018-12-02-c2c6c01b-11_mipsel_24kc.ipk new 2019-04-21 (2.8): 288264 wpad-basic_2019-04-21-63962824-1_mipsel_24kc.ipk 256188 wpad-mini_2019-04-21-63962824-1_mipsel_24kc.ipk 427475 wpad-openssl_2019-04-21-63962824-1_mipsel_24kc.ipk 423071 wpad-wolfssl_2019-04-21-63962824-1_mipsel_24kc.ipk Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
59 lines
1.8 KiB
Diff
59 lines
1.8 KiB
Diff
--- a/hostapd/config_file.c
|
|
+++ b/hostapd/config_file.c
|
|
@@ -3390,6 +3390,10 @@ static int hostapd_config_fill(struct ho
|
|
bss->ieee80211w = 1;
|
|
#endif /* CONFIG_OCV */
|
|
#ifdef CONFIG_IEEE80211N
|
|
+ } else if (os_strcmp(buf, "noscan") == 0) {
|
|
+ conf->noscan = atoi(pos);
|
|
+ } else if (os_strcmp(buf, "ht_coex") == 0) {
|
|
+ conf->no_ht_coex = !atoi(pos);
|
|
} else if (os_strcmp(buf, "ieee80211n") == 0) {
|
|
conf->ieee80211n = atoi(pos);
|
|
} else if (os_strcmp(buf, "ht_capab") == 0) {
|
|
--- a/src/ap/ap_config.h
|
|
+++ b/src/ap/ap_config.h
|
|
@@ -803,6 +803,8 @@ struct hostapd_config {
|
|
|
|
int ht_op_mode_fixed;
|
|
u16 ht_capab;
|
|
+ int noscan;
|
|
+ int no_ht_coex;
|
|
int ieee80211n;
|
|
int secondary_channel;
|
|
int no_pri_sec_switch;
|
|
--- a/src/ap/hw_features.c
|
|
+++ b/src/ap/hw_features.c
|
|
@@ -477,7 +477,8 @@ static int ieee80211n_check_40mhz(struct
|
|
int ret;
|
|
|
|
/* Check that HT40 is used and PRI / SEC switch is allowed */
|
|
- if (!iface->conf->secondary_channel || iface->conf->no_pri_sec_switch)
|
|
+ if (!iface->conf->secondary_channel || iface->conf->no_pri_sec_switch ||
|
|
+ iface->conf->noscan)
|
|
return 0;
|
|
|
|
hostapd_set_state(iface, HAPD_IFACE_HT_SCAN);
|
|
--- a/src/ap/ieee802_11_ht.c
|
|
+++ b/src/ap/ieee802_11_ht.c
|
|
@@ -252,6 +252,9 @@ void hostapd_2040_coex_action(struct hos
|
|
return;
|
|
}
|
|
|
|
+ if (iface->conf->noscan || iface->conf->no_ht_coex)
|
|
+ return;
|
|
+
|
|
if (len < IEEE80211_HDRLEN + 2 + sizeof(*bc_ie)) {
|
|
wpa_printf(MSG_DEBUG,
|
|
"Ignore too short 20/40 BSS Coexistence Management frame");
|
|
@@ -412,6 +415,9 @@ void ht40_intolerant_add(struct hostapd_
|
|
if (iface->current_mode->mode != HOSTAPD_MODE_IEEE80211G)
|
|
return;
|
|
|
|
+ if (iface->conf->noscan || iface->conf->no_ht_coex)
|
|
+ return;
|
|
+
|
|
wpa_printf(MSG_INFO, "HT: Forty MHz Intolerant is set by STA " MACSTR
|
|
" in Association Request", MAC2STR(sta->addr));
|
|
|