Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e6cec828 authored by Pavel Grafov's avatar Pavel Grafov
Browse files

Remove dead code

Bug: 335663055
Flag: EXEMPT removing dead code
Test: TreeHugger
Change-Id: Ia0f678bb4c0d8a9b234efd4895540658a00003d7
parent 21adb3c0
Loading
Loading
Loading
Loading
+1 −200
Original line number Diff line number Diff line
@@ -76,6 +76,7 @@ import static android.Manifest.permission.MANAGE_DEVICE_POLICY_SCREEN_CONTENT;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_SMS;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_STATUS_BAR;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_STORAGE_LIMIT;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES;
@@ -88,7 +89,6 @@ import static android.Manifest.permission.MANAGE_DEVICE_POLICY_WALLPAPER;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_WINDOWS;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA;
import static android.Manifest.permission.MANAGE_DEVICE_POLICY_STORAGE_LIMIT;
import static android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS;
import static android.Manifest.permission.MASTER_CLEAR;
import static android.Manifest.permission.NOTIFY_PENDING_SYSTEM_UPDATE;
@@ -116,7 +116,6 @@ import static android.app.admin.DeviceAdminInfo.USES_POLICY_FORCE_LOCK;
import static android.app.admin.DeviceAdminInfo.USES_POLICY_WIPE_DATA;
import static android.app.admin.DeviceAdminReceiver.ACTION_COMPLIANCE_ACKNOWLEDGEMENT_REQUIRED;
import static android.app.admin.DeviceAdminReceiver.EXTRA_TRANSFER_OWNERSHIP_ADMIN_EXTRAS_BUNDLE;
import static android.app.admin.DevicePolicyIdentifiers.AUTO_TIMEZONE_POLICY;
import static android.app.admin.DevicePolicyManager.ACTION_CHECK_POLICY_COMPLIANCE;
import static android.app.admin.DevicePolicyManager.ACTION_DEVICE_FINANCING_STATE_CHANGED;
import static android.app.admin.DevicePolicyManager.ACTION_DEVICE_POLICY_RESOURCE_UPDATED;
@@ -407,7 +406,6 @@ import android.hardware.usb.UsbManager;
import android.location.Location;
import android.location.LocationManager;
import android.media.AudioManager;
import android.media.IAudioService;
import android.net.ConnectivityManager;
import android.net.ConnectivitySettingsManager;
import android.net.IIpConnectivityMetrics;
@@ -1763,10 +1761,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
                    ServiceManager.getService(Context.BACKUP_SERVICE));
        }
        IAudioService getIAudioService() {
            return IAudioService.Stub.asInterface(ServiceManager.getService(Context.AUDIO_SERVICE));
        }
        PersistentDataBlockManagerInternal getPersistentDataBlockManagerInternal() {
            return LocalServices.getService(PersistentDataBlockManagerInternal.class);
        }
@@ -1939,10 +1933,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
                    name, value, userHandle);
        }
        void settingsSecurePutInt(String name, int value) {
            Settings.Secure.putInt(mContext.getContentResolver(), name, value);
        }
        int settingsGlobalGetInt(String name, int def) {
            return Settings.Global.getInt(mContext.getContentResolver(), name, def);
        }
@@ -1956,10 +1946,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
            Settings.Global.putInt(mContext.getContentResolver(), name, value);
        }
        void settingsSecurePutString(String name, String value) {
            Settings.Secure.putString(mContext.getContentResolver(), name, value);
        }
        void settingsGlobalPutString(String name, String value) {
            Settings.Global.putString(mContext.getContentResolver(), name, value);
        }
@@ -2900,16 +2886,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        return poAdmin;
    }
    @NonNull ActiveAdmin getOrganizationOwnedProfileOwnerLocked(final CallerIdentity caller) {
        Preconditions.checkCallAuthorization(
                mOwners.isProfileOwnerOfOrganizationOwnedDevice(caller.getUserId()),
                "Caller %s is not an admin of an org-owned device",
                caller.getComponentName());
        final ActiveAdmin profileOwner = getProfileOwnerLocked(caller.getUserId());
        return profileOwner;
    }
    ActiveAdmin getProfileOwnerOrDeviceOwnerLocked(@UserIdInt int userId) {
        ensureLocked();
        // Try to find an admin which can use reqPolicy
@@ -2922,18 +2898,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        return getDeviceOwnerLocked(userId);
    }
    ActiveAdmin getProfileOwnerOrDefaultDeviceOwnerLocked(@UserIdInt int userId) {
        ensureLocked();
        // Try to find an admin which can use reqPolicy
        final ComponentName poAdminComponent = mOwners.getProfileOwnerComponent(userId);
        if (poAdminComponent != null) {
            return getProfileOwnerLocked(userId);
        }
        return getDefaultDeviceOwnerLocked(userId);
    }
    @NonNull ActiveAdmin getParentOfAdminIfRequired(ActiveAdmin admin, boolean parent) {
        Objects.requireNonNull(admin);
        return parent ? admin.getParentActiveAdmin() : admin;
@@ -4441,25 +4405,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
    }
    /**
     * Get the list of active admins for an affected user:
     * <ul>
     * <li>The active admins associated with the userHandle itself</li>
     * <li>The parent active admins for each managed profile associated with the userHandle</li>
     * </ul>
     *
     * @param userHandle the affected user for whom to get the active admins
     * @return the list of active admins for the affected user
     */
    @GuardedBy("getLockObject()")
    private List<ActiveAdmin> getActiveAdminsForAffectedUserLocked(int userHandle) {
        if (isManagedProfile(userHandle)) {
            return getUserDataUnchecked(userHandle).mAdminList;
        }
        return getActiveAdminsForUserAndItsManagedProfilesLocked(userHandle,
                /* shouldIncludeProfileAdmins */ (user) -> false);
    }
    /**
     * Get the list of active admins for an affected user:
     * <ul>
@@ -8669,17 +8614,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
                .write();
    }
    // Set the latest screen capture policy, overriding any existing ones.
    // userHandle can be one of USER_ALL, USER_NULL or a concrete userId.
    private void setScreenCaptureDisabled(int userHandle) {
        int current = mPolicyCache.getScreenCaptureDisallowedUser();
        if (userHandle == current) {
            return;
        }
        mPolicyCache.setScreenCaptureDisallowedUser(userHandle);
        updateScreenCaptureDisabled();
    }
    /**
     * Returns whether or not screen capture is disabled for  any active admin.
     */
@@ -9896,16 +9830,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        return doOrPo;
    }
    ActiveAdmin getDeviceOwnerOrProfileOwnerOfOrganizationOwnedDeviceParentLocked(int userId) {
        ensureLocked();
        ActiveAdmin admin = getDeviceOwnerAdminLocked();
        if (admin != null) {
            return admin;
        }
        admin = getProfileOwnerOfOrganizationOwnedDeviceLocked(userId);
        return admin != null ? admin.getParentActiveAdmin() : null;
    }
    @Override
    public void clearDeviceOwner(String packageName) {
        Objects.requireNonNull(packageName, "packageName is null");
@@ -10234,13 +10158,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        return mInjector.hasUserSetupCompleted(getUserData(userHandle));
    }
    private boolean hasPaired(int userHandle) {
        if (!mHasFeature) {
            return true;
        }
        return getUserData(userHandle).mPaired;
    }
    @Override
    public int getUserProvisioningState(int userHandle) {
        if (!mHasFeature) {
@@ -11035,16 +10952,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        return enforcingAdmin;
    }
    private void enforceCanCallLockTaskLocked(CallerIdentity caller) {
        Preconditions.checkCallAuthorization(isProfileOwner(caller)
                || isDefaultDeviceOwner(caller) || isFinancedDeviceOwner(caller));
        final int userId =  caller.getUserId();
        if (!canDPCManagedUserUseLockTaskLocked(userId)) {
            throw new SecurityException("User " + userId + " is not allowed to use lock task");
        }
    }
    private boolean isSystemUid(CallerIdentity caller) {
        return UserHandle.isSameApp(caller.getUid(), Process.SYSTEM_UID);
    }
@@ -14576,15 +14483,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        }
    }
    private void setLockTaskPackagesLocked(int userHandle, List<String> packages) {
        DevicePolicyData policy = getUserData(userHandle);
        policy.mLockTaskPackages = packages;
        // Store the settings persistently.
        saveSettingsLocked(userHandle);
        updateLockTaskPackagesLocked(mContext, packages, userHandle);
    }
    @Override
    public String[] getLockTaskPackages(ComponentName who, String callerPackageName) {
        CallerIdentity caller = getCallerIdentity(who, callerPackageName);
@@ -14634,7 +14532,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
            "Cannot use LOCK_TASK_FEATURE_NOTIFICATIONS without LOCK_TASK_FEATURE_HOME");
        CallerIdentity caller = getCallerIdentity(who, callerPackageName);
        final int userHandle = caller.getUserId();
        synchronized (getLockObject()) {
            checkCanExecuteOrThrowUnsafe(DevicePolicyManager.OPERATION_SET_LOCK_TASK_FEATURES);
        }
@@ -14670,13 +14567,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        }
    }
    private void setLockTaskFeaturesLocked(int userHandle, int flags) {
        DevicePolicyData policy = getUserData(userHandle);
        policy.mLockTaskFeatures = flags;
        saveSettingsLocked(userHandle);
        updateLockTaskFeaturesLocked(flags, userHandle);
    }
    @Override
    public int getLockTaskFeatures(ComponentName who, String callerPackageName) {
        CallerIdentity caller = getCallerIdentity(who, callerPackageName);
@@ -16152,29 +16042,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        }
    }
    /**
     *  Excludes restrictions imposed by UserManager.
     */
    private List<UserManager.EnforcingUser> getDevicePolicySources(
            List<UserManager.EnforcingUser> sources) {
        int sizeBefore = sources.size();
        List<UserManager.EnforcingUser> realSources = new ArrayList<>(sizeBefore);
        for (int i = 0; i < sizeBefore; i++) {
            UserManager.EnforcingUser source = sources.get(i);
            int type = source.getUserRestrictionSource();
            if (type != UserManager.RESTRICTION_SOURCE_PROFILE_OWNER
                    && type != UserManager.RESTRICTION_SOURCE_DEVICE_OWNER) {
                // TODO(b/128928355): add unit test
                Slogf.d(LOG_TAG, "excluding source of type %s at index %d",
                        userRestrictionSourceToString(type), i);
                continue;
            }
            realSources.add(source);
        }
        return realSources;
    }
    private static String userRestrictionSourceToString(@UserRestrictionSource int source) {
        return DebugUtils.flagsToString(UserManager.class, "RESTRICTION_", source);
    }
@@ -20843,17 +20710,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        }
    }
    private void suspendPersonalAppsInPackageManager(int userId) {
        mInjector.binderWithCleanCallingIdentity(() -> {
            final String[] appsToSuspend = mInjector.getPersonalAppsForSuspension(userId);
            final String[] failedApps = mInjector.getPackageManagerInternal()
                    .setPackagesSuspendedByAdmin(userId, appsToSuspend, true);
            if (!ArrayUtils.isEmpty(failedApps)) {
                Slogf.wtf(LOG_TAG, "Failed to suspend apps: " + String.join(",", failedApps));
            }
        });
    }
    private void notifyIfManagedSubscriptionsAreUnavailable(
            UserHandle managedProfile, boolean managedProfileAvailable) {
        if (!isManagedProfile(managedProfile.getIdentifier())) {
@@ -23296,14 +23152,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        return getEnforcingAdminForCaller(admin, callerPackageName);
    }
    private static final HashMap<String, String> POLICY_IDENTIFIER_TO_PERMISSION = new HashMap<>();
    {
        POLICY_IDENTIFIER_TO_PERMISSION.put(AUTO_TIMEZONE_POLICY, SET_TIME_ZONE);
    }
    private static final HashMap<String, Integer> POLICY_IDENTIFIER_TO_ACTIVE_ADMIN_POLICY =
            new HashMap<>();
    /**
     * Checks if the calling process has been granted permission to apply a device policy.
     *
@@ -23322,7 +23170,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        }
    }
    /**
     * Checks if the calling process has been granted permission to apply a device policy on a
     * specific user. Only one permission provided in the list needs to be granted to pass this
@@ -24422,52 +24269,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        }
    }
    // We need to add a mapping of policyId to permission in POLICY_IDENTIFIER_TO_PERMISSION
    // for each migrated permission.
    private List<ActiveAdmin> getNonDPCActiveAdminsForPolicyLocked(String policyIdentifier) {
        Integer activeAdminPolicy = POLICY_IDENTIFIER_TO_ACTIVE_ADMIN_POLICY.get(policyIdentifier);
        if (activeAdminPolicy == null) {
            Slogf.e(LOG_TAG,
                    "Can't find a active admin policy for %s in POLICY_IDENTIFIER_TO_PERMISSION",
                    policyIdentifier);
            return new ArrayList<>();
        }
        List<ActiveAdmin> admins = new ArrayList<>();
        for (UserInfo userInfo : mUserManager.getUsers()) {
            List<ComponentName> activeAdmins = getActiveAdmins(userInfo.id);
            for (ComponentName admin : activeAdmins) {
                if (isDeviceOwner(admin, userInfo.id) || isProfileOwner(admin, userInfo.id)) {
                    continue;
                }
                DevicePolicyData policy = getUserDataUnchecked(userInfo.id);
                if (isActiveAdminWithPolicyForUserLocked(
                        policy.mAdminMap.get(admin), activeAdminPolicy,
                        userInfo.id)) {
                    admins.add(policy.mAdminMap.get(admin));
                }
            }
        }
        return admins;
    }
    // TODO: this can actually accept an EnforcingAdmin that gets created in the permission
    //  check method.
    private boolean isCallerActiveAdminOrDelegate(
            CallerIdentity caller, @Nullable String delegateScope) {
        return mInjector.binderWithCleanCallingIdentity(() -> {
            List<ComponentName> activeAdmins = getActiveAdmins(caller.getUserId());
            if (activeAdmins != null) {
                for (ComponentName admin : activeAdmins) {
                    if (admin.getPackageName().equals(caller.getPackageName())) {
                        return true;
                    }
                }
            }
            return delegateScope != null && isCallerDelegate(caller, delegateScope);
        });
    }
    private ActiveAdmin getActiveAdminForCaller(@Nullable ComponentName who,
            CallerIdentity caller) {
        synchronized (getLockObject()) {
+0 −22
Original line number Diff line number Diff line
@@ -30,8 +30,6 @@ import android.content.Intent;
import android.content.pm.IPackageManager;
import android.content.pm.PackageManagerInternal;
import android.database.ContentObserver;
import android.hardware.usb.UsbManager;
import android.media.IAudioService;
import android.net.IIpConnectivityMetrics;
import android.net.Uri;
import android.os.Bundle;
@@ -215,11 +213,6 @@ public class DevicePolicyManagerServiceTestable extends DevicePolicyManagerServi
            return services.lockSettingsInternal;
        }

        @Override
        IAudioService getIAudioService() {
            return services.iaudioService;
        }

        @Override
        PersistentDataBlockManagerInternal getPersistentDataBlockManagerInternal() {
            return services.persistentDataBlockManagerInternal;
@@ -243,11 +236,6 @@ public class DevicePolicyManagerServiceTestable extends DevicePolicyManagerServi
            return services.lockPatternUtils;
        }

        @Override
        UsbManager getUsbManager() {
            return services.usbManager;
        }

        @Override
        boolean storageManagerIsFileBasedEncryptionEnabled() {
            return services.storageManager.isFileBasedEncryptionEnabled();
@@ -379,21 +367,11 @@ public class DevicePolicyManagerServiceTestable extends DevicePolicyManagerServi
            services.settings.settingsGlobalPutStringForUser(name, value, userHandle);
        }

        @Override
        void settingsSecurePutInt(String name, int value) {
            services.settings.settingsSecurePutInt(name, value);
        }

        @Override
        void settingsGlobalPutInt(String name, int value) {
            services.settings.settingsGlobalPutInt(name, value);
        }

        @Override
        void settingsSecurePutString(String name, String value) {
            services.settings.settingsSecurePutString(name, value);
        }

        @Override
        void settingsGlobalPutString(String name, String value) {
            services.settings.settingsGlobalPutString(name, value);