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

Commit f1b246dd authored by rich cannings's avatar rich cannings Committed by Android (Google) Code Review
Browse files

Merge "Fix verfication bypassed for adb installs" into jb-mr1-dev

parents 64cb35c0 36070b41
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -6374,12 +6374,22 @@ public class PackageManagerService extends IPackageManager.Stub {
            mArgs = args;

            if (ret == PackageManager.INSTALL_SUCCEEDED) {
                 /*
                 * ADB installs appear as UserHandle.USER_ALL, and can only be performed by
                 * UserHandle.USER_OWNER, so use the package verifier for UserHandle.USER_OWNER.
                 */
                int userIdentifier = getUser().getIdentifier();
                if (userIdentifier == UserHandle.USER_ALL
                        && ((flags & PackageManager.INSTALL_FROM_ADB) != 0)) {
                    userIdentifier = UserHandle.USER_OWNER;
                }

                /*
                 * Determine if we have any installed package verifiers. If we
                 * do, then we'll defer to them to verify the packages.
                 */
                final int requiredUid = mRequiredVerifierPackage == null ? -1
                        : getPackageUid(mRequiredVerifierPackage, getUser().getIdentifier());
                        : getPackageUid(mRequiredVerifierPackage, userIdentifier);
                if (requiredUid != -1 && isVerificationEnabled(flags)) {
                    final Intent verification = new Intent(
                            Intent.ACTION_PACKAGE_NEEDS_VERIFICATION);