diff options
| -rw-r--r-- | services/core/java/com/android/server/am/UserController.java | 13 | ||||
| -rw-r--r-- | services/tests/servicestests/src/com/android/server/am/UserControllerTest.java | 23 |
2 files changed, 0 insertions, 36 deletions
diff --git a/services/core/java/com/android/server/am/UserController.java b/services/core/java/com/android/server/am/UserController.java index 31183cac50e1..143a1cf0e094 100644 --- a/services/core/java/com/android/server/am/UserController.java +++ b/services/core/java/com/android/server/am/UserController.java @@ -1641,13 +1641,6 @@ class UserController implements Handler.Callback { * PIN or pattern. */ private boolean maybeUnlockUser(final @UserIdInt int userId) { - if (mInjector.isFileEncryptedNativeOnly() && mLockPatternUtils.isSecure(userId)) { - // A token is needed, so don't bother trying to unlock without one. - // This keeps misleading error messages from being logged. - Slog.d(TAG, "Not unlocking user " + userId - + "'s CE storage yet because a credential token is needed"); - return false; - } // Try unlocking storage using empty token return unlockUserCleared(userId, null, null, null); } @@ -3108,11 +3101,5 @@ class UserController implements Handler.Callback { protected IStorageManager getStorageManager() { return IStorageManager.Stub.asInterface(ServiceManager.getService("mount")); } - - // This is needed because isFileEncryptedNativeOnly is a static method, - // but it needs to be mocked out in tests. - protected boolean isFileEncryptedNativeOnly() { - return StorageManager.isFileEncryptedNativeOnly(); - } } } diff --git a/services/tests/servicestests/src/com/android/server/am/UserControllerTest.java b/services/tests/servicestests/src/com/android/server/am/UserControllerTest.java index 5c8a7d25a25d..9ffb50176f0e 100644 --- a/services/tests/servicestests/src/com/android/server/am/UserControllerTest.java +++ b/services/tests/servicestests/src/com/android/server/am/UserControllerTest.java @@ -80,7 +80,6 @@ import android.util.Log; import androidx.test.filters.SmallTest; -import com.android.internal.widget.LockPatternUtils; import com.android.server.FgThread; import com.android.server.am.UserState.KeyEvictedCallback; import com.android.server.pm.UserManagerInternal; @@ -124,7 +123,6 @@ public class UserControllerTest { private static final long HANDLER_WAIT_TIME_MS = 100; private UserController mUserController; - private LockPatternUtils mLockPatternUtils; private TestInjector mInjector; private final HashMap<Integer, UserState> mUserStates = new HashMap<>(); @@ -163,13 +161,6 @@ public class UserControllerTest { doNothing().when(mInjector).activityManagerOnUserStopped(anyInt()); doNothing().when(mInjector).clearBroadcastQueueForUser(anyInt()); doNothing().when(mInjector).taskSupervisorRemoveUser(anyInt()); - - // Make it appear that calling unlockUserKey() is needed. - doReturn(true).when(mInjector).isFileEncryptedNativeOnly(); - mLockPatternUtils = mock(LockPatternUtils.class); - when(mLockPatternUtils.isSecure(anyInt())).thenReturn(false); - doReturn(mLockPatternUtils).when(mInjector).getLockPatternUtils(); - // All UserController params are set to default. mUserController = new UserController(mInjector); setUpUser(TEST_USER_ID, NO_USERINFO_FLAGS); @@ -561,20 +552,6 @@ public class UserControllerTest { /* keyEvictedCallback= */ mKeyEvictedCallback, /* expectLocking= */ true); } - /** - * Test that if a user has a lock screen credential set, then UserController - * doesn't bother trying to unlock their storage key without a credential - * token, as it will never work. - */ - @Test - public void testSecureUserUnlockNotAttempted() throws Exception { - when(mLockPatternUtils.isSecure(eq(TEST_USER_ID1))).thenReturn(true); - setUpUser(TEST_USER_ID1, 0); - mUserController.startUser(TEST_USER_ID1, /* foreground= */ false); - verify(mInjector.mStorageManagerMock, times(0)) - .unlockUserKey(eq(TEST_USER_ID1), anyInt(), any(), any()); - } - @Test public void testStartProfile_fullUserFails() { setUpUser(TEST_USER_ID1, 0); |