Wipe the data in IpMemoryStore database upon network factory reset.

Bug:128499160
Test: manual
Test: atest FrameworksNetTests NetworkStackTests
Merged-In: I13ad04454e638905b74dd42a1c83266c7c37652f
Merged-In: Ia13ff10a57c2043f6676976f23ecfb2d2a9a6ef0
(cherry picked from commit ef6ef68c48b869aa9960edd81c73f3d31391ae26)

Change-Id: I42507451d55a620c0e2d271c895ad158f348c1a5
This commit is contained in:
Xiao Ma
2019-05-27 18:22:55 -07:00
parent d8bc2b5a15
commit fbb2a4935c
2 changed files with 11 additions and 0 deletions

View File

@@ -77,6 +77,7 @@ import android.net.INetworkStatsService;
import android.net.ISocketKeepaliveCallback; import android.net.ISocketKeepaliveCallback;
import android.net.ITetheringEventCallback; import android.net.ITetheringEventCallback;
import android.net.InetAddresses; import android.net.InetAddresses;
import android.net.IpMemoryStore;
import android.net.IpPrefix; import android.net.IpPrefix;
import android.net.LinkProperties; import android.net.LinkProperties;
import android.net.LinkProperties.CompareResult; import android.net.LinkProperties.CompareResult;
@@ -6888,6 +6889,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
final int userId = UserHandle.getCallingUserId(); final int userId = UserHandle.getCallingUserId();
final IpMemoryStore ipMemoryStore = IpMemoryStore.getMemoryStore(mContext);
ipMemoryStore.factoryReset();
// Turn airplane mode off // Turn airplane mode off
setAirplaneMode(false); setAirplaneMode(false);

View File

@@ -321,4 +321,11 @@ public class IpMemoryStoreTest {
eq(TEST_OTHER_DATA_NAME), any()); eq(TEST_OTHER_DATA_NAME), any());
assertEquals(TEST_NETWORK_ATTRIBUTES, new NetworkAttributes(mNapCaptor.getValue())); assertEquals(TEST_NETWORK_ATTRIBUTES, new NetworkAttributes(mNapCaptor.getValue()));
} }
@Test
public void testFactoryReset() throws RemoteException {
startIpMemoryStore(true /* supplyService */);
mStore.factoryReset();
verify(mMockService, times(1)).factoryReset();
}
} }