diff options
| author | 2016-12-29 18:26:02 +0000 | |
|---|---|---|
| committer | 2016-12-29 18:26:07 +0000 | |
| commit | 17f739d924667cc56b2ecb38f93bb38eccdfcf38 (patch) | |
| tree | 9c7dc8fe2980dce05739ceb4cd51ba214c50324f | |
| parent | f47277805a095b8fe2334b61d325a72247ce2f17 (diff) | |
| parent | 5b95d07725b629272f202993f3620a7b0f1dd6fb (diff) | |
Merge "Revert "Don't allow permission change to runtime""
| -rw-r--r-- | services/core/java/com/android/server/pm/PackageManagerService.java | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index b5a7c6962288..ec4b7ebf8a9b 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -15611,27 +15611,6 @@ public class PackageManagerService extends IPackageManager.Stub { return; } - // Prevent apps to change permission protection level to dangerous - // from any other type as this would allow a privilege escalation - // where an app adds a normal/signature permission in other app's - // group and later redefines it as dangerous leading to the group - // auto-grant. - final int permissionCount = pkg.permissions.size(); - for (int i = 0; i < permissionCount; i++) { - PackageParser.Permission permission = pkg.permissions.get(i); - if ((permission.info.protectionLevel & PermissionInfo.PROTECTION_MASK_BASE) - == PermissionInfo.PROTECTION_DANGEROUS) { - BasePermission bp = mSettings.mPermissions.get(permission.info.name); - if (bp != null && !bp.isRuntime()) { - res.setError(PackageManager.INSTALL_PARSE_FAILED_BAD_MANIFEST, - "Package " + pkg.packageName + " trying to change a " - + "non-runtime permission " + permission.info.name - + " to runtime."); - return; - } - } - } - // Prevent installing of child packages if (oldPackage.parentPackage != null) { res.setError(PackageManager.INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME, |