Merge "Use CS identity to update setting while performing factory reset" am: 84e3b0d051 am: 3cf418cc1d am: d4ca569ea6

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

Change-Id: I97ea36e551d4445475e8edce1a752d380fd03bee
This commit is contained in:
Treehugger Robot
2021-05-21 02:26:17 +00:00
committed by Automerger Merge Worker

View File

@@ -8655,28 +8655,32 @@ public class ConnectivityService extends IConnectivityManager.Stub
public void factoryReset() {
enforceSettingsPermission();
if (mUserManager.hasUserRestriction(UserManager.DISALLOW_NETWORK_RESET)) {
return;
}
final int uid = mDeps.getCallingUid();
final long token = Binder.clearCallingIdentity();
try {
if (mUserManager.hasUserRestrictionForUser(UserManager.DISALLOW_NETWORK_RESET,
UserHandle.getUserHandleForUid(uid))) {
return;
}
final IpMemoryStore ipMemoryStore = IpMemoryStore.getMemoryStore(mContext);
ipMemoryStore.factoryReset();
// Turn airplane mode off
setAirplaneMode(false);
// restore private DNS settings to default mode (opportunistic)
if (!mUserManager.hasUserRestrictionForUser(UserManager.DISALLOW_CONFIG_PRIVATE_DNS,
UserHandle.getUserHandleForUid(uid))) {
ConnectivitySettingsManager.setPrivateDnsMode(mContext,
PRIVATE_DNS_MODE_OPPORTUNISTIC);
}
Settings.Global.putString(mContext.getContentResolver(),
ConnectivitySettingsManager.NETWORK_AVOID_BAD_WIFI, null);
} finally {
Binder.restoreCallingIdentity(token);
}
// Turn airplane mode off
setAirplaneMode(false);
// restore private DNS settings to default mode (opportunistic)
if (!mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_PRIVATE_DNS)) {
ConnectivitySettingsManager.setPrivateDnsMode(mContext, PRIVATE_DNS_MODE_OPPORTUNISTIC);
}
Settings.Global.putString(mContext.getContentResolver(),
ConnectivitySettingsManager.NETWORK_AVOID_BAD_WIFI, null);
}
@Override