From 706e11a485cef327c4de884664b8e72c8a1e6913 Mon Sep 17 00:00:00 2001 From: Arik Nemtsov Date: Thu, 10 Dec 2015 12:56:04 +0200 Subject: [PATCH] Avoid network selection from scan during connection If scan results arrive during the connection process, the network selection function was called, interrupting the current connection. While a regular scan is mutually exclusive with connection establishment via the nature of radio work, there's no such protection for scheduled scan. Prevent network selection while a connection is in progress. Signed-off-by: Arik Nemtsov --- wpa_supplicant/events.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c index 3ca4c3f6a..a7b053d6c 100644 --- a/wpa_supplicant/events.c +++ b/wpa_supplicant/events.c @@ -1518,6 +1518,10 @@ static int _wpa_supplicant_event_scan_results(struct wpa_supplicant *wpa_s, wpas_wps_update_ap_info(wpa_s, scan_res); + if (wpa_s->wpa_state >= WPA_AUTHENTICATING && + wpa_s->wpa_state < WPA_COMPLETED) + goto scan_work_done; + wpa_scan_results_free(scan_res); if (own_request && wpa_s->scan_work) {