[CDM] Check if it's system UID for hidden Perm Sync APIs Bug: 371975420 Test: Manual test Flag: EXEMPT bugfix (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:08f57da9e39869f696de4225197530aa2b9187e8) Merged-In: I9771ce38728d40b026d94cb6785d55f144c66790 Change-Id: I9771ce38728d40b026d94cb6785d55f144c66790
diff --git a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java index 0ab6bbc..57eadf6 100644 --- a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +++ b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java
@@ -628,16 +628,25 @@ @Override public void enablePermissionsSync(int associationId) { + if (getCallingUid() != SYSTEM_UID) { + throw new SecurityException("Caller must be system UID"); + } mSystemDataTransferProcessor.enablePermissionsSync(associationId); } @Override public void disablePermissionsSync(int associationId) { + if (getCallingUid() != SYSTEM_UID) { + throw new SecurityException("Caller must be system UID"); + } mSystemDataTransferProcessor.disablePermissionsSync(associationId); } @Override public PermissionSyncRequest getPermissionSyncRequest(int associationId) { + if (getCallingUid() != SYSTEM_UID) { + throw new SecurityException("Caller must be system UID"); + } return mSystemDataTransferProcessor.getPermissionSyncRequest(associationId); }