diff options
| author | 2019-04-30 11:14:25 -0700 | |
|---|---|---|
| committer | 2019-04-30 20:35:04 +0000 | |
| commit | 15a54465bcb555bf9e46eaa14b48b7f7b0406539 (patch) | |
| tree | 4718ab044564afbbcc8fa3b3ba431b957b5b290b | |
| parent | c2180f475d9c1ce63dcf4d8183991812f9e597f8 (diff) | |
Fix idle maintenance wrt checkpoint check
By calling out to needsCheckpoint and supportsBlockCheckpoint, we
inadvertently added the need for system permission to idleMain.
Relax these permissions.
Test: sm idle-maint run fails without this change, passes with
Bug: 131680526
Change-Id: I3202ca5d818a90d72cce8cdb2c634b21ba308715
(cherry picked from commit eb4f12ca8d5a4cd22f6527d310f9226e7f22abac)
| -rw-r--r-- | services/core/java/com/android/server/StorageManagerService.java | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/services/core/java/com/android/server/StorageManagerService.java b/services/core/java/com/android/server/StorageManagerService.java index 6c1ffa7225f0..410d436f6cb5 100644 --- a/services/core/java/com/android/server/StorageManagerService.java +++ b/services/core/java/com/android/server/StorageManagerService.java @@ -1063,11 +1063,7 @@ class StorageManagerService extends IStorageManager.Stub } private boolean supportsBlockCheckpoint() throws RemoteException { - // Only the system process is permitted to start checkpoints - if (Binder.getCallingUid() != android.os.Process.SYSTEM_UID) { - throw new SecurityException("no permission to check block based checkpoint support"); - } - + enforcePermission(android.Manifest.permission.MOUNT_FORMAT_FILESYSTEMS); return mVold.supportsBlockCheckpoint(); } @@ -2726,11 +2722,7 @@ class StorageManagerService extends IStorageManager.Stub */ @Override public boolean needsCheckpoint() throws RemoteException { - // Only the system process is permitted to commit checkpoints - if (Binder.getCallingUid() != android.os.Process.SYSTEM_UID) { - throw new SecurityException("no permission to commit checkpoint changes"); - } - + enforcePermission(android.Manifest.permission.MOUNT_FORMAT_FILESYSTEMS); return mVold.needsCheckpoint(); } |