Merge "Fix security vulnerability in DPMS" into sc-dev am: 209f21d2ae

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14881810

Change-Id: Icd65a15266764566d6c6b869b665b4cd4eea6e5d
This commit is contained in:
Kholoud Mohamed
2021-06-08 13:27:12 +00:00
committed by Automerger Merge Worker
2 changed files with 7 additions and 3 deletions

View File

@@ -13112,6 +13112,10 @@ public class DevicePolicyManager {
* @see #getCrossProfileCalendarPackages(ComponentName)
* @hide
*/
@RequiresPermission(anyOf = {
permission.INTERACT_ACROSS_USERS_FULL,
permission.INTERACT_ACROSS_USERS
})
public @Nullable Set<String> getCrossProfileCalendarPackages() {
throwIfParentInstance("getCrossProfileCalendarPackages");
if (mService != null) {

View File

@@ -16016,9 +16016,9 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
return Collections.emptyList();
}
Preconditions.checkArgumentNonnegative(userHandle, "Invalid userId");
final CallerIdentity caller = getCallerIdentity();
Preconditions.checkCallAuthorization(hasCrossUsersPermission(caller, userHandle));
Preconditions.checkCallAuthorization(
hasCallingOrSelfPermission(permission.INTERACT_ACROSS_USERS)
|| hasCallingOrSelfPermission(permission.INTERACT_ACROSS_USERS_FULL));
synchronized (getLockObject()) {
final ActiveAdmin admin = getProfileOwnerAdminLocked(userHandle);