From 0434c2a8b78da173e5df0cac4e785e419f74b09b Mon Sep 17 00:00:00 2001 From: fayey Date: Thu, 9 Feb 2023 21:44:32 +0000 Subject: Allow setting app op permissions to support PackageInstaller.SessionParams#setPermisisonStates API. This is the first part of the Permission & app op support of Fullscreen Intent Protection that implements the actual grant/revocation of the FSI permission/app op to back the new PackageInstaller#setPermissionStates API. Test: atest Bug: 268092291 Change-Id: I8ff039a388796dc8cebf877f25e1f535aab6e006 --- .../server/permission/access/permission/PermissionService.kt | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'services/permission/java') diff --git a/services/permission/java/com/android/server/permission/access/permission/PermissionService.kt b/services/permission/java/com/android/server/permission/access/permission/PermissionService.kt index ef35010c1da2..8ceac798c06b 100644 --- a/services/permission/java/com/android/server/permission/access/permission/PermissionService.kt +++ b/services/permission/java/com/android/server/permission/access/permission/PermissionService.kt @@ -72,6 +72,7 @@ import com.android.server.permission.access.util.hasAnyBit import com.android.server.permission.access.util.hasBits import com.android.server.permission.access.util.withClearedCallingIdentity import com.android.server.pm.KnownPackages +import com.android.server.pm.PackageInstallerService import com.android.server.pm.PackageManagerLocal import com.android.server.pm.UserManagerInternal import com.android.server.pm.UserManagerService @@ -770,10 +771,12 @@ class PermissionService( ) } } - permission.isAppOp -> setAppOpPermissionGranted( - packageState, userId, permissionName, - permissionState == PackageInstaller.SessionParams.PERMISSION_STATE_GRANTED - ) + permission.isAppOp && permissionName in + PackageInstallerService.INSTALLER_CHANGEABLE_APP_OP_PERMISSIONS -> + setAppOpPermissionGranted( + packageState, userId, permissionName, permissionState == + PackageInstaller.SessionParams.PERMISSION_STATE_GRANTED + ) else -> {} } } -- cgit v1.2.3-59-g8ed1b