Loading services/permission/java/com/android/server/permission/access/appop/AppOpService.kt +18 −10 Original line number Diff line number Diff line Loading @@ -246,24 +246,32 @@ class AppOpService(private val service: AccessCheckingService) : AppOpsCheckingS } override fun setUidMode(uid: Int, deviceId: String, code: Int, mode: Int): Boolean { val appId = UserHandle.getAppId(uid) val userId = UserHandle.getUserId(uid) val appOpName = AppOpsManager.opToPublicName(code) if ( Flags.runtimePermissionAppopsMappingEnabled() && code in runtimeAppOpToPermissionNames ) { Slog.w( LOG_TAG, "Cannot set UID mode for runtime permission app op, " + " callingUid = ${Binder.getCallingUid()}, " + val oldMode = service.getState { with(appIdPolicy) { getAppOpMode(appId, userId, appOpName) } } val wouldHaveChanged = oldMode != mode val logMessage = (if (wouldHaveChanged) "Blocked" else "Ignored") + " setUidMode call for runtime permission app op:" + " uid = $uid," + " code = ${AppOpsManager.opToName(code)}," + " mode = ${AppOpsManager.modeToName(mode)}", RuntimeException() ) " mode = ${AppOpsManager.modeToName(mode)}," + " callingUid = ${Binder.getCallingUid()}," + " oldMode = ${AppOpsManager.modeToName(oldMode)}" if (wouldHaveChanged) { Slog.e(LOG_TAG, logMessage, RuntimeException()) } else { Slog.w(LOG_TAG, logMessage) } return false } val appId = UserHandle.getAppId(uid) val userId = UserHandle.getUserId(uid) val appOpName = AppOpsManager.opToPublicName(code) var wasChanged: Boolean service.mutateState { wasChanged = with(appIdPolicy) { setAppOpMode(appId, userId, appOpName, mode) } Loading Loading
services/permission/java/com/android/server/permission/access/appop/AppOpService.kt +18 −10 Original line number Diff line number Diff line Loading @@ -246,24 +246,32 @@ class AppOpService(private val service: AccessCheckingService) : AppOpsCheckingS } override fun setUidMode(uid: Int, deviceId: String, code: Int, mode: Int): Boolean { val appId = UserHandle.getAppId(uid) val userId = UserHandle.getUserId(uid) val appOpName = AppOpsManager.opToPublicName(code) if ( Flags.runtimePermissionAppopsMappingEnabled() && code in runtimeAppOpToPermissionNames ) { Slog.w( LOG_TAG, "Cannot set UID mode for runtime permission app op, " + " callingUid = ${Binder.getCallingUid()}, " + val oldMode = service.getState { with(appIdPolicy) { getAppOpMode(appId, userId, appOpName) } } val wouldHaveChanged = oldMode != mode val logMessage = (if (wouldHaveChanged) "Blocked" else "Ignored") + " setUidMode call for runtime permission app op:" + " uid = $uid," + " code = ${AppOpsManager.opToName(code)}," + " mode = ${AppOpsManager.modeToName(mode)}", RuntimeException() ) " mode = ${AppOpsManager.modeToName(mode)}," + " callingUid = ${Binder.getCallingUid()}," + " oldMode = ${AppOpsManager.modeToName(oldMode)}" if (wouldHaveChanged) { Slog.e(LOG_TAG, logMessage, RuntimeException()) } else { Slog.w(LOG_TAG, logMessage) } return false } val appId = UserHandle.getAppId(uid) val userId = UserHandle.getUserId(uid) val appOpName = AppOpsManager.opToPublicName(code) var wasChanged: Boolean service.mutateState { wasChanged = with(appIdPolicy) { setAppOpMode(appId, userId, appOpName, mode) } Loading