diff options
| author | 2021-01-25 21:44:33 +0000 | |
|---|---|---|
| committer | 2021-01-25 21:44:33 +0000 | |
| commit | 0bd1e20da8049eea8208f064584cd0fa0ef3cac4 (patch) | |
| tree | 2ea2a0faec1cc2365d7e1183e699706268479372 | |
| parent | ac64bae06d380aa686fa4679a0b7b920e9b4df66 (diff) | |
| parent | 2912b101aaa34abfa9637f2f00c992e7d129b994 (diff) | |
Merge "Fix for TestDirectBootEmulated testcase"
| -rw-r--r-- | services/core/java/com/android/server/StorageManagerService.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/StorageManagerService.java b/services/core/java/com/android/server/StorageManagerService.java index 5c34584d0adf..4e2519b47a47 100644 --- a/services/core/java/com/android/server/StorageManagerService.java +++ b/services/core/java/com/android/server/StorageManagerService.java @@ -3297,6 +3297,12 @@ class StorageManagerService extends IStorageManager.Stub enforcePermission(android.Manifest.permission.STORAGE_INTERNAL); if (isFsEncrypted) { + // When a user has secure lock screen, require secret to actually unlock. + // This check is mostly in place for emulation mode. + if (StorageManager.isFileEncryptedEmulatedOnly() && + mLockPatternUtils.isSecure(userId) && ArrayUtils.isEmpty(secret)) { + throw new IllegalStateException("Secret required to unlock secure user " + userId); + } try { mVold.unlockUserKey(userId, serialNumber, encodeBytes(token), encodeBytes(secret)); |