Loading packages/NetworkStack/src/com/android/server/connectivity/NetworkMonitor.java +1 −4 Original line number Original line Diff line number Diff line Loading @@ -247,7 +247,6 @@ public class NetworkMonitor extends StateMachine { private final TelephonyManager mTelephonyManager; private final TelephonyManager mTelephonyManager; private final WifiManager mWifiManager; private final WifiManager mWifiManager; private final ConnectivityManager mCm; private final ConnectivityManager mCm; private final NetworkRequest mDefaultRequest; private final IpConnectivityLog mMetricsLog; private final IpConnectivityLog mMetricsLog; private final Dependencies mDependencies; private final Dependencies mDependencies; Loading Loading @@ -336,7 +335,6 @@ public class NetworkMonitor extends StateMachine { mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); mCm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); mCm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); mDefaultRequest = defaultRequest; // CHECKSTYLE:OFF IndentationCheck // CHECKSTYLE:OFF IndentationCheck addState(mDefaultState); addState(mDefaultState); Loading Loading @@ -486,8 +484,7 @@ public class NetworkMonitor extends StateMachine { } } private boolean isValidationRequired() { private boolean isValidationRequired() { return NetworkMonitorUtils.isValidationRequired( return NetworkMonitorUtils.isValidationRequired(mNetworkCapabilities); mDefaultRequest.networkCapabilities, mNetworkCapabilities); } } Loading services/core/java/com/android/server/ConnectivityService.java +1 −2 Original line number Original line Diff line number Diff line Loading @@ -2640,8 +2640,7 @@ public class ConnectivityService extends IConnectivityManager.Stub } } private boolean networkRequiresValidation(NetworkAgentInfo nai) { private boolean networkRequiresValidation(NetworkAgentInfo nai) { return isValidationRequired( return isValidationRequired(nai.networkCapabilities); mDefaultRequest.networkCapabilities, nai.networkCapabilities); } } private void handleFreshlyValidatedNetwork(NetworkAgentInfo nai) { private void handleFreshlyValidatedNetwork(NetworkAgentInfo nai) { Loading services/net/java/android/net/shared/NetworkMonitorUtils.java +11 −3 Original line number Original line Diff line number Diff line Loading @@ -16,6 +16,11 @@ package android.net.shared; package android.net.shared; import static android.net.NetworkCapabilities.NET_CAPABILITY_INTERNET; import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED; import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_VPN; import static android.net.NetworkCapabilities.NET_CAPABILITY_TRUSTED; import android.content.Context; import android.content.Context; import android.net.NetworkCapabilities; import android.net.NetworkCapabilities; import android.provider.Settings; import android.provider.Settings; Loading Loading @@ -58,9 +63,12 @@ public class NetworkMonitorUtils { * @param dfltNetCap Default requested network capabilities. * @param dfltNetCap Default requested network capabilities. * @param nc Network capabilities of the network to test. * @param nc Network capabilities of the network to test. */ */ public static boolean isValidationRequired( public static boolean isValidationRequired(NetworkCapabilities nc) { NetworkCapabilities dfltNetCap, NetworkCapabilities nc) { // TODO: Consider requiring validation for DUN networks. // TODO: Consider requiring validation for DUN networks. return dfltNetCap.satisfiedByNetworkCapabilities(nc); return nc != null && nc.hasCapability(NET_CAPABILITY_INTERNET) && nc.hasCapability(NET_CAPABILITY_NOT_RESTRICTED) && nc.hasCapability(NET_CAPABILITY_TRUSTED) && nc.hasCapability(NET_CAPABILITY_NOT_VPN); } } } } tests/net/java/com/android/server/ConnectivityServiceTest.java +7 −2 Original line number Original line Diff line number Diff line Loading @@ -1508,6 +1508,12 @@ public class ConnectivityServiceTest { verifyActiveNetwork(TRANSPORT_WIFI); verifyActiveNetwork(TRANSPORT_WIFI); } } @Test public void testRequiresValidation() { assertTrue(NetworkMonitorUtils.isValidationRequired( mCm.getDefaultRequest().networkCapabilities)); } enum CallbackState { enum CallbackState { NONE, NONE, AVAILABLE, AVAILABLE, Loading Loading @@ -4404,8 +4410,7 @@ public class ConnectivityServiceTest { mMockVpn.setUids(ranges); mMockVpn.setUids(ranges); // VPN networks do not satisfy the default request and are automatically validated // VPN networks do not satisfy the default request and are automatically validated // by NetworkMonitor // by NetworkMonitor assertFalse(NetworkMonitorUtils.isValidationRequired( assertFalse(NetworkMonitorUtils.isValidationRequired(vpnNetworkAgent.mNetworkCapabilities)); mCm.getDefaultRequest().networkCapabilities, vpnNetworkAgent.mNetworkCapabilities)); vpnNetworkAgent.setNetworkValid(); vpnNetworkAgent.setNetworkValid(); vpnNetworkAgent.connect(false); vpnNetworkAgent.connect(false); Loading Loading
packages/NetworkStack/src/com/android/server/connectivity/NetworkMonitor.java +1 −4 Original line number Original line Diff line number Diff line Loading @@ -247,7 +247,6 @@ public class NetworkMonitor extends StateMachine { private final TelephonyManager mTelephonyManager; private final TelephonyManager mTelephonyManager; private final WifiManager mWifiManager; private final WifiManager mWifiManager; private final ConnectivityManager mCm; private final ConnectivityManager mCm; private final NetworkRequest mDefaultRequest; private final IpConnectivityLog mMetricsLog; private final IpConnectivityLog mMetricsLog; private final Dependencies mDependencies; private final Dependencies mDependencies; Loading Loading @@ -336,7 +335,6 @@ public class NetworkMonitor extends StateMachine { mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); mCm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); mCm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); mDefaultRequest = defaultRequest; // CHECKSTYLE:OFF IndentationCheck // CHECKSTYLE:OFF IndentationCheck addState(mDefaultState); addState(mDefaultState); Loading Loading @@ -486,8 +484,7 @@ public class NetworkMonitor extends StateMachine { } } private boolean isValidationRequired() { private boolean isValidationRequired() { return NetworkMonitorUtils.isValidationRequired( return NetworkMonitorUtils.isValidationRequired(mNetworkCapabilities); mDefaultRequest.networkCapabilities, mNetworkCapabilities); } } Loading
services/core/java/com/android/server/ConnectivityService.java +1 −2 Original line number Original line Diff line number Diff line Loading @@ -2640,8 +2640,7 @@ public class ConnectivityService extends IConnectivityManager.Stub } } private boolean networkRequiresValidation(NetworkAgentInfo nai) { private boolean networkRequiresValidation(NetworkAgentInfo nai) { return isValidationRequired( return isValidationRequired(nai.networkCapabilities); mDefaultRequest.networkCapabilities, nai.networkCapabilities); } } private void handleFreshlyValidatedNetwork(NetworkAgentInfo nai) { private void handleFreshlyValidatedNetwork(NetworkAgentInfo nai) { Loading
services/net/java/android/net/shared/NetworkMonitorUtils.java +11 −3 Original line number Original line Diff line number Diff line Loading @@ -16,6 +16,11 @@ package android.net.shared; package android.net.shared; import static android.net.NetworkCapabilities.NET_CAPABILITY_INTERNET; import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED; import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_VPN; import static android.net.NetworkCapabilities.NET_CAPABILITY_TRUSTED; import android.content.Context; import android.content.Context; import android.net.NetworkCapabilities; import android.net.NetworkCapabilities; import android.provider.Settings; import android.provider.Settings; Loading Loading @@ -58,9 +63,12 @@ public class NetworkMonitorUtils { * @param dfltNetCap Default requested network capabilities. * @param dfltNetCap Default requested network capabilities. * @param nc Network capabilities of the network to test. * @param nc Network capabilities of the network to test. */ */ public static boolean isValidationRequired( public static boolean isValidationRequired(NetworkCapabilities nc) { NetworkCapabilities dfltNetCap, NetworkCapabilities nc) { // TODO: Consider requiring validation for DUN networks. // TODO: Consider requiring validation for DUN networks. return dfltNetCap.satisfiedByNetworkCapabilities(nc); return nc != null && nc.hasCapability(NET_CAPABILITY_INTERNET) && nc.hasCapability(NET_CAPABILITY_NOT_RESTRICTED) && nc.hasCapability(NET_CAPABILITY_TRUSTED) && nc.hasCapability(NET_CAPABILITY_NOT_VPN); } } } }
tests/net/java/com/android/server/ConnectivityServiceTest.java +7 −2 Original line number Original line Diff line number Diff line Loading @@ -1508,6 +1508,12 @@ public class ConnectivityServiceTest { verifyActiveNetwork(TRANSPORT_WIFI); verifyActiveNetwork(TRANSPORT_WIFI); } } @Test public void testRequiresValidation() { assertTrue(NetworkMonitorUtils.isValidationRequired( mCm.getDefaultRequest().networkCapabilities)); } enum CallbackState { enum CallbackState { NONE, NONE, AVAILABLE, AVAILABLE, Loading Loading @@ -4404,8 +4410,7 @@ public class ConnectivityServiceTest { mMockVpn.setUids(ranges); mMockVpn.setUids(ranges); // VPN networks do not satisfy the default request and are automatically validated // VPN networks do not satisfy the default request and are automatically validated // by NetworkMonitor // by NetworkMonitor assertFalse(NetworkMonitorUtils.isValidationRequired( assertFalse(NetworkMonitorUtils.isValidationRequired(vpnNetworkAgent.mNetworkCapabilities)); mCm.getDefaultRequest().networkCapabilities, vpnNetworkAgent.mNetworkCapabilities)); vpnNetworkAgent.setNetworkValid(); vpnNetworkAgent.setNetworkValid(); vpnNetworkAgent.connect(false); vpnNetworkAgent.connect(false); Loading