diff --git a/service/src/com/android/server/ConnectivityService.java b/service/src/com/android/server/ConnectivityService.java index d6ef6df76b..008f8664a5 100644 --- a/service/src/com/android/server/ConnectivityService.java +++ b/service/src/com/android/server/ConnectivityService.java @@ -10684,8 +10684,11 @@ public class ConnectivityService extends IConnectivityManager.Stub } private boolean canNetworkBeRateLimited(@NonNull final NetworkAgentInfo networkAgent) { - if (!networkAgent.networkCapabilities.hasCapability(NET_CAPABILITY_INTERNET)) { - // rate limits only apply to networks that provide internet connectivity. + final NetworkCapabilities agentCaps = networkAgent.networkCapabilities; + // Only test networks (they cannot hold NET_CAPABILITY_INTERNET) and networks that provide + // internet connectivity can be rate limited. + if (!agentCaps.hasCapability(NET_CAPABILITY_INTERNET) && !agentCaps.hasTransport( + TRANSPORT_TEST)) { return false; }