From: Avraham Stern Date: Mon, 16 Mar 2015 05:20:01 +0000 (-0400) Subject: Don't optimize scan frequencies if selected network has changed X-Git-Tag: hostap_2_5~936 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=701f3961e3781960ec2dff168a44e167e1dae292;p=thirdparty%2Fhostap.git Don't optimize scan frequencies if selected network has changed When disconnecting from a BSS, the next scan is optimized to scan only the channels used by the connected ESS. But when disconnecting because a new network was selected, this optimization is wrong because wpa_supplicant is now trying to connect to another ESS. Fix this by not optimizing the scan frequencies in case the selected network has changed. Signed-off-by: Avraham Stern --- diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c index 19fb8900b..6e3b907d9 100644 --- a/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c @@ -2625,6 +2625,13 @@ void wpa_supplicant_select_network(struct wpa_supplicant *wpa_s, eapol_sm_notify_config(wpa_s->eapol, NULL, NULL); wpa_s->connect_without_scan = (ssid->mode == WPAS_MODE_MESH) ? ssid : NULL; + + /* + * Don't optimize next scan freqs since a new ESS has been + * selected. + */ + os_free(wpa_s->next_scan_freqs); + wpa_s->next_scan_freqs = NULL; } else { wpa_s->connect_without_scan = NULL; }