diff --git a/keystore/java/android/security/KeyStore.java b/keystore/java/android/security/KeyStore.java index 9dd2b0d455af3..4b69317448216 100644 --- a/keystore/java/android/security/KeyStore.java +++ b/keystore/java/android/security/KeyStore.java @@ -74,6 +74,10 @@ public class KeyStore { } } + public boolean isUnlocked() { + return state() == State.UNLOCKED; + } + public byte[] get(String key) { try { return mBinder.get(key); diff --git a/keystore/tests/src/android/security/AndroidKeyPairGeneratorTest.java b/keystore/tests/src/android/security/AndroidKeyPairGeneratorTest.java index d108caaaa5041..cd031b479f92e 100644 --- a/keystore/tests/src/android/security/AndroidKeyPairGeneratorTest.java +++ b/keystore/tests/src/android/security/AndroidKeyPairGeneratorTest.java @@ -62,11 +62,10 @@ public class AndroidKeyPairGeneratorTest extends AndroidTestCase { assertTrue(mAndroidKeyStore.reset()); - assertEquals(android.security.KeyStore.State.UNINITIALIZED, mAndroidKeyStore.state()); + assertFalse(mAndroidKeyStore.isUnlocked()); assertTrue(mAndroidKeyStore.password("1111")); - - assertEquals(android.security.KeyStore.State.UNLOCKED, mAndroidKeyStore.state()); + assertTrue(mAndroidKeyStore.isUnlocked()); assertEquals(0, mAndroidKeyStore.saw("").length); diff --git a/keystore/tests/src/android/security/AndroidKeyStoreTest.java b/keystore/tests/src/android/security/AndroidKeyStoreTest.java index c376f3da248d0..8928e065945a1 100644 --- a/keystore/tests/src/android/security/AndroidKeyStoreTest.java +++ b/keystore/tests/src/android/security/AndroidKeyStoreTest.java @@ -467,12 +467,10 @@ public class AndroidKeyStoreTest extends AndroidTestCase { mAndroidKeyStore = android.security.KeyStore.getInstance(); assertTrue(mAndroidKeyStore.reset()); - - assertEquals(android.security.KeyStore.State.UNINITIALIZED, mAndroidKeyStore.state()); + assertFalse(mAndroidKeyStore.isUnlocked()); assertTrue(mAndroidKeyStore.password("1111")); - - assertEquals(android.security.KeyStore.State.UNLOCKED, mAndroidKeyStore.state()); + assertTrue(mAndroidKeyStore.isUnlocked()); assertEquals(0, mAndroidKeyStore.saw("").length); diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java index e3a3ca2083204..c31cde7094246 100644 --- a/services/java/com/android/server/ConnectivityService.java +++ b/services/java/com/android/server/ConnectivityService.java @@ -3341,7 +3341,7 @@ public class ConnectivityService extends IConnectivityManager.Stub { // Tear down existing lockdown if profile was removed mLockdownEnabled = LockdownVpnTracker.isEnabled(); if (mLockdownEnabled) { - if (mKeyStore.state() != KeyStore.State.UNLOCKED) { + if (!mKeyStore.isUnlocked()) { Slog.w(TAG, "KeyStore locked; unable to create LockdownTracker"); return false; } diff --git a/services/java/com/android/server/connectivity/Vpn.java b/services/java/com/android/server/connectivity/Vpn.java index bb19cc717e8d1..bb7334a1a1170 100644 --- a/services/java/com/android/server/connectivity/Vpn.java +++ b/services/java/com/android/server/connectivity/Vpn.java @@ -462,7 +462,7 @@ public class Vpn extends BaseNetworkStateTracker { * secondary thread to perform connection work, returning quickly. */ public void startLegacyVpn(VpnProfile profile, KeyStore keyStore, LinkProperties egress) { - if (keyStore.state() != KeyStore.State.UNLOCKED) { + if (!keyStore.isUnlocked()) { throw new IllegalStateException("KeyStore isn't unlocked"); }