Allow holders of INSTALL_PACKAGE_UPDATES permission to update APEXes
Test: atest CtsStagedInstallHostTestCases Bug: 190802380 Change-Id: I061a8d1dcec147b1479eb1ce62e2f60093880d7e
This commit is contained in:
@@ -626,7 +626,14 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements
|
||||
}
|
||||
|
||||
boolean isApex = (params.installFlags & PackageManager.INSTALL_APEX) != 0;
|
||||
if (params.isStaged || isApex) {
|
||||
if (isApex) {
|
||||
if (mContext.checkCallingOrSelfPermission(Manifest.permission.INSTALL_PACKAGE_UPDATES)
|
||||
== PackageManager.PERMISSION_DENIED
|
||||
&& mContext.checkCallingOrSelfPermission(Manifest.permission.INSTALL_PACKAGES)
|
||||
== PackageManager.PERMISSION_DENIED) {
|
||||
throw new SecurityException("Not allowed to perform APEX updates");
|
||||
}
|
||||
} else if (params.isStaged) {
|
||||
mContext.enforceCallingOrSelfPermission(Manifest.permission.INSTALL_PACKAGES, TAG);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user