diff options
author | 2020-02-03 20:51:55 +0000 | |
---|---|---|
committer | 2020-02-03 20:51:55 +0000 | |
commit | 19fd3c80f5aa0acdf1396780113063defee624c4 (patch) | |
tree | 9dcd06d9020a4cbb25eaf73c2770aa6576284e3c | |
parent | 4784d2c05682f1ee94c32c13fb58b72ea2fe7e2f (diff) | |
parent | 36e16b2e947e73e95b903cdae4025af15dc988cb (diff) |
Merge "Restrict access_mtp permission access to Android/"
-rw-r--r-- | services/core/java/com/android/server/StorageManagerService.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/StorageManagerService.java b/services/core/java/com/android/server/StorageManagerService.java index e17dde9a766e..a08bdb23dd22 100644 --- a/services/core/java/com/android/server/StorageManagerService.java +++ b/services/core/java/com/android/server/StorageManagerService.java @@ -3942,8 +3942,12 @@ class StorageManagerService extends IStorageManager.Stub final boolean hasMtp = mIPackageManager.checkUidPermission(ACCESS_MTP, uid) == PERMISSION_GRANTED; if (mIsFuseEnabled && hasMtp) { - // The process hosting the MTP server should be able to write in Android/ - return Zygote.MOUNT_EXTERNAL_ANDROID_WRITABLE; + ApplicationInfo ai = mIPackageManager.getApplicationInfo(packageName, + 0, UserHandle.getUserId(uid)); + if (ai.isSignedWithPlatformKey()) { + // Platform processes hosting the MTP server should be able to write in Android/ + return Zygote.MOUNT_EXTERNAL_ANDROID_WRITABLE; + } } // Determine if caller is holding runtime permission |