Do not allow network block scan_freq override SCAN command frequencies
authorJouni Malinen <j@w1.fi>
Sun, 14 Dec 2014 22:55:56 +0000 (00:55 +0200)
committerJouni Malinen <j@w1.fi>
Sun, 14 Dec 2014 22:55:56 +0000 (00:55 +0200)
The manual scan operations with the SCAN command are supposed to have
independent set of scan frequencies, so do not allow scan_freq
parameters to override scanned frequencies for scans that were triggered
with a SCAN command.

Signed-off-by: Jouni Malinen <j@w1.fi>
wpa_supplicant/scan.c

index 9db85b9..6f4ea08 100644 (file)
@@ -816,7 +816,9 @@ static void wpa_supplicant_scan(void *eloop_ctx, void *timeout_ctx)
                    wpa_s->last_scan_req == MANUAL_SCAN_REQ)
                        wpa_set_scan_ssids(wpa_s, &params, max_ssids);
 
-               for (tssid = wpa_s->conf->ssid; tssid; tssid = tssid->next) {
+               for (tssid = wpa_s->conf->ssid;
+                    wpa_s->last_scan_req != MANUAL_SCAN_REQ && tssid;
+                    tssid = tssid->next) {
                        if (wpas_network_disabled(wpa_s, tssid))
                                continue;
                        if ((params.freqs || !freqs_set) && tssid->scan_freq) {