summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRemi NGUYEN VAN <reminv@google.com>2020-05-29 22:09:13 +0000
committerRemi NGUYEN VAN <reminv@google.com>2020-06-01 01:43:58 +0000
commit2d4d2efadde1352cd4dac3bc8d592eb2f2da8dbc (patch)
treebc666a6fa941674b31e19493cbeb04b3063d5330
parent8d810d8e61851b2dd6ed13b9514a8e12794c381a (diff)
downloadethernet-2d4d2efadde1352cd4dac3bc8d592eb2f2da8dbc.tar.gz
Add TRANSPORT_TEST to test ethernet interfacesandroid11-dev
Because they operate on test interfaces, ethernet interfaces included with setIncludeTestInterfaces should have TRANSPORT_TEST. Bug: 156319532 Test: atest CaptivePortalApiTest Original-Change: https://android-review.googlesource.com/1318214 Merged-In: Ife3eab06432cabf3ee626de49abc31c8349b4316 Change-Id: Ife3eab06432cabf3ee626de49abc31c8349b4316
-rw-r--r--java/com/android/server/ethernet/EthernetTracker.java16
1 files changed, 12 insertions, 4 deletions
diff --git a/java/com/android/server/ethernet/EthernetTracker.java b/java/com/android/server/ethernet/EthernetTracker.java
index d37e0c9..d7fd408 100644
--- a/java/com/android/server/ethernet/EthernetTracker.java
+++ b/java/com/android/server/ethernet/EthernetTracker.java
@@ -70,6 +70,8 @@ final class EthernetTracker {
private final static String TAG = EthernetTracker.class.getSimpleName();
private final static boolean DBG = EthernetNetworkFactory.DBG;
+ private static final String TEST_IFACE_REGEXP = TEST_TAP_PREFIX + "\\d+";
+
/**
* Interface names we track. This is a product-dependent regular expression, plus,
* if setIncludeTestInterfaces is true, any test interfaces.
@@ -298,7 +300,8 @@ final class EthernetTracker {
// Try to resolve using mac address
nc = mNetworkCapabilities.get(hwAddress);
if (nc == null) {
- nc = createDefaultNetworkCapabilities();
+ final boolean isTestIface = iface.matches(TEST_IFACE_REGEXP);
+ nc = createDefaultNetworkCapabilities(isTestIface);
}
}
@@ -457,15 +460,20 @@ final class EthernetTracker {
}
}
- private static NetworkCapabilities createDefaultNetworkCapabilities() {
+ private static NetworkCapabilities createDefaultNetworkCapabilities(boolean isTestIface) {
NetworkCapabilities nc = createNetworkCapabilities(false /* clear default capabilities */);
- nc.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
nc.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED);
nc.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_METERED);
nc.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_ROAMING);
nc.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_CONGESTED);
nc.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_SUSPENDED);
+ if (isTestIface) {
+ nc.addTransportType(NetworkCapabilities.TRANSPORT_TEST);
+ } else {
+ nc.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
+ }
+
return nc;
}
@@ -610,7 +618,7 @@ final class EthernetTracker {
final String match = mContext.getResources().getString(
com.android.internal.R.string.config_ethernet_iface_regex);
mIfaceMatch = mIncludeTestInterfaces
- ? "(" + match + "|" + TEST_TAP_PREFIX + "\\d+)"
+ ? "(" + match + "|" + TEST_IFACE_REGEXP + ")"
: match;
Log.d(TAG, "Interface match regexp set to '" + mIfaceMatch + "'");
}