summaryrefslogtreecommitdiff
path: root/service
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2020-02-20 03:42:38 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-02-20 03:42:38 +0000
commitdce50144a7b86a0de60d7710c84143b652abc8e8 (patch)
tree01d1adee84da55a604e07981024b546a9584dd33 /service
parentaf197b6e13b8e772b092207e6d347cf24ba09172 (diff)
parent6bca7203cb13a607ea6432afae69d9ee17aa3bc0 (diff)
Merge changes I64036073,I3cf7c9bd
* changes: [Passpoint] Log BSSID of the AP on ANQP response [Passpoint] Clear ANQP cache and requests during factory reset
Diffstat (limited to 'service')
-rw-r--r--service/java/com/android/server/wifi/WifiServiceImpl.java1
-rw-r--r--service/java/com/android/server/wifi/hotspot2/ANQPRequestManager.java8
-rw-r--r--service/java/com/android/server/wifi/hotspot2/AnqpCache.java8
-rw-r--r--service/java/com/android/server/wifi/hotspot2/PasspointManager.java12
4 files changed, 29 insertions, 0 deletions
diff --git a/service/java/com/android/server/wifi/WifiServiceImpl.java b/service/java/com/android/server/wifi/WifiServiceImpl.java
index 4485b722a..e278c125e 100644
--- a/service/java/com/android/server/wifi/WifiServiceImpl.java
+++ b/service/java/com/android/server/wifi/WifiServiceImpl.java
@@ -3345,6 +3345,7 @@ public class WifiServiceImpl extends BaseWifiService {
removePasspointConfigurationInternal(null, config.getUniqueId());
}
mWifiThreadRunner.post(() -> {
+ mPasspointManager.clearAnqpRequestsAndFlushCache();
mWifiConfigManager.clearDeletedEphemeralNetworks();
mClientModeImpl.clearNetworkRequestUserApprovedAccessPoints();
mWifiNetworkSuggestionsManager.clear();
diff --git a/service/java/com/android/server/wifi/hotspot2/ANQPRequestManager.java b/service/java/com/android/server/wifi/hotspot2/ANQPRequestManager.java
index 1fc47e03a..2634fa820 100644
--- a/service/java/com/android/server/wifi/hotspot2/ANQPRequestManager.java
+++ b/service/java/com/android/server/wifi/hotspot2/ANQPRequestManager.java
@@ -234,4 +234,12 @@ public class ANQPRequestManager {
}
pw.println("ANQPRequestManager - End ---");
}
+
+ /**
+ * Clear all pending ANQP requests
+ */
+ public void clear() {
+ mPendingQueries.clear();
+ mHoldOffInfo.clear();
+ }
}
diff --git a/service/java/com/android/server/wifi/hotspot2/AnqpCache.java b/service/java/com/android/server/wifi/hotspot2/AnqpCache.java
index 215f6a354..9a3a1fb00 100644
--- a/service/java/com/android/server/wifi/hotspot2/AnqpCache.java
+++ b/service/java/com/android/server/wifi/hotspot2/AnqpCache.java
@@ -100,4 +100,12 @@ public class AnqpCache {
out.println(entry.getKey() + ": " + entry.getValue());
}
}
+
+ /**
+ * Flush the ANQP cache
+ */
+ public void flush() {
+ mANQPCache.clear();
+ mLastSweep = mClock.getElapsedSinceBootMillis();
+ }
}
diff --git a/service/java/com/android/server/wifi/hotspot2/PasspointManager.java b/service/java/com/android/server/wifi/hotspot2/PasspointManager.java
index 0c80a9721..d3e405b1d 100644
--- a/service/java/com/android/server/wifi/hotspot2/PasspointManager.java
+++ b/service/java/com/android/server/wifi/hotspot2/PasspointManager.java
@@ -137,6 +137,10 @@ public class PasspointManager {
@Override
public void onANQPResponse(long bssid,
Map<Constants.ANQPElementType, ANQPElement> anqpElements) {
+ if (mVerboseLoggingEnabled) {
+ Log.d(TAG, "ANQP response received from BSSID "
+ + Utils.macToString(bssid));
+ }
// Notify request manager for the completion of a request.
ANQPNetworkKey anqpKey =
mAnqpRequestManager.onRequestCompleted(bssid, anqpElements != null);
@@ -1215,4 +1219,12 @@ public class PasspointManager {
public boolean isProvidersListEmpty() {
return mProviders.isEmpty();
}
+
+ /**
+ * Clear ANQP requests and flush ANQP Cache (for factory reset)
+ */
+ public void clearAnqpRequestsAndFlushCache() {
+ mAnqpRequestManager.clear();
+ mAnqpCache.flush();
+ }
}