Clear the information of the underlying network

The NetworkCapabilities and LinkProperties of the underlying
network should be cleared when there is a new underlying network.

Currently, Vpn.java only clear both NetworkCapabilities and
LinkProperties of the underlying when onLost() is called or when
the VPN is disconnected. But onLost() won't be fired if the device
is connected to mobile data first, then connects to wifi later.
For this case, both mUnderlyingNetworkCapabilities and mUnderlyingLinkProperties keep the old value until onLinkPropertiesChanged() and onNetworkCapabilitiesChanged() are
called.

Test: atest FrameworksNetTests
Change-Id: I5caa1e0217190062eb84a064bb1bb3aff725dd66
This commit is contained in:
lucaslin
2023-02-24 10:05:56 +00:00
committed by Lucas Lin
parent b963d9a008
commit fae5b6988b

View File

@@ -3254,6 +3254,8 @@ public class Vpn {
}
mActiveNetwork = network;
mUnderlyingLinkProperties = null;
mUnderlyingNetworkCapabilities = null;
mRetryCount = 0;
startOrMigrateIkeSession(network);