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

Commit 0bac26b6 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Policy transparency when DISALLOW_FACTORY_RESET prevents OEM unlock." into oc-mr1-dev

parents 194638ac 2ca3017f
Loading
Loading
Loading
Loading
+14 −6
Original line number Diff line number Diff line
@@ -54,6 +54,7 @@ import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.StrictMode;
import android.os.SystemProperties;
import android.os.UserHandle;
import android.os.UserManager;
import android.os.storage.IStorageManager;
import android.provider.SearchIndexableResource;
@@ -1054,8 +1055,19 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
        return context.getSystemService(Context.OEM_LOCK_SERVICE) != null;
    }

    /**
     * Returns whether OEM unlock is allowed by the user and carrier.
     *
     * This does not take into account any restrictions imposed by the device policy.
     */
    private boolean isOemUnlockAllowedByUserAndCarrier() {
        final UserHandle userHandle = UserHandle.of(UserHandle.myUserId());
        return mOemLockManager.isOemUnlockAllowedByCarrier()
                && !mUm.hasBaseUserRestriction(UserManager.DISALLOW_FACTORY_RESET, userHandle);
    }

    private boolean enableOemUnlockPreference() {
        return !isBootloaderUnlocked() && mOemLockManager.canUserAllowOemUnlock();
        return !isBootloaderUnlocked() && isOemUnlockAllowedByUserAndCarrier();
    }

    private void updateOemUnlockOptions() {
@@ -1069,10 +1081,6 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
                // Check restriction, disable mEnableOemUnlock and apply policy transparency.
                mEnableOemUnlock.checkRestrictionAndSetDisabled(UserManager.DISALLOW_FACTORY_RESET);
            }
            if (mEnableOemUnlock.isEnabled()) {
                // Check restriction, disable mEnableOemUnlock and apply policy transparency.
                mEnableOemUnlock.checkRestrictionAndSetDisabled(UserManager.DISALLOW_OEM_UNLOCK);
            }
        }
    }

@@ -2834,7 +2842,7 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
                oemUnlockSummary = R.string.oem_unlock_enable_disabled_summary_bootloader_unlocked;
            } else if (isSimLockedDevice()) {
                oemUnlockSummary = R.string.oem_unlock_enable_disabled_summary_sim_locked_device;
            } else if (!mOemLockManager.canUserAllowOemUnlock()) {
            } else if (!isOemUnlockAllowedByUserAndCarrier()) {
                // If the device isn't SIM-locked but OEM unlock is disallowed by some party, this
                // means either some other carrier restriction is in place or the device hasn't been
                // able to confirm which restrictions (SIM-lock or otherwise) apply.
+0 −3
Original line number Diff line number Diff line
@@ -32,9 +32,6 @@ public class OemLockManager {
        return false;
    }

    public boolean canUserAllowOemUnlock() {
        return true;
    }
    public boolean isOemUnlockAllowed() {
        return false;
    }