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

Commit ebca03d2 authored by Jackal Guo's avatar Jackal Guo Committed by Android (Google) Code Review
Browse files

Merge "Enforce the owner rights of dumpProfiles" into sc-dev

parents fe786600 7f6aaf56
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -12988,6 +12988,15 @@ public class PackageManagerService extends IPackageManager.Stub
    @Override
    public void dumpProfiles(String packageName) {
        /* Only the shell, root, or the app user should be able to dump profiles. */
        final int callingUid = Binder.getCallingUid();
        final String[] callerPackageNames = getPackagesForUid(callingUid);
        if (callingUid != Process.SHELL_UID
                && callingUid != Process.ROOT_UID
                && !ArrayUtils.contains(callerPackageNames, packageName)) {
            throw new SecurityException("dumpProfiles");
        }
        AndroidPackage pkg;
        synchronized (mLock) {
            pkg = mPackages.get(packageName);
@@ -12995,13 +13004,6 @@ public class PackageManagerService extends IPackageManager.Stub
                throw new IllegalArgumentException("Unknown package: " + packageName);
            }
        }
        /* Only the shell, root, or the app user should be able to dump profiles. */
        int callingUid = Binder.getCallingUid();
        if (callingUid != Process.SHELL_UID &&
            callingUid != Process.ROOT_UID &&
            callingUid != pkg.getUid()) {
            throw new SecurityException("dumpProfiles");
        }
        synchronized (mInstallLock) {
            Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "dump profiles");