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

Commit 96a14ff0 authored by Bartosz Fabianowski's avatar Bartosz Fabianowski Committed by android-build-merger
Browse files

Merge "Fix "max failed login attempts" disclosure" into oc-dr1-dev

am: 262aacd3

Change-Id: I66fbaf0f98dd22679068f1fdefce0e7dbfc81939
parents 7edaa603 262aacd3
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -45,6 +45,13 @@ public interface DevicePolicyManagerWrapper {
     */
    int getMaximumFailedPasswordsForWipe(@Nullable ComponentName admin, int userHandle);

    /**
     * Calls {@code DevicePolicyManager.getDeviceOwnerComponentOnCallingUser()}.
     *
     * @see android.app.admin.DevicePolicyManager#getDeviceOwnerComponentOnCallingUser
     */
    ComponentName getDeviceOwnerComponentOnCallingUser();

    /**
     * Calls {@code DevicePolicyManager.getDeviceOwnerComponentOnAnyUser()}.
     *
+5 −0
Original line number Diff line number Diff line
@@ -42,6 +42,11 @@ public class DevicePolicyManagerWrapperImpl implements DevicePolicyManagerWrappe
        return mDpm.getMaximumFailedPasswordsForWipe(admin, userHandle);
    }

    @Override
    public ComponentName getDeviceOwnerComponentOnCallingUser() {
        return mDpm.getDeviceOwnerComponentOnCallingUser();
    }

    @Override
    public ComponentName getDeviceOwnerComponentOnAnyUser() {
        return mDpm.getDeviceOwnerComponentOnAnyUser();
+6 −3
Original line number Diff line number Diff line
@@ -158,11 +158,14 @@ public class EnterprisePrivacyFeatureProviderImpl implements EnterprisePrivacyFe

    @Override
    public int getMaximumFailedPasswordsBeforeWipeInCurrentUser() {
        final ComponentName profileOwner = mDpm.getProfileOwnerAsUser(MY_USER_ID);
        if (profileOwner == null) {
        ComponentName owner = mDpm.getDeviceOwnerComponentOnCallingUser();
        if (owner == null) {
            owner = mDpm.getProfileOwnerAsUser(MY_USER_ID);
        }
        if (owner == null) {
            return 0;
        }
        return mDpm.getMaximumFailedPasswordsForWipe(profileOwner, MY_USER_ID);
        return mDpm.getMaximumFailedPasswordsForWipe(owner, MY_USER_ID);
    }

    @Override
+5 −0
Original line number Diff line number Diff line
@@ -231,6 +231,7 @@ public final class EnterprisePrivacyFeatureProviderImplTest {

    @Test
    public void testGetMaximumFailedPasswordsForWipeInCurrentUser() {
        when(mDevicePolicyManager.getDeviceOwnerComponentOnCallingUser()).thenReturn(null);
        when(mDevicePolicyManager.getProfileOwnerAsUser(MY_USER_ID)).thenReturn(null);
        when(mDevicePolicyManager.getMaximumFailedPasswordsForWipe(OWNER, MY_USER_ID))
                .thenReturn(10);
@@ -238,6 +239,10 @@ public final class EnterprisePrivacyFeatureProviderImplTest {

        when(mDevicePolicyManager.getProfileOwnerAsUser(MY_USER_ID)).thenReturn(OWNER);
        assertThat(mProvider.getMaximumFailedPasswordsBeforeWipeInCurrentUser()).isEqualTo(10);

        when(mDevicePolicyManager.getDeviceOwnerComponentOnCallingUser()).thenReturn(OWNER);
        when(mDevicePolicyManager.getProfileOwnerAsUser(MY_USER_ID)).thenReturn(null);
        assertThat(mProvider.getMaximumFailedPasswordsBeforeWipeInCurrentUser()).isEqualTo(10);
    }

    @Test