Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e7b8a724 authored by Kholoud Mohamed's avatar Kholoud Mohamed Committed by Automerger Merge Worker
Browse files

Merge "Fix security vulnerability in DPMS#isProvisioningAllowed" into sc-dev am: 2e2e0a8c

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

Change-Id: I52d2173c72b3b2b4f88d10b21f340dc236c743f7
parents fc409cdc 2e2e0a8c
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -13326,12 +13326,10 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
        final CallerIdentity caller = getCallerIdentity();
        final long ident = mInjector.binderClearCallingIdentity();
        try {
            final int uidForPackage = mInjector.getPackageManager().getPackageUidAsUser(
                    packageName, caller.getUserId());
            Preconditions.checkArgument(caller.getUid() == uidForPackage,
            final List<String> callerUidPackageNames = Arrays.asList(
                    mInjector.getPackageManager().getPackagesForUid(caller.getUid()));
            Preconditions.checkArgument(callerUidPackageNames.contains(packageName),
                    "Caller uid doesn't match the one for the provided package.");
        } catch (NameNotFoundException e) {
            throw new IllegalArgumentException("Invalid package provided " + packageName, e);
        } finally {
            mInjector.binderRestoreCallingIdentity(ident);
        }
+2 −0
Original line number Diff line number Diff line
@@ -253,6 +253,8 @@ public abstract class DpmTestBase {

        doReturn(new String[] {admin.getPackageName()}).when(mServices.ipackageManager)
            .getPackagesForUid(eq(packageUid));
        doReturn(new String[] {admin.getPackageName()}).when(mServices.packageManager)
                .getPackagesForUid(eq(packageUid));
        // Set up getPackageInfo().
        markPackageAsInstalled(admin.getPackageName(), ai, UserHandle.getUserId(packageUid));
    }