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

Commit 833fe586 authored by Adam Bookatz's avatar Adam Bookatz
Browse files

PackageNamePermissionQuery uid->userId

PackageNamePermissionQuery (and all that uses it) speaks
of uid, but it actually stores/queries a userId. We therefore
rename the variable/parameter from uid to userId, as appropriate.

Bug: 163651060
Test: still compiles (no functional changes were made)
Change-Id: I3db2263a3f960d7eda35466a2e9058fe6f27e49a
parent 501e75e8
Loading
Loading
Loading
Loading
+1 −2
Original line number Original line Diff line number Diff line
@@ -684,8 +684,7 @@ public class ApplicationPackageManager extends PackageManager {


    @Override
    @Override
    public int checkPermission(String permName, String pkgName) {
    public int checkPermission(String permName, String pkgName) {
        return PermissionManager
        return PermissionManager.checkPackageNamePermission(permName, pkgName, getUserId());
                .checkPackageNamePermission(permName, pkgName, getUserId());
    }
    }


    @Override
    @Override
+15 −12
Original line number Original line Diff line number Diff line
@@ -25,6 +25,7 @@ import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.annotation.SystemApi;
import android.annotation.SystemService;
import android.annotation.SystemService;
import android.annotation.TestApi;
import android.annotation.TestApi;
import android.annotation.UserIdInt;
import android.app.ActivityManager;
import android.app.ActivityManager;
import android.app.ActivityThread;
import android.app.ActivityThread;
import android.app.IActivityManager;
import android.app.IActivityManager;
@@ -637,24 +638,25 @@ public final class PermissionManager {
    private static final class PackageNamePermissionQuery {
    private static final class PackageNamePermissionQuery {
        final String permName;
        final String permName;
        final String pkgName;
        final String pkgName;
        final int uid;
        final int userId;


        PackageNamePermissionQuery(@Nullable String permName, @Nullable String pkgName, int uid) {
        PackageNamePermissionQuery(@Nullable String permName, @Nullable String pkgName,
                @UserIdInt int userId) {
            this.permName = permName;
            this.permName = permName;
            this.pkgName = pkgName;
            this.pkgName = pkgName;
            this.uid = uid;
            this.userId = userId;
        }
        }


        @Override
        @Override
        public String toString() {
        public String toString() {
            return String.format(
            return String.format(
                    "PackageNamePermissionQuery(pkgName=\"%s\", permName=\"%s, uid=%s\")",
                    "PackageNamePermissionQuery(pkgName=\"%s\", permName=\"%s, userId=%s\")",
                    pkgName, permName, uid);
                    pkgName, permName, userId);
        }
        }


        @Override
        @Override
        public int hashCode() {
        public int hashCode() {
            return Objects.hash(permName, pkgName, uid);
            return Objects.hash(permName, pkgName, userId);
        }
        }


        @Override
        @Override
@@ -670,16 +672,16 @@ public final class PermissionManager {
            }
            }
            return Objects.equals(permName, other.permName)
            return Objects.equals(permName, other.permName)
                    && Objects.equals(pkgName, other.pkgName)
                    && Objects.equals(pkgName, other.pkgName)
                    && uid == other.uid;
                    && userId == other.userId;
        }
        }
    }
    }


    /* @hide */
    /* @hide */
    private static int checkPackageNamePermissionUncached(
    private static int checkPackageNamePermissionUncached(
            String permName, String pkgName, int uid) {
            String permName, String pkgName, @UserIdInt int userId) {
        try {
        try {
            return ActivityThread.getPermissionManager().checkPermission(
            return ActivityThread.getPermissionManager().checkPermission(
                    permName, pkgName, uid);
                    permName, pkgName, userId);
        } catch (RemoteException e) {
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
            throw e.rethrowFromSystemServer();
        }
        }
@@ -693,7 +695,7 @@ public final class PermissionManager {
                @Override
                @Override
                protected Integer recompute(PackageNamePermissionQuery query) {
                protected Integer recompute(PackageNamePermissionQuery query) {
                    return checkPackageNamePermissionUncached(
                    return checkPackageNamePermissionUncached(
                            query.permName, query.pkgName, query.uid);
                            query.permName, query.pkgName, query.userId);
                }
                }
            };
            };


@@ -702,9 +704,10 @@ public final class PermissionManager {
     *
     *
     * @hide
     * @hide
     */
     */
    public static int checkPackageNamePermission(String permName, String pkgName, int uid) {
    public static int checkPackageNamePermission(String permName, String pkgName,
            @UserIdInt int userId) {
        return sPackageNamePermissionCache.query(
        return sPackageNamePermissionCache.query(
                new PackageNamePermissionQuery(permName, pkgName, uid));
                new PackageNamePermissionQuery(permName, pkgName, userId));
    }
    }


    /**
    /**
+1 −1
Original line number Original line Diff line number Diff line
@@ -881,7 +881,7 @@ public class PermissionManagerService extends IPermissionManager.Stub {
    }
    }


    @Override
    @Override
    public int checkPermission(String permName, String pkgName, int userId) {
    public int checkPermission(String permName, String pkgName, @UserIdInt int userId) {
        // Not using Objects.requireNonNull() here for compatibility reasons.
        // Not using Objects.requireNonNull() here for compatibility reasons.
        if (permName == null || pkgName == null) {
        if (permName == null || pkgName == null) {
            return PackageManager.PERMISSION_DENIED;
            return PackageManager.PERMISSION_DENIED;