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

Commit a4568bd2 authored by Hongming Jin's avatar Hongming Jin Committed by android-build-team Robot
Browse files

Revert "RESTRICT AUTOMERGE: Check both self and shared user id package for requested permissions."

This reverts commit 5e37e9d9.

Reason for revert: Not a security fix and the security fix needs this cl is reverted.
Bug: 114365189

Change-Id: Ia12ce2692b47a1d59be0b199b1fbfa415767e145
(cherry picked from commit 0b103c69)
parent a3431a2b
Loading
Loading
Loading
Loading
+1 −4
Original line number Original line Diff line number Diff line
@@ -39,7 +39,6 @@ import android.util.Slog;


import com.android.server.pm.DumpState;
import com.android.server.pm.DumpState;
import com.android.server.pm.PackageManagerService;
import com.android.server.pm.PackageManagerService;
import com.android.server.pm.PackageSetting;
import com.android.server.pm.PackageSettingBase;
import com.android.server.pm.PackageSettingBase;


import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParser;
@@ -375,10 +374,8 @@ public final class BasePermission {
    }
    }


    public void enforceDeclaredUsedAndRuntimeOrDevelopment(PackageParser.Package pkg) {
    public void enforceDeclaredUsedAndRuntimeOrDevelopment(PackageParser.Package pkg) {
        final PackageSetting pkgSetting = (PackageSetting) pkg.mExtras;
        final PermissionsState permsState = pkgSetting.getPermissionsState();
        int index = pkg.requestedPermissions.indexOf(name);
        int index = pkg.requestedPermissions.indexOf(name);
        if (!permsState.hasRequestedPermission(name) && index == -1) {
        if (index == -1) {
            throw new SecurityException("Package " + pkg.packageName
            throw new SecurityException("Package " + pkg.packageName
                    + " has not requested permission " + name);
                    + " has not requested permission " + name);
        }
        }
+1 −8
Original line number Original line Diff line number Diff line
@@ -20,9 +20,9 @@ import android.content.pm.PackageManager;
import android.os.UserHandle;
import android.os.UserHandle;
import android.util.ArrayMap;
import android.util.ArrayMap;
import android.util.ArraySet;
import android.util.ArraySet;

import android.util.SparseArray;
import android.util.SparseArray;
import android.util.SparseBooleanArray;
import android.util.SparseBooleanArray;

import com.android.internal.util.ArrayUtils;
import com.android.internal.util.ArrayUtils;


import java.util.ArrayList;
import java.util.ArrayList;
@@ -290,13 +290,6 @@ public final class PermissionsState {
        return false;
        return false;
    }
    }


    /**
     * Returns whether the state has any known request for the given permission name,
     * whether or not it has been granted.
     */
    public boolean hasRequestedPermission(String name) {
        return mPermissions != null && (mPermissions.get(name) != null);
    }
    /**
    /**
     * Gets all permissions for a given device user id regardless if they
     * Gets all permissions for a given device user id regardless if they
     * are install time or runtime permissions.
     * are install time or runtime permissions.