diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2020-02-20 03:42:38 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-02-20 03:42:38 +0000 |
commit | dce50144a7b86a0de60d7710c84143b652abc8e8 (patch) | |
tree | 01d1adee84da55a604e07981024b546a9584dd33 /service | |
parent | af197b6e13b8e772b092207e6d347cf24ba09172 (diff) | |
parent | 6bca7203cb13a607ea6432afae69d9ee17aa3bc0 (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')
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(); + } } |