diff options
-rw-r--r-- | package/wpa_supplicant/Makefile | 4 | ||||
-rw-r--r-- | package/wpa_supplicant/patches/110-roaming.patch | 6 | ||||
-rw-r--r-- | package/wpa_supplicant/patches/130-scanning.patch | 36 |
3 files changed, 32 insertions, 14 deletions
diff --git a/package/wpa_supplicant/Makefile b/package/wpa_supplicant/Makefile index 8572a49..6d14140 100644 --- a/package/wpa_supplicant/Makefile +++ b/package/wpa_supplicant/Makefile @@ -9,9 +9,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wpa_supplicant -PKG_VERSION:=0.6.7 +PKG_VERSION:=0.6.8 PKG_RELEASE:=1 -PKG_MD5SUM:=b61f6e94b63f92173f4286b5e6a84140 +PKG_MD5SUM:=e933332490e0e5acfef2279457f1070a PKG_SOURCE_URL:=http://hostap.epitest.fi/releases PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz diff --git a/package/wpa_supplicant/patches/110-roaming.patch b/package/wpa_supplicant/patches/110-roaming.patch index e223ee7..9e54eb5 100644 --- a/package/wpa_supplicant/patches/110-roaming.patch +++ b/package/wpa_supplicant/patches/110-roaming.patch @@ -1,7 +1,7 @@ This patch decreases the timeouts for assoc/auth to more realistic values. Improves roaming speed --- a/wpa_supplicant/events.c +++ b/wpa_supplicant/events.c -@@ -846,7 +846,7 @@ static void wpa_supplicant_event_assoc(s +@@ -849,7 +849,7 @@ static void wpa_supplicant_event_assoc(s wpa_supplicant_set_state(wpa_s, WPA_COMPLETED); } else if (!ft_completed) { /* Timeout for receiving the first EAPOL packet */ @@ -26,9 +26,9 @@ This patch decreases the timeouts for assoc/auth to more realistic values. Impro wpa_printf(MSG_WARNING, "Failed to initiate AP scan."); - wpa_supplicant_req_scan(wpa_s, 10, 0); + wpa_supplicant_req_scan(wpa_s, 3, 0); - } + } else + wpa_s->scan_runs++; } - --- a/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c @@ -1160,10 +1160,10 @@ void wpa_supplicant_associate(struct wpa diff --git a/package/wpa_supplicant/patches/130-scanning.patch b/package/wpa_supplicant/patches/130-scanning.patch index 1f8cb45..4c95bb9 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); |