aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Shmidt <dimitrysh@google.com>2011-08-16 11:52:06 -0700
committerDmitry Shmidt <dimitrysh@google.com>2011-08-16 11:52:06 -0700
commit114c3866dda61e84385bb5327f0acf727f2156da (patch)
tree0970ccdcdcc9c1607c27aa184185c8d5ba9ff93f
parent1d43124e4581c52ccca203196d584a4c0772967f (diff)
downloadwpa_supplicant_8-114c3866dda61e84385bb5327f0acf727f2156da.tar.gz
Prevent ap_scan change during association
Change-Id: Ibb13f40b2732a4e6749f40da4a6cf14080b54d73 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
-rw-r--r--wpa_supplicant/wpa_supplicant.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c
index f2ef4cc1..a1e54565 100644
--- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c
@@ -1653,6 +1653,15 @@ int wpa_supplicant_set_ap_scan(struct wpa_supplicant *wpa_s, int ap_scan)
if (ap_scan < 0 || ap_scan > 2)
return -1;
+#ifdef ANDROID
+ if ((ap_scan == 2) && ((wpa_s->wpa_state >= WPA_ASSOCIATING) &&
+ (wpa_s->wpa_state < WPA_COMPLETED))) {
+ wpa_printf(MSG_ERROR, "ap_scan = %d (%d)",wpa_s->conf->ap_scan,
+ ap_scan);
+ return 0;
+ }
+#endif
+
old_ap_scan = wpa_s->conf->ap_scan;
wpa_s->conf->ap_scan = ap_scan;