summaryrefslogtreecommitdiffstats
path: root/wifi
diff options
context:
space:
mode:
authorArik Nemtsov <arik@wizery.com>2012-08-22 16:27:15 -0500
committerVishal Mahaveer <vishalm@ti.com>2012-08-22 16:29:43 -0500
commit5770b2dcf6f28f1ea44146d5eb8c8a6b9cfc3fce (patch)
tree56828c3f9f838fe48a6aab8605de0031a92aa370 /wifi
parent9f7fa4c4177c405566445760ec7f4c27e812cd7f (diff)
downloadframeworks_base-5770b2dcf6f28f1ea44146d5eb8c8a6b9cfc3fce.zip
frameworks_base-5770b2dcf6f28f1ea44146d5eb8c8a6b9cfc3fce.tar.gz
frameworks_base-5770b2dcf6f28f1ea44146d5eb8c8a6b9cfc3fce.tar.bz2
WifiStateMachine: ignore auth-fail event during WPS connection
Disregard auth failure events during WPS connection. The EAP sequence is retried several times, and there might be failures (especially for wps pin). We will get a WPS_XXX event at the end of the sequence anyway. Without this change, the SupplicantStateTracker class will disable the WPS network we are connecting to after 2 failed authentication events. Then, even if WPS succeeds, we will never connect to the selected network. Change-Id: I57c8e508bfd738405b7f2c2c2325df7838e1b4af Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Vishal Mahaveer <vishalm@ti.com>
Diffstat (limited to 'wifi')
-rw-r--r--wifi/java/android/net/wifi/WifiStateMachine.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/wifi/java/android/net/wifi/WifiStateMachine.java b/wifi/java/android/net/wifi/WifiStateMachine.java
index bb09704..78c4b6c 100644
--- a/wifi/java/android/net/wifi/WifiStateMachine.java
+++ b/wifi/java/android/net/wifi/WifiStateMachine.java
@@ -3535,6 +3535,13 @@ public class WifiStateMachine extends StateMachine {
if (DBG) log("Network connection lost");
handleNetworkDisconnect();
break;
+ case WifiMonitor.AUTHENTICATION_FAILURE_EVENT:
+ // Disregard auth failure events during WPS connection. The
+ // EAP sequence is retried several times, and there might be
+ // failures (especially for wps pin). We will get a WPS_XXX
+ // event at the end of the sequence anyway.
+ if (DBG) log("Ignore auth failure during WPS connection");
+ break;
case WifiMonitor.SUPPLICANT_STATE_CHANGE_EVENT:
//Throw away supplicant state changes when WPS is running.
//We will start getting supplicant state changes once we get