am 02006632: Merge "Call a network restricted only if all capabilities are restricted" into lmp-preview-dev
* commit '02006632ef34d70e196a47a3b11ff344005acbb1': Call a network restricted only if all capabilities are restricted
This commit is contained in:
@@ -872,8 +872,13 @@ public class ConnectivityManager {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Removes the NET_CAPABILITY_NOT_RESTRICTED capability from the given
|
* Removes the NET_CAPABILITY_NOT_RESTRICTED capability from the given
|
||||||
* NetworkCapabilities object if it lists any capabilities that are
|
* NetworkCapabilities object if all the capabilities it provides are
|
||||||
* typically provided by retricted networks.
|
* typically provided by restricted networks.
|
||||||
|
*
|
||||||
|
* TODO: consider:
|
||||||
|
* - Moving to NetworkCapabilities
|
||||||
|
* - Renaming it to guessRestrictedCapability and make it set the
|
||||||
|
* restricted capability bit in addition to clearing it.
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
public static void maybeMarkCapabilitiesRestricted(NetworkCapabilities nc) {
|
public static void maybeMarkCapabilitiesRestricted(NetworkCapabilities nc) {
|
||||||
@@ -881,13 +886,22 @@ public class ConnectivityManager {
|
|||||||
switch (capability.intValue()) {
|
switch (capability.intValue()) {
|
||||||
case NetworkCapabilities.NET_CAPABILITY_CBS:
|
case NetworkCapabilities.NET_CAPABILITY_CBS:
|
||||||
case NetworkCapabilities.NET_CAPABILITY_DUN:
|
case NetworkCapabilities.NET_CAPABILITY_DUN:
|
||||||
|
case NetworkCapabilities.NET_CAPABILITY_EIMS:
|
||||||
case NetworkCapabilities.NET_CAPABILITY_FOTA:
|
case NetworkCapabilities.NET_CAPABILITY_FOTA:
|
||||||
case NetworkCapabilities.NET_CAPABILITY_IA:
|
case NetworkCapabilities.NET_CAPABILITY_IA:
|
||||||
case NetworkCapabilities.NET_CAPABILITY_IMS:
|
case NetworkCapabilities.NET_CAPABILITY_IMS:
|
||||||
|
case NetworkCapabilities.NET_CAPABILITY_RCS:
|
||||||
|
case NetworkCapabilities.NET_CAPABILITY_XCAP:
|
||||||
|
continue;
|
||||||
|
default:
|
||||||
|
// At least one capability usually provided by unrestricted
|
||||||
|
// networks. Conclude that this network is unrestricted.
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// All the capabilities are typically provided by restricted networks.
|
||||||
|
// Conclude that this network is restricted.
|
||||||
nc.removeNetworkCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED);
|
nc.removeNetworkCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED);
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private NetworkCapabilities networkCapabilitiesForFeature(int networkType, String feature) {
|
private NetworkCapabilities networkCapabilitiesForFeature(int networkType, String feature) {
|
||||||
|
|||||||
Reference in New Issue
Block a user