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>
45 lines
1.3 KiB
Diff
45 lines
1.3 KiB
Diff
--- a/src/ap/acs.c
|
|
+++ b/src/ap/acs.c
|
|
@@ -293,18 +293,12 @@ static void acs_fail(struct hostapd_ifac
|
|
static long double
|
|
acs_survey_interference_factor(struct freq_survey *survey, s8 min_nf)
|
|
{
|
|
- long double factor, busy, total;
|
|
+ long double factor, busy = 0, total;
|
|
|
|
if (survey->filled & SURVEY_HAS_CHAN_TIME_BUSY)
|
|
busy = survey->channel_time_busy;
|
|
else if (survey->filled & SURVEY_HAS_CHAN_TIME_RX)
|
|
busy = survey->channel_time_rx;
|
|
- else {
|
|
- /* This shouldn't really happen as survey data is checked in
|
|
- * acs_sanity_check() */
|
|
- wpa_printf(MSG_ERROR, "ACS: Survey data missing");
|
|
- return 0;
|
|
- }
|
|
|
|
total = survey->channel_time;
|
|
|
|
@@ -406,20 +400,19 @@ static int acs_usable_vht160_chan(const
|
|
static int acs_survey_is_sufficient(struct freq_survey *survey)
|
|
{
|
|
if (!(survey->filled & SURVEY_HAS_NF)) {
|
|
+ survey->nf = -95;
|
|
wpa_printf(MSG_INFO, "ACS: Survey is missing noise floor");
|
|
- return 0;
|
|
}
|
|
|
|
if (!(survey->filled & SURVEY_HAS_CHAN_TIME)) {
|
|
+ survey->channel_time = 0;
|
|
wpa_printf(MSG_INFO, "ACS: Survey is missing channel time");
|
|
- return 0;
|
|
}
|
|
|
|
if (!(survey->filled & SURVEY_HAS_CHAN_TIME_BUSY) &&
|
|
!(survey->filled & SURVEY_HAS_CHAN_TIME_RX)) {
|
|
wpa_printf(MSG_INFO,
|
|
"ACS: Survey is missing RX and busy time (at least one is required)");
|
|
- return 0;
|
|
}
|
|
|
|
return 1;
|