Skip networks without known SSID when selecting the BSS
Previously, APs that were hiding SSID (zero-length SSID IE in Beacon frames) could have been selected when wildcard SSID matching was used. This would result in failed association attempt since the client does not know the correct SSID. This can slow down WPS which is often using wildcard SSID matching. Ignore BSSes without known SSID in the scan results when selecting which BSS to use.
This commit is contained in:
parent
dc461de43e
commit
e81634cd18
1 changed files with 10 additions and 0 deletions
|
@ -427,6 +427,11 @@ wpa_supplicant_select_bss_wpa(struct wpa_supplicant *wpa_s,
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ssid_len == 0) {
|
||||||
|
wpa_printf(MSG_DEBUG, " skip - SSID not known");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (wpa_ie_len == 0 && rsn_ie_len == 0) {
|
if (wpa_ie_len == 0 && rsn_ie_len == 0) {
|
||||||
wpa_printf(MSG_DEBUG, " skip - no WPA/RSN IE");
|
wpa_printf(MSG_DEBUG, " skip - no WPA/RSN IE");
|
||||||
continue;
|
continue;
|
||||||
|
@ -517,6 +522,11 @@ wpa_supplicant_select_bss_non_wpa(struct wpa_supplicant *wpa_s,
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ssid_len == 0) {
|
||||||
|
wpa_printf(MSG_DEBUG, " skip - SSID not known");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
for (ssid = group; ssid; ssid = ssid->pnext) {
|
for (ssid = group; ssid; ssid = ssid->pnext) {
|
||||||
int check_ssid = ssid->ssid_len != 0;
|
int check_ssid = ssid->ssid_len != 0;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue