summaryrefslogtreecommitdiffstats
path: root/wifi/java/android/net/wifi/WifiConfiguration.java
diff options
context:
space:
mode:
authorvandwalle <vandwalle@google.com>2015-01-29 05:00:44 +0000
committerandroid-build-merger <android-build-merger@google.com>2015-01-29 05:00:44 +0000
commit7e553a06a0506529563c6a0920e0de2a0d48cedc (patch)
tree65545d30113dc5e9d99ebe5eea615ac1ecd96443 /wifi/java/android/net/wifi/WifiConfiguration.java
parentcf8ae79ef28b8e25ab67638ee1c86abe6bf06c6b (diff)
parent0a22d43c9143475c889ce54f0de6261e8857ab9d (diff)
downloadframeworks_base-7e553a06a0506529563c6a0920e0de2a0d48cedc.zip
frameworks_base-7e553a06a0506529563c6a0920e0de2a0d48cedc.tar.gz
frameworks_base-7e553a06a0506529563c6a0920e0de2a0d48cedc.tar.bz2
Merge "aggressively blacklist WifiConfiguration for the purpose of switching network" into lmp-mr1-dev automerge: d169839
automerge: 0a22d43 * commit '0a22d43c9143475c889ce54f0de6261e8857ab9d': aggressively blacklist WifiConfiguration for the purpose of switching network
Diffstat (limited to 'wifi/java/android/net/wifi/WifiConfiguration.java')
-rw-r--r--wifi/java/android/net/wifi/WifiConfiguration.java46
1 files changed, 46 insertions, 0 deletions
diff --git a/wifi/java/android/net/wifi/WifiConfiguration.java b/wifi/java/android/net/wifi/WifiConfiguration.java
index 6543c03..87db951 100644
--- a/wifi/java/android/net/wifi/WifiConfiguration.java
+++ b/wifi/java/android/net/wifi/WifiConfiguration.java
@@ -688,6 +688,31 @@ public class WifiConfiguration implements Parcelable {
/**
* @hide
+ * Last time the system tried to roam and failed because of authentication failure or DHCP
+ * RENEW failure.
+ */
+ public long lastRoamingFailure;
+
+ /** @hide */
+ public static int ROAMING_FAILURE_IP_CONFIG = 1;
+ /** @hide */
+ public static int ROAMING_FAILURE_AUTH_FAILURE = 2;
+
+ /**
+ * @hide
+ * Initial amount of time this Wifi configuration gets blacklisted for network switching
+ * because of roaming failure
+ */
+ public long roamingFailureBlackListTimeMilli = 1000;
+
+ /**
+ * @hide
+ * Last roaming failure reason code
+ */
+ public int lastRoamingFailureReason;
+
+ /**
+ * @hide
* Last time the system was disconnected to this configuration.
*/
public long lastDisconnected;
@@ -1148,6 +1173,18 @@ public class WifiConfiguration implements Parcelable {
sbuf.append( "sec");
}
}
+ if (this.lastRoamingFailure != 0) {
+ sbuf.append('\n');
+ long diff = now_ms - this.lastRoamingFailure;
+ if (diff <= 0) {
+ sbuf.append("lastRoamingFailure since <incorrect>");
+ } else {
+ sbuf.append("lastRoamingFailure: ").append(Long.toString(diff/1000));
+ sbuf.append( "sec");
+ }
+ }
+ sbuf.append("roamingFailureBlackListTimeMilli: ").
+ append(Long.toString(this.roamingFailureBlackListTimeMilli));
sbuf.append('\n');
if (this.linkedConfigurations != null) {
for(String key : this.linkedConfigurations.keySet()) {
@@ -1518,6 +1555,9 @@ public class WifiConfiguration implements Parcelable {
lastConnected = source.lastConnected;
lastDisconnected = source.lastDisconnected;
lastConnectionFailure = source.lastConnectionFailure;
+ lastRoamingFailure = source.lastRoamingFailure;
+ lastRoamingFailureReason = source.lastRoamingFailureReason;
+ roamingFailureBlackListTimeMilli = source.roamingFailureBlackListTimeMilli;
numConnectionFailures = source.numConnectionFailures;
numIpConfigFailures = source.numIpConfigFailures;
numAuthFailures = source.numAuthFailures;
@@ -1587,6 +1627,9 @@ public class WifiConfiguration implements Parcelable {
dest.writeInt(lastUpdateUid);
dest.writeLong(blackListTimestamp);
dest.writeLong(lastConnectionFailure);
+ dest.writeLong(lastRoamingFailure);
+ dest.writeInt(lastRoamingFailureReason);
+ dest.writeLong(roamingFailureBlackListTimeMilli);
dest.writeInt(numConnectionFailures);
dest.writeInt(numIpConfigFailures);
dest.writeInt(numAuthFailures);
@@ -1649,6 +1692,9 @@ public class WifiConfiguration implements Parcelable {
config.lastUpdateUid = in.readInt();
config.blackListTimestamp = in.readLong();
config.lastConnectionFailure = in.readLong();
+ config.lastRoamingFailure = in.readLong();
+ config.lastRoamingFailureReason = in.readInt();
+ config.roamingFailureBlackListTimeMilli = in.readLong();
config.numConnectionFailures = in.readInt();
config.numIpConfigFailures = in.readInt();
config.numAuthFailures = in.readInt();