aboutsummaryrefslogtreecommitdiffstats
path: root/wpa_supplicant
diff options
context:
space:
mode:
authorJouni Malinen <j@w1.fi>2013-12-26 17:00:48 (GMT)
committerJouni Malinen <j@w1.fi>2013-12-26 18:50:28 (GMT)
commit015af91fea2ec780cb44914bfc0cbc39932cf60d (patch)
treef57d4d85168bc26f089d484eed24a6c9bc12e27e /wpa_supplicant
parentcf9189b94ca30cd1e0e753cade23f790fec15d90 (diff)
downloadhostap-015af91fea2ec780cb44914bfc0cbc39932cf60d.zip
hostap-015af91fea2ec780cb44914bfc0cbc39932cf60d.tar.gz
hostap-015af91fea2ec780cb44914bfc0cbc39932cf60d.tar.bz2
Do not use results from externally requested scan for network selection
It may not always be desirable to trigger reassociation or network change based on scan results from externally to wpa_supplicant trigger scan operations. Skip network selection and roaming determination if the received scan result is known to be triggered by something external to wpa_supplicant. The control interface SCAN command can be used to request wpa_supplicant to determine the best network. Signed-hostap: Jouni Malinen <j@w1.fi>
Diffstat (limited to 'wpa_supplicant')
-rw-r--r--wpa_supplicant/events.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c
index 308e82e..062c696 100644
--- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c
@@ -1279,6 +1279,12 @@ static int _wpa_supplicant_event_scan_results(struct wpa_supplicant *wpa_s,
wpas_notify_scan_done(wpa_s, 1);
+ if (!wpa_s->own_scan_running && wpa_s->external_scan_running) {
+ wpa_dbg(wpa_s, MSG_DEBUG, "Do not use results from externally requested scan operation for network selection");
+ wpa_scan_results_free(scan_res);
+ return 0;
+ }
+
if (sme_proc_obss_scan(wpa_s) > 0) {
wpa_scan_results_free(scan_res);
return 0;