Merge "WifiConfiguration: Add a method to check if keymgmt needs preShareKey" into rvc-dev am: 507bbaeb9b

Change-Id: I2b04d1e0599cbddca39c6e6704d7d4103ddcd52c
This commit is contained in:
TreeHugger Robot
2020-04-11 06:17:13 +00:00
committed by Automerger Merge Worker
2 changed files with 41 additions and 0 deletions

View File

@@ -2973,4 +2973,15 @@ public class WifiConfiguration implements Parcelable {
*/
public boolean isMostRecentlyConnected = false;
/**
* Whether the key mgmt indicates if the WifiConfiguration needs a preSharedKey or not.
* @return true if preSharedKey is needed, false otherwise.
* @hide
*/
public boolean needsPreSharedKey() {
return allowedKeyManagement.get(KeyMgmt.WPA_PSK)
|| allowedKeyManagement.get(KeyMgmt.SAE)
|| allowedKeyManagement.get(KeyMgmt.WAPI_PSK);
}
}

View File

@@ -16,9 +16,13 @@
package android.net.wifi;
import static android.net.wifi.WifiConfiguration.SECURITY_TYPE_EAP;
import static android.net.wifi.WifiConfiguration.SECURITY_TYPE_EAP_SUITE_B;
import static android.net.wifi.WifiConfiguration.SECURITY_TYPE_OPEN;
import static android.net.wifi.WifiConfiguration.SECURITY_TYPE_OWE;
import static android.net.wifi.WifiConfiguration.SECURITY_TYPE_PSK;
import static android.net.wifi.WifiConfiguration.SECURITY_TYPE_SAE;
import static android.net.wifi.WifiConfiguration.SECURITY_TYPE_WAPI_PSK;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
@@ -507,4 +511,30 @@ public class WifiConfigurationTest {
assertEquals(NetworkSelectionStatus.NETWORK_SELECTION_PERMANENTLY_DISABLED,
status2.getNetworkSelectionStatus());
}
@Test
public void testNeedsPreSharedKey() throws Exception {
WifiConfiguration configuration = new WifiConfiguration();
configuration.setSecurityParams(SECURITY_TYPE_PSK);
assertTrue(configuration.needsPreSharedKey());
configuration.setSecurityParams(SECURITY_TYPE_SAE);
assertTrue(configuration.needsPreSharedKey());
configuration.setSecurityParams(SECURITY_TYPE_WAPI_PSK);
assertTrue(configuration.needsPreSharedKey());
configuration.setSecurityParams(SECURITY_TYPE_OPEN);
assertFalse(configuration.needsPreSharedKey());
configuration.setSecurityParams(SECURITY_TYPE_OWE);
assertFalse(configuration.needsPreSharedKey());
configuration.setSecurityParams(SECURITY_TYPE_EAP);
assertFalse(configuration.needsPreSharedKey());
configuration.setSecurityParams(SECURITY_TYPE_EAP_SUITE_B);
assertFalse(configuration.needsPreSharedKey());
}
}