mirror of
https://github.com/vanhoefm/fragattacks.git
synced 2025-01-17 18:34:03 -05:00
Fix HT40 co-ex scan for some pri/sec channel switches
Secondary channel was compared incorrectly (-4/4 vs. actual channel number) which broke matching neighboring 40 MHz BSSes and only the no-beacons-on-secondary-channel rule was applied in practice. Once sec_chan was fixed, this triggered another issue in this function where both rules to switch pri/sec channels could end up getting applied in a way that effectively canceled the switch. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
018ead4218
commit
49b74430d9
@ -327,7 +327,7 @@ static int ieee80211n_check_40mhz_5g(struct hostapd_iface *iface,
|
|||||||
int match;
|
int match;
|
||||||
|
|
||||||
pri_chan = iface->conf->channel;
|
pri_chan = iface->conf->channel;
|
||||||
sec_chan = iface->conf->secondary_channel * 4;
|
sec_chan = pri_chan + iface->conf->secondary_channel * 4;
|
||||||
pri_freq = hostapd_hw_get_freq(iface->bss[0], pri_chan);
|
pri_freq = hostapd_hw_get_freq(iface->bss[0], pri_chan);
|
||||||
if (iface->conf->secondary_channel > 0)
|
if (iface->conf->secondary_channel > 0)
|
||||||
sec_freq = pri_freq + 20;
|
sec_freq = pri_freq + 20;
|
||||||
@ -351,6 +351,7 @@ static int ieee80211n_check_40mhz_5g(struct hostapd_iface *iface,
|
|||||||
"channel to get secondary channel with no Beacons "
|
"channel to get secondary channel with no Beacons "
|
||||||
"from other BSSes");
|
"from other BSSes");
|
||||||
ieee80211n_switch_pri_sec(iface);
|
ieee80211n_switch_pri_sec(iface);
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user