[DO NOT MERGE] Preserve FRP lock if wiped during SUW
Guard against FRP attacks by keeping the persistent data block intact, if a factory reset has been issued during SUW. Bug: 25290269 Change-Id: Id26b4c10235ad126632b71875592a4fa70a39b24
This commit is contained in:
@@ -20,6 +20,7 @@ import android.app.ProgressDialog;
|
||||
import android.content.Context;
|
||||
import android.content.pm.ActivityInfo;
|
||||
import android.os.AsyncTask;
|
||||
import android.provider.Settings;
|
||||
import android.service.persistentdata.PersistentDataBlockManager;
|
||||
import com.android.internal.os.storage.ExternalStorageFormatter;
|
||||
|
||||
@@ -62,8 +63,12 @@ public class MasterClearConfirm extends Fragment {
|
||||
final PersistentDataBlockManager pdbManager = (PersistentDataBlockManager)
|
||||
getActivity().getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE);
|
||||
|
||||
if (pdbManager != null && !pdbManager.getOemUnlockEnabled()) {
|
||||
// if OEM unlock is enabled, this will be wiped during FR process.
|
||||
if (pdbManager != null && !pdbManager.getOemUnlockEnabled() &&
|
||||
Settings.Global.getInt(getActivity().getContentResolver(),
|
||||
Settings.Global.DEVICE_PROVISIONED, 0) != 0) {
|
||||
// if OEM unlock is enabled, this will be wiped during FR process. If disabled, it
|
||||
// will be wiped here, unless the device is still being provisioned, in which case
|
||||
// the persistent data block will be preserved.
|
||||
final ProgressDialog progressDialog = getProgressDialog();
|
||||
progressDialog.show();
|
||||
|
||||
|
Reference in New Issue
Block a user