Patchwork wpa_supplicant: don't allow too short sched scan

login
register
mail settings
Submitter dvdspndl@gmail.com
Date March 7, 2013, 9:26 a.m.
Message ID <1362648370-3084-1-git-send-email-dvdspndl@gmail.com>
Download mbox | patch
Permalink /patch/225773/
State Accepted
Commit a09fc1ccf882ad4f300e38448734fd4d5400b532
Headers show

Comments

dvdspndl@gmail.com - March 7, 2013, 9:26 a.m.
From: David Spinadel <david.spinadel@intel.com>

In case that the ssid list is longer than max number of ssids,
ths scheduled scan aborted after timeout and rescheduled again
with shorter timeout and longer interval. In case that the timeout
is shorter than the interval, only one scan iteration will
be run. In this case, start again the initial times.

Signed-hostap: David Spinadel <david.spinadel@intel.com>
---
 wpa_supplicant/scan.c |    4 ++++
 1 file changed, 4 insertions(+)
Jouni Malinen - March 10, 2013, 3:29 p.m.
On Thu, Mar 07, 2013 at 11:26:10AM +0200, David Spinadel wrote:
> In case that the ssid list is longer than max number of ssids,
> ths scheduled scan aborted after timeout and rescheduled again
> with shorter timeout and longer interval. In case that the timeout
> is shorter than the interval, only one scan iteration will
> be run. In this case, start again the initial times.

Thanks, applied.

Patch

diff --git a/wpa_supplicant/scan.c b/wpa_supplicant/scan.c
index 0e45079..ce33d0c 100644
--- a/wpa_supplicant/scan.c
+++ b/wpa_supplicant/scan.c
@@ -1118,6 +1118,10 @@  scan:
 		wpa_s->first_sched_scan = 0;
 		wpa_s->sched_scan_timeout /= 2;
 		wpa_s->sched_scan_interval *= 2;
+		if (wpa_s->sched_scan_timeout < wpa_s->sched_scan_interval) {
+			wpa_s->sched_scan_interval = 10;
+			wpa_s->sched_scan_timeout = max_sched_scan_ssids * 2;
+		}
 	}
 
 	/* If there is no more ssids, start next time from the beginning */