Merge "Truncate profile name in setProfileName api" into tm-qpr-dev am: 775a0c6360

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

Change-Id: I110000ced52fb4e81c8ae3c5d5a7ea35242297f7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Ayush Sharma
2023-04-05 21:57:39 +00:00
committed by Automerger Merge Worker
2 changed files with 7 additions and 2 deletions

View File

@@ -9190,7 +9190,8 @@ public class DevicePolicyManager {
* @see #isProfileOwnerApp
* @see #isDeviceOwnerApp
* @param admin Which {@link DeviceAdminReceiver} this request is associate with.
* @param profileName The name of the profile.
* @param profileName The name of the profile. If the name is longer than 200 characters
* it will be truncated.
* @throws SecurityException if {@code admin} is not a device or profile owner.
*/
public void setProfileName(@NonNull ComponentName admin, String profileName) {

View File

@@ -440,6 +440,8 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
private static final int REQUEST_PROFILE_OFF_DEADLINE = 5572;
private static final int MAX_PROFILE_NAME_LENGTH = 200;
private static final long MS_PER_DAY = TimeUnit.DAYS.toMillis(1);
private static final long EXPIRATION_GRACE_PERIOD_MS = 5 * MS_PER_DAY; // 5 days, in ms
@@ -9207,8 +9209,10 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
Preconditions.checkCallAuthorization(
isDefaultDeviceOwner(caller) || isProfileOwner(caller));
final String truncatedProfileName =
profileName.substring(0, Math.min(profileName.length(), MAX_PROFILE_NAME_LENGTH));
mInjector.binderWithCleanCallingIdentity(() -> {
mUserManager.setUserName(caller.getUserId(), profileName);
mUserManager.setUserName(caller.getUserId(), truncatedProfileName);
DevicePolicyEventLogger
.createEvent(DevicePolicyEnums.SET_PROFILE_NAME)
.setAdmin(caller.getComponentName())