aboutsummaryrefslogtreecommitdiffstats
path: root/wpa_supplicant/scan.c
diff options
context:
space:
mode:
authorVishal Mahaveer <vishalm@ti.com>2012-12-11 10:28:54 -0600
committerVishal Mahaveer <vishalm@ti.com>2012-12-11 10:28:54 -0600
commit68bd90b2df35d0854416f4f8bb79c5fc073237fa (patch)
treed9f566e78fcb1efd93740a0cdc7dc7bbd01fe713 /wpa_supplicant/scan.c
parent0613a964c52b31d6763fd30dd45521314f3a2429 (diff)
parent4e1835b2ccb4698e8e7022522928317d219bca32 (diff)
downloadexternal_wpa_supplicant_8_ti-68bd90b2df35d0854416f4f8bb79c5fc073237fa.zip
external_wpa_supplicant_8_ti-68bd90b2df35d0854416f4f8bb79c5fc073237fa.tar.gz
external_wpa_supplicant_8_ti-68bd90b2df35d0854416f4f8bb79c5fc073237fa.tar.bz2
Merge commit 'ol_r8.a5.06' into p-jb-mr1-release
Conflicts: wpa_supplicant/wpa_supplicant_template.conf Change-Id: Ifb38077650e8bb6075a17b8f2232f14b704281f1 Signed-off-by: Vishal Mahaveer <vishalm@ti.com>
Diffstat (limited to 'wpa_supplicant/scan.c')
-rw-r--r--wpa_supplicant/scan.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/wpa_supplicant/scan.c b/wpa_supplicant/scan.c
index 6b43968..887c747 100644
--- a/wpa_supplicant/scan.c
+++ b/wpa_supplicant/scan.c
@@ -66,7 +66,8 @@ static int wpas_wps_in_use(struct wpa_supplicant *wpa_s,
}
#ifdef CONFIG_P2P
- if (wpas_p2p_non_idle(wpa_s)) {
+ if (!wpa_s->global->p2p_disabled && wpa_s->global->p2p &&
+ !wpa_s->conf->p2p_disabled) {
wpa_s->wps->dev.p2p = 1;
if (!wps) {
wps = 1;
@@ -798,6 +799,9 @@ int wpa_supplicant_delayed_sched_scan(struct wpa_supplicant *wpa_s,
if (!wpa_s->sched_scan_supported)
return -1;
+ eloop_cancel_timeout(wpa_supplicant_delayed_sched_scan_timeout,
+ wpa_s, NULL);
+
eloop_register_timeout(sec, usec,
wpa_supplicant_delayed_sched_scan_timeout,
wpa_s, NULL);
@@ -887,6 +891,7 @@ int wpa_supplicant_req_sched_scan(struct wpa_supplicant *wpa_s)
need_ssids++;
if (wpa_s->normal_scans < 3 &&
+ wpa_s->max_scan_ssids > 1 &&
(need_ssids <= wpa_s->max_scan_ssids ||
wpa_s->max_scan_ssids >= (int) max_sched_scan_ssids)) {
/*
@@ -895,6 +900,10 @@ int wpa_supplicant_req_sched_scan(struct wpa_supplicant *wpa_s)
* user space sleep more. We do this only if the normal scan
* has functionality that is suitable for this or if the
* sched_scan does not have better support for multiple SSIDs.
+ * max_scan_ssids=1 is a special case where we'd like to avoid
+ * using normal scan as wpa_supplicant_scan handles this case
+ * differently and doesn't add a wildcard SSID so broadcast scan
+ * results would be delayed.
*/
wpa_dbg(wpa_s, MSG_DEBUG, "Use normal scan instead of "
"sched_scan for initial scans (normal_scans=%d)",