]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Getting back to DISCONNECTED afer SCANNING
authorSamuel Ortiz <sameo@linux.intel.com>
Mon, 14 Sep 2009 14:25:03 +0000 (17:25 +0300)
committerJouni Malinen <j@w1.fi>
Mon, 14 Sep 2009 14:25:03 +0000 (17:25 +0300)
After transitioning from DISCONNECTED to SCANNING, we never go back
to DISCONNECTED even though scanning is done or failed.
We're thus stuck in SCANNING while scanning is actually done.

wpa_supplicant/events.c
wpa_supplicant/scan.c

index 7c98f53445ac843e410837430343db216deb0686..03d0e1fde24b527d8487581024f0f132dfc94405 100644 (file)
@@ -650,10 +650,14 @@ static void wpa_supplicant_event_scan_results(struct wpa_supplicant *wpa_s)
 
        wpas_notify_scan_done(wpa_s, 1);
 
-       if ((wpa_s->conf->ap_scan == 2 && !wpas_wps_searching(wpa_s)) ||
-           wpa_s->disconnected)
+       if ((wpa_s->conf->ap_scan == 2 && !wpas_wps_searching(wpa_s)))
                return;
 
+       if (wpa_s->disconnected) {
+               wpa_supplicant_set_state(wpa_s, WPA_DISCONNECTED);
+               return;
+       }
+
        while (selected == NULL) {
                for (prio = 0; prio < wpa_s->conf->num_prio; prio++) {
                        selected = wpa_supplicant_select_bss(
index 10eb525bb169547d46e7ac2f979799ae1f62525c..e122e670d3613ba4b80411aa1c4d76e8b0d770d2 100644 (file)
@@ -191,8 +191,10 @@ static void wpa_supplicant_scan(void *eloop_ctx, void *timeout_ctx)
        struct wpa_driver_scan_params params;
        size_t max_ssids;
 
-       if (wpa_s->disconnected && !wpa_s->scan_req)
+       if (wpa_s->disconnected && !wpa_s->scan_req) {
+               wpa_supplicant_set_state(wpa_s, WPA_DISCONNECTED);
                return;
+       }
 
        if (!wpa_supplicant_enabled_networks(wpa_s->conf) &&
            !wpa_s->scan_req) {