Merge "Do not verify client app uid and package when stopping the sandbox" into udc-dev am: b736edc255

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21910760

Change-Id: I82649b58eb68aaa36b2e108c888e4554192761e0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Sanjana Sunil
2023-03-10 14:08:43 +00:00
committed by Automerger Merge Worker

View File

@@ -17279,6 +17279,9 @@ public class ActivityManagerService extends IActivityManager.Stub
public ComponentName startSdkSandboxService(Intent service, int clientAppUid,
String clientAppPackage, String processName) throws RemoteException {
validateSdkSandboxParams(service, clientAppUid, clientAppPackage, processName);
if (mAppOpsService.checkPackage(clientAppUid, clientAppPackage) != MODE_ALLOWED) {
throw new IllegalArgumentException("uid does not belong to provided package");
}
// TODO(b/269598719): Is passing the application thread of the system_server alright?
// e.g. the sandbox getting privileged access due to this.
ComponentName cn = ActivityManagerService.this.startService(
@@ -17345,6 +17348,9 @@ public class ActivityManagerService extends IActivityManager.Stub
String processName, long flags)
throws RemoteException {
validateSdkSandboxParams(service, clientAppUid, clientAppPackage, processName);
if (mAppOpsService.checkPackage(clientAppUid, clientAppPackage) != MODE_ALLOWED) {
throw new IllegalArgumentException("uid does not belong to provided package");
}
if (conn == null) {
throw new IllegalArgumentException("connection is null");
}
@@ -17397,9 +17403,6 @@ public class ActivityManagerService extends IActivityManager.Stub
if (!UserHandle.isApp(clientAppUid)) {
throw new IllegalArgumentException("uid is not within application range");
}
if (mAppOpsService.checkPackage(clientAppUid, clientAppPackage) != MODE_ALLOWED) {
throw new IllegalArgumentException("uid does not belong to provided package");
}
}
@Override