Merge "Never satisfy requests with networks that aren't connected."
This commit is contained in:
@@ -7470,10 +7470,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
notifyIfacesChangedForNetworkStats();
|
notifyIfacesChangedForNetworkStats();
|
||||||
networkAgent.networkMonitor().notifyLinkPropertiesChanged(
|
networkAgent.networkMonitor().notifyLinkPropertiesChanged(
|
||||||
new LinkProperties(newLp, true /* parcelSensitiveFields */));
|
new LinkProperties(newLp, true /* parcelSensitiveFields */));
|
||||||
if (networkAgent.everConnected) {
|
|
||||||
notifyNetworkCallbacks(networkAgent, ConnectivityManager.CALLBACK_IP_CHANGED);
|
notifyNetworkCallbacks(networkAgent, ConnectivityManager.CALLBACK_IP_CHANGED);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
mKeepaliveTracker.handleCheckKeepalivesStillValid(networkAgent);
|
mKeepaliveTracker.handleCheckKeepalivesStillValid(networkAgent);
|
||||||
}
|
}
|
||||||
@@ -8732,9 +8730,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
// Gather the list of all relevant agents.
|
// Gather the list of all relevant agents.
|
||||||
final ArrayList<NetworkAgentInfo> nais = new ArrayList<>();
|
final ArrayList<NetworkAgentInfo> nais = new ArrayList<>();
|
||||||
for (final NetworkAgentInfo nai : mNetworkAgentInfos) {
|
for (final NetworkAgentInfo nai : mNetworkAgentInfos) {
|
||||||
if (!nai.everConnected) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
nais.add(nai);
|
nais.add(nai);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -8858,7 +8853,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (final NetworkAgentInfo nai : nais) {
|
for (final NetworkAgentInfo nai : nais) {
|
||||||
if (!nai.everConnected) continue;
|
|
||||||
final boolean oldBackground = oldBgNetworks.contains(nai);
|
final boolean oldBackground = oldBgNetworks.contains(nai);
|
||||||
// Process listen requests and update capabilities if the background state has
|
// Process listen requests and update capabilities if the background state has
|
||||||
// changed for this network. For consistency with previous behavior, send onLost
|
// changed for this network. For consistency with previous behavior, send onLost
|
||||||
@@ -9451,7 +9445,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (NetworkAgentInfo nai : mNetworkAgentInfos) {
|
for (NetworkAgentInfo nai : mNetworkAgentInfos) {
|
||||||
if (nai.everConnected && (activeNetIds.contains(nai.network().netId) || nai.isVPN())) {
|
if (activeNetIds.contains(nai.network().netId) || nai.isVPN()) {
|
||||||
defaultNetworks.add(nai.network);
|
defaultNetworks.add(nai.network);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -983,13 +983,12 @@ public class NetworkAgentInfo implements NetworkRanker.Scoreable {
|
|||||||
|
|
||||||
// Does this network satisfy request?
|
// Does this network satisfy request?
|
||||||
public boolean satisfies(NetworkRequest request) {
|
public boolean satisfies(NetworkRequest request) {
|
||||||
return created &&
|
return everConnected
|
||||||
request.networkCapabilities.satisfiedByNetworkCapabilities(networkCapabilities);
|
&& request.networkCapabilities.satisfiedByNetworkCapabilities(networkCapabilities);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean satisfiesImmutableCapabilitiesOf(NetworkRequest request) {
|
public boolean satisfiesImmutableCapabilitiesOf(NetworkRequest request) {
|
||||||
return created &&
|
return everConnected && request.networkCapabilities.satisfiedByImmutableNetworkCapabilities(
|
||||||
request.networkCapabilities.satisfiedByImmutableNetworkCapabilities(
|
|
||||||
networkCapabilities);
|
networkCapabilities);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user