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

Commit d03b5017 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Prevent system reset staged installer bypass flag unexpactly" into rvc-dev am: 809bf935

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

Change-Id: I1a84ce3d8e8d50136455162e6d01c8a594289b2d
parents 15f0a259 809bf935
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -589,13 +589,13 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements
            }
        }

        if (params.isStaged && !isCalledBySystemOrShell(callingUid)) {
            if (mBypassNextStagedInstallerCheck) {
                mBypassNextStagedInstallerCheck = false;
        } else if (params.isStaged
                && !isCalledBySystemOrShell(callingUid)
                && !isWhitelistedStagedInstaller(requestedInstallerPackageName)) {
            } else if (!isStagedInstallerAllowed(requestedInstallerPackageName)) {
                throw new SecurityException("Installer not allowed to commit staged install");
            }
        }

        if (!params.isMultiPackage) {
            // Only system components can circumvent runtime permissions when installing.
@@ -725,7 +725,7 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements
                || callingUid == Process.SHELL_UID;
    }

    private boolean isWhitelistedStagedInstaller(String installerName) {
    private boolean isStagedInstallerAllowed(String installerName) {
        return SystemConfig.getInstance().getWhitelistedStagedInstallers().contains(installerName);
    }