summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Rhed Jao <rhedjao@google.com> 2021-12-20 03:52:55 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2021-12-20 03:52:55 +0000
commit4fd2da8af2d0e9152e16a2fb77f17adc2160513d (patch)
tree2a68a7fd4a16f83fdf83396c530166d579b69e76
parentd77c92a3f18ee96ed1340f3a8ae8207490d40e5e (diff)
parentabc1ce5ba27a28eca90b8533a93f4ba7e3fb904a (diff)
Merge "Enforce package visibility filters to grantUriPermission()"
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerService.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index ea345a7901a4..2593e512084d 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -5915,6 +5915,10 @@ public class ActivityManagerService extends IActivityManager.Stub
if (targetPkg == null) {
throw new IllegalArgumentException("null target");
}
+ final int callingUserId = UserHandle.getUserId(r.uid);
+ if (mPackageManagerInt.filterAppAccess(targetPkg, r.uid, callingUserId)) {
+ return;
+ }
Preconditions.checkFlagsArgument(modeFlags, Intent.FLAG_GRANT_READ_URI_PERMISSION
| Intent.FLAG_GRANT_WRITE_URI_PERMISSION
@@ -5926,7 +5930,7 @@ public class ActivityManagerService extends IActivityManager.Stub
intent.setFlags(modeFlags);
final NeededUriGrants needed = mUgmInternal.checkGrantUriPermissionFromIntent(intent,
- r.uid, targetPkg, UserHandle.getUserId(r.uid));
+ r.uid, targetPkg, callingUserId);
mUgmInternal.grantUriPermissionUncheckedFromIntent(needed, null);
}
}