diff options
author | Remi NGUYEN VAN <reminv@google.com> | 2020-05-29 22:09:13 +0000 |
---|---|---|
committer | Remi NGUYEN VAN <reminv@google.com> | 2020-06-01 01:43:58 +0000 |
commit | 2d4d2efadde1352cd4dac3bc8d592eb2f2da8dbc (patch) | |
tree | bc666a6fa941674b31e19493cbeb04b3063d5330 | |
parent | 8d810d8e61851b2dd6ed13b9514a8e12794c381a (diff) | |
download | ethernet-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.java | 16 |
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 + "'"); } |