summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNate Myren <ntmyren@google.com>2022-09-22 15:23:24 -0700
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-11-15 01:48:11 +0000
commite366f12457615fded2bb28057a5c7464ec97b58a (patch)
tree691124e2cbac6bc81b0903064694c1cf033a6e12
parente144b7802e04841a22afcb5100ac46be5e595d82 (diff)
downloadbase-e366f12457615fded2bb28057a5c7464ec97b58a.tar.gz
RESTRICT AUTOMERGE Validate permission tree size on permission update
Bug: 242537498 Test: atest PermissionMemoryFootprintTest Change-Id: I15343e84c1802d6b89249106263319a6539fa73b (cherry picked from commit 973c67f7fc5d1321ff38e861dfe256a2877af5f0) Merged-In: I15343e84c1802d6b89249106263319a6539fa73b
-rw-r--r--services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java b/services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java
index 014d580e520f..18c29fa9f3a2 100644
--- a/services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java
+++ b/services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java
@@ -644,8 +644,8 @@ public class PermissionManagerServiceImpl implements PermissionManagerServiceInt
Permission bp = mRegistry.getPermission(info.name);
added = bp == null;
int fixedLevel = PermissionInfo.fixProtectionLevel(info.protectionLevel);
+ enforcePermissionCapLocked(info, tree);
if (added) {
- enforcePermissionCapLocked(info, tree);
bp = new Permission(info.name, tree.getPackageName(), Permission.TYPE_DYNAMIC);
} else if (!bp.isDynamic()) {
throw new SecurityException("Not allowed to modify non-dynamic permission "