Merge "Separate the experimental DHCP features setting in IpClientIntegrationTest." am: 3d03021c8c am: a99c09fe2a am: 65abb6954d
Original change: https://android-review.googlesource.com/c/platform/packages/modules/NetworkStack/+/1623670
Change-Id: Idfef17a9cec184f4cac67f4abd56f8bebbe404c4
diff --git a/Android.bp b/Android.bp
index 2daa1d4..a623101 100644
--- a/Android.bp
+++ b/Android.bp
@@ -45,10 +45,6 @@
default_applicable_licenses: ["Android-Apache-2.0"],
}
-// Whether to enable the targets in this file that target current SDKs.
-// Set to false in branches like mainline-prod where API classes are too old to build current code.
-enable_current_sdk_targets = false
-
java_defaults {
name: "NetworkStackDevApiLevel",
min_sdk_version: "29",
@@ -121,7 +117,6 @@
// integer so if the next SDK release happens to use that integer, we don't need to rename them.
java_library {
name: "NetworkStackApi31Shims",
- enabled: enable_current_sdk_targets,
defaults: ["NetworkStackShimsDefaults"],
srcs: [
"apishim/31/**/*.java",
@@ -141,7 +136,6 @@
// called directly by the networkstack code.
java_library {
name: "NetworkStackApiCurrentShims",
- enabled: enable_current_sdk_targets,
defaults: ["NetworkStackShimsDefaults"],
static_libs: [
"NetworkStackShimsCommon",
@@ -209,7 +203,6 @@
],
static_libs: ["NetworkStackApiCurrentShims"],
manifest: "AndroidManifestBase.xml",
- enabled: enable_current_sdk_targets,
visibility: [
"//frameworks/base/tests/net/integration",
"//packages/modules/Connectivity/Tethering/tests/integration",
@@ -277,7 +270,6 @@
// The InProcessNetworkStack goes together with the PlatformCaptivePortalLogin, which replaces
// the default CaptivePortalLogin.
required: ["PlatformNetworkPermissionConfig", "PlatformCaptivePortalLogin"],
- enabled: enable_current_sdk_targets,
}
// Pre-merge the AndroidManifest for NetworkStackNext, so that its manifest can be merged on top
@@ -285,8 +277,7 @@
name: "NetworkStackNextManifestBase",
defaults: ["NetworkStackAppDefaults", "NetworkStackDevApiLevel"],
static_libs: ["NetworkStackApiCurrentLib"],
- manifest: "AndroidManifest.xml",
- enabled: enable_current_sdk_targets,
+ manifest: "AndroidManifest.xml"
}
// NetworkStack build targeting the current API release, for testing on in-development SDK
@@ -298,7 +289,6 @@
manifest: "AndroidManifest_Next.xml",
// The permission configuration *must* be included to ensure security of the device
required: ["NetworkPermissionConfig"],
- enabled: enable_current_sdk_targets,
}
// Updatable network stack for finalized API
diff --git a/AndroidManifest_Next.xml b/AndroidManifest_Next.xml
index 02fcb64..c8fdcac 100644
--- a/AndroidManifest_Next.xml
+++ b/AndroidManifest_Next.xml
@@ -17,6 +17,6 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.networkstack"
android:sharedUserId="android.uid.networkstack"
- android:versionCode="300000000"
- android:versionName="R-next">
+ android:versionCode="310000000"
+ android:versionName="S-next">
</manifest>
diff --git a/TEST_MAPPING b/TEST_MAPPING
index 178026f..e5eacf1 100644
--- a/TEST_MAPPING
+++ b/TEST_MAPPING
@@ -40,7 +40,8 @@
// We must specify at least one module here or the tests won't run. Use the same set as CTS
// so in theory the infra would not need to reinstall/reboot devices to run both.
{
- "name": "NetworkStackTests[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]"
+ // TODO: add back tethering when it is updatable in this branch
+ "name": "NetworkStackTests[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex]"
}
],
"imports": [
diff --git a/common/moduleutils/Android.bp b/common/moduleutils/Android.bp
index 5d1c9e3..57829cf 100644
--- a/common/moduleutils/Android.bp
+++ b/common/moduleutils/Android.bp
@@ -39,6 +39,8 @@
],
visibility: [
"//frameworks/base/services/net",
+ "//frameworks/base/packages/Connectivity/service",
+ "//packages/modules/Connectivity/service",
]
}
diff --git a/common/networkstackclient/Android.bp b/common/networkstackclient/Android.bp
index 96ff315..633424d 100644
--- a/common/networkstackclient/Android.bp
+++ b/common/networkstackclient/Android.bp
@@ -160,10 +160,10 @@
"networkstack-aidl-interfaces-V10-java",
],
visibility: [
- "//frameworks/base/packages/Tethering",
+ "//frameworks/base/packages/Connectivity/service",
"//packages/modules/Connectivity/Tethering",
+ "//packages/modules/Connectivity/service",
"//frameworks/base/services/net",
- "//frameworks/opt/net/wifi/service",
"//packages/modules/NetworkStack",
],
apex_available: [
diff --git a/src/android/net/dhcp/DhcpClient.java b/src/android/net/dhcp/DhcpClient.java
index 5f77128..8e0e9d3 100644
--- a/src/android/net/dhcp/DhcpClient.java
+++ b/src/android/net/dhcp/DhcpClient.java
@@ -97,9 +97,9 @@
import com.android.internal.util.MessageUtils;
import com.android.internal.util.State;
import com.android.internal.util.StateMachine;
-import com.android.internal.util.TrafficStatsConstants;
import com.android.internal.util.WakeupMessage;
import com.android.net.module.util.DeviceConfigUtils;
+import com.android.net.module.util.NetworkStackConstants;
import com.android.net.module.util.PacketReader;
import com.android.networkstack.R;
import com.android.networkstack.apishim.CaptivePortalDataShimImpl;
@@ -611,7 +611,7 @@
private boolean initUdpSocket() {
final int oldTag = TrafficStats.getAndSetThreadStatsTag(
- TrafficStatsConstants.TAG_SYSTEM_DHCP);
+ NetworkStackConstants.TAG_SYSTEM_DHCP);
try {
mUdpSock = Os.socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
SocketUtils.bindSocketToInterface(mUdpSock, mIfaceName);
diff --git a/src/android/net/dhcp/DhcpServer.java b/src/android/net/dhcp/DhcpServer.java
index 3acd76e..3465e72 100644
--- a/src/android/net/dhcp/DhcpServer.java
+++ b/src/android/net/dhcp/DhcpServer.java
@@ -33,12 +33,12 @@
import static android.system.OsConstants.SO_BROADCAST;
import static android.system.OsConstants.SO_REUSEADDR;
-import static com.android.internal.util.TrafficStatsConstants.TAG_SYSTEM_DHCP_SERVER;
import static com.android.net.module.util.Inet4AddressUtils.getBroadcastAddress;
import static com.android.net.module.util.Inet4AddressUtils.getPrefixMaskAsInet4Address;
import static com.android.net.module.util.NetworkStackConstants.INFINITE_LEASE;
import static com.android.net.module.util.NetworkStackConstants.IPV4_ADDR_ALL;
import static com.android.net.module.util.NetworkStackConstants.IPV4_ADDR_ANY;
+import static com.android.net.module.util.NetworkStackConstants.TAG_SYSTEM_DHCP_SERVER;
import static com.android.server.util.PermissionUtil.enforceNetworkStackCallingPermission;
import static java.lang.Integer.toUnsignedLong;
diff --git a/src/com/android/networkstack/util/DnsUtils.java b/src/com/android/networkstack/util/DnsUtils.java
index 83f2daf..622f56a 100644
--- a/src/com/android/networkstack/util/DnsUtils.java
+++ b/src/com/android/networkstack/util/DnsUtils.java
@@ -29,7 +29,7 @@
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import com.android.internal.util.TrafficStatsConstants;
+import com.android.net.module.util.NetworkStackConstants;
import com.android.server.connectivity.NetworkMonitor.DnsLogFunc;
import java.net.InetAddress;
@@ -126,7 +126,7 @@
// look at the tag at all. Given that this is a library, the tag should be passed in by the
// caller.
final int oldTag = TrafficStats.getAndSetThreadStatsTag(
- TrafficStatsConstants.TAG_SYSTEM_PROBE);
+ NetworkStackConstants.TAG_SYSTEM_PROBE);
if (type == TYPE_ADDRCONFIG) {
dnsResolver.query(network, host, flag, r -> r.run(), null /* cancellationSignal */,
diff --git a/src/com/android/server/connectivity/NetworkMonitor.java b/src/com/android/server/connectivity/NetworkMonitor.java
index b4a3ae9..94be13e 100755
--- a/src/com/android/server/connectivity/NetworkMonitor.java
+++ b/src/com/android/server/connectivity/NetworkMonitor.java
@@ -161,8 +161,8 @@
import com.android.internal.util.RingBufferIndices;
import com.android.internal.util.State;
import com.android.internal.util.StateMachine;
-import com.android.internal.util.TrafficStatsConstants;
import com.android.net.module.util.DeviceConfigUtils;
+import com.android.net.module.util.NetworkStackConstants;
import com.android.networkstack.NetworkStackNotifier;
import com.android.networkstack.R;
import com.android.networkstack.apishim.CaptivePortalDataShimImpl;
@@ -2463,7 +2463,7 @@
String redirectUrl = null;
final Stopwatch probeTimer = new Stopwatch().start();
final int oldTag = TrafficStats.getAndSetThreadStatsTag(
- TrafficStatsConstants.TAG_SYSTEM_PROBE);
+ NetworkStackConstants.TAG_SYSTEM_PROBE);
try {
// Follow redirects for PAC probes as such probes verify connectivity by fetching the
// PAC proxy file, which may be configured behind a redirect.
diff --git a/tests/integration/Android.bp b/tests/integration/Android.bp
index 2cffc3d..875b089 100644
--- a/tests/integration/Android.bp
+++ b/tests/integration/Android.bp
@@ -87,7 +87,6 @@
certificate: "networkstack",
platform_apis: true,
test_suites: ["device-tests"],
- enabled: false, // Disabled in mainline-prod
}
// The static lib needs to be jarjared by each module so they do not conflict with each other
diff --git a/tests/unit/Android.bp b/tests/unit/Android.bp
index e308b96..e673c5a 100644
--- a/tests/unit/Android.bp
+++ b/tests/unit/Android.bp
@@ -54,11 +54,13 @@
min_sdk_version: "29",
srcs: [], // TODO: tests that only apply to the current, non-stable API can be added here
test_suites: ["general-tests"],
- test_mainline_modules: ["CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex"],
+ test_mainline_modules: [
+ "CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex",
+ "CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex"
+ ],
defaults: ["NetworkStackTestsDefaults"],
static_libs: ["NetworkStackApiCurrentLib"],
compile_multilib: "both", // Workaround for b/147785146 for mainline-presubmit
- enabled: false, // Disabled in mainline-prod
}
// Library containing the unit tests. This is used by the coverage test target to pull in the
@@ -81,7 +83,10 @@
min_sdk_version: "29",
target_sdk_version: "30",
test_suites: ["general-tests", "mts"],
- test_mainline_modules: ["CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex"],
+ test_mainline_modules: [
+ "CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex",
+ "CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex"
+ ],
defaults: ["NetworkStackTestsDefaults"],
static_libs: ["NetworkStackApiStableLib"],
compile_multilib: "both",