diff options
Diffstat (limited to 'package/wpa_supplicant/patches/130-scanning.patch')
-rw-r--r-- | package/wpa_supplicant/patches/130-scanning.patch | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/package/wpa_supplicant/patches/130-scanning.patch b/package/wpa_supplicant/patches/130-scanning.patch index 1f8cb4597e..4c95bb9f60 100644 --- a/package/wpa_supplicant/patches/130-scanning.patch +++ b/package/wpa_supplicant/patches/130-scanning.patch @@ -39,7 +39,7 @@ Add a scan result cache to improve roaming speed if the driver gave us a backgro { INT(fast_reauth) }, #ifdef EAP_TLS_OPENSSL { STR(opensc_engine_path) }, -@@ -834,6 +842,8 @@ static void wpa_config_write_global(FILE +@@ -835,6 +843,8 @@ static void wpa_config_write_global(FILE fprintf(f, "eapol_version=%d\n", config->eapol_version); if (config->ap_scan != DEFAULT_AP_SCAN) fprintf(f, "ap_scan=%d\n", config->ap_scan); @@ -50,7 +50,25 @@ Add a scan result cache to improve roaming speed if the driver gave us a backgro #ifdef EAP_TLS_OPENSSL --- a/wpa_supplicant/events.c +++ b/wpa_supplicant/events.c -@@ -633,6 +633,9 @@ static void wpa_supplicant_event_scan_re +@@ -536,7 +536,7 @@ wpa_supplicant_select_bss_non_wpa(struct + "BSSID mismatch"); + continue; + } +- ++ + if (!(ssid->key_mgmt & WPA_KEY_MGMT_NONE) && + !(ssid->key_mgmt & WPA_KEY_MGMT_WPS) && + !(ssid->key_mgmt & WPA_KEY_MGMT_IEEE8021X_NO_WPA)) +@@ -546,7 +546,7 @@ wpa_supplicant_select_bss_non_wpa(struct + continue; + } + +- if ((ssid->key_mgmt & ++ if ((ssid->key_mgmt & + (WPA_KEY_MGMT_IEEE8021X | WPA_KEY_MGMT_PSK | + WPA_KEY_MGMT_FT_IEEE8021X | WPA_KEY_MGMT_FT_PSK | + WPA_KEY_MGMT_IEEE8021X_SHA256 | +@@ -635,6 +635,9 @@ static void wpa_supplicant_event_scan_re wpa_s->disconnected) return; @@ -60,15 +78,15 @@ Add a scan result cache to improve roaming speed if the driver gave us a backgro while (selected == NULL) { for (prio = 0; prio < wpa_s->conf->num_prio; prio++) { selected = wpa_supplicant_select_bss( -@@ -645,6 +648,7 @@ static void wpa_supplicant_event_scan_re +@@ -647,6 +650,7 @@ static void wpa_supplicant_event_scan_re wpa_printf(MSG_DEBUG, "No APs found - clear blacklist " "and try again"); wpa_blacklist_clear(wpa_s); -+ memset(&wpa_s->last_scan_results, 0, sizeof(wpa_s->last_scan_results)); ++ memset(&wpa_s->last_scan_results, 0, sizeof(wpa_s->last_scan_results)); + wpa_s->blacklist_cleared++; } else if (selected == NULL) { break; - } -@@ -679,10 +683,12 @@ static void wpa_supplicant_event_scan_re +@@ -682,10 +686,12 @@ static void wpa_supplicant_event_scan_re rsn_preauth_scan_results(wpa_s->wpa, wpa_s->scan_res); } else { wpa_printf(MSG_DEBUG, "No suitable AP found."); @@ -82,7 +100,7 @@ Add a scan result cache to improve roaming speed if the driver gave us a backgro return; req_scan: -@@ -886,6 +892,9 @@ static void wpa_supplicant_event_disasso +@@ -889,6 +895,9 @@ static void wpa_supplicant_event_disasso } if (wpa_s->wpa_state >= WPA_ASSOCIATED) wpa_supplicant_req_scan(wpa_s, 0, 100000); @@ -94,7 +112,7 @@ Add a scan result cache to improve roaming speed if the driver gave us a backgro bssid = wpa_s->pending_bssid; --- a/wpa_supplicant/wpa_supplicant_i.h +++ b/wpa_supplicant/wpa_supplicant_i.h -@@ -349,6 +349,7 @@ struct wpa_supplicant { +@@ -350,6 +350,7 @@ struct wpa_supplicant { struct wpa_client_mlme mlme; int use_client_mlme; int driver_4way_handshake; @@ -102,7 +120,7 @@ Add a scan result cache to improve roaming speed if the driver gave us a backgro int pending_mic_error_report; int pending_mic_error_pairwise; -@@ -402,6 +403,7 @@ int wpa_supplicant_scard_init(struct wpa +@@ -405,6 +406,7 @@ int wpa_supplicant_scard_init(struct wpa /* scan.c */ void wpa_supplicant_req_scan(struct wpa_supplicant *wpa_s, int sec, int usec); |