diff options
author | Hai Shalom <haishalom@google.com> | 2019-01-09 10:26:22 -0800 |
---|---|---|
committer | Hai Shalom <haishalom@google.com> | 2019-01-09 12:38:32 -0800 |
commit | a5259414d71d955b23125e3a7ce61ab291c0670d (patch) | |
tree | 1152dd2eaccebb3765bf6a174b6713be94b146b4 /service/java/com/android/server/wifi/DppManager.java | |
parent | 0d00cdda8e56bfdf265c6d6c0dca3d568147f1b7 (diff) | |
download | android_frameworks_opt_net_wifi-a5259414d71d955b23125e3a7ce61ab291c0670d.tar.gz android_frameworks_opt_net_wifi-a5259414d71d955b23125e3a7ce61ab291c0670d.tar.bz2 android_frameworks_opt_net_wifi-a5259414d71d955b23125e3a7ce61ab291c0670d.zip |
[DPP] Handle DPP timeout event correctly
Handle DPP timeout event correctly. Terminate any pending initiator
request and clean up resources. Change the timeout from 30s to 40s to
allow better interoperability with low power devices.
Bug: 122593341
Test: act.py -c ../WifiDppConfig.json -tc WifiDppTest
Change-Id: Icb4d8879307ab8fada9860b302f3df2fdcd7da6b
Diffstat (limited to 'service/java/com/android/server/wifi/DppManager.java')
-rw-r--r-- | service/java/com/android/server/wifi/DppManager.java | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/service/java/com/android/server/wifi/DppManager.java b/service/java/com/android/server/wifi/DppManager.java index fabd23d96..0309b5c8e 100644 --- a/service/java/com/android/server/wifi/DppManager.java +++ b/service/java/com/android/server/wifi/DppManager.java @@ -56,7 +56,7 @@ public class DppManager { public WakeupMessage mDppTimeoutMessage = null; private final Clock mClock; private static final String DPP_TIMEOUT_TAG = TAG + " Request Timeout"; - private static final int DPP_TIMEOUT_MS = 30_000; // 30 seconds + private static final int DPP_TIMEOUT_MS = 40_000; // 40 seconds private final DppEventCallback mDppEventCallback = new DppEventCallback() { @Override @@ -121,6 +121,18 @@ public class DppManager { } private void timeoutDppRequest() { + logd("DPP timeout"); + + if (mDppRequestInfo == null) { + Log.e(TAG, "DPP timeout with no request info"); + return; + } + + // Clean up supplicant resources + if (!mWifiNative.stopDppInitiator(mClientIfaceName)) { + Log.e(TAG, "Failed to stop DPP Initiator"); + } + // Clean up resources and let the caller know about the timeout onFailure(DppFailureCode.TIMEOUT); } @@ -355,6 +367,7 @@ public class DppManager { } private void cleanupDppResources() { + logd("DPP clean up resources"); if (mDppRequestInfo == null) { return; } @@ -398,6 +411,8 @@ public class DppManager { private void onSuccessConfigReceived(WifiConfiguration newWifiConfiguration) { try { + logd("onSuccessConfigReceived"); + if (mDppRequestInfo != null) { NetworkUpdateResult networkUpdateResult = mWifiConfigManager .addOrUpdateNetwork(newWifiConfiguration, mDppRequestInfo.uid); @@ -429,6 +444,8 @@ public class DppManager { return; } + logd("onSuccess: " + dppStatusCode); + int dppSuccessCode; // Convert from HAL codes to WifiManager/user codes @@ -462,6 +479,8 @@ public class DppManager { return; } + logd("onProgress: " + dppStatusCode); + int dppProgressCode; // Convert from HAL codes to WifiManager/user codes @@ -495,6 +514,8 @@ public class DppManager { return; } + logd("OnFailure: " + dppStatusCode); + int dppFailureCode; // Convert from HAL codes to WifiManager/user codes |