From e5b9cf8cb96c43df06392d536b87bb84589911ab Mon Sep 17 00:00:00 2001 From: lucaslin Date: Mon, 18 Jan 2021 11:58:24 +0800 Subject: Use function inside NetdUtils instead of NetworkManagementService TestNetworkService will be a part of mainline module, to prevent using @hide API of NetworkManagementService in TestNetworkService, use function inside NetdUtils instead. Bug: 170598012 Test: atest CtsNetTestCasesLatestSdk Change-Id: I738066ce2f1bcd616dc582a3ff1fd77bcd660c73 --- packages/Connectivity/service/Android.bp | 1 + services/core/java/com/android/server/TestNetworkService.java | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/Connectivity/service/Android.bp b/packages/Connectivity/service/Android.bp index c8f3bd3666e4..8fc318180778 100644 --- a/packages/Connectivity/service/Android.bp +++ b/packages/Connectivity/service/Android.bp @@ -57,6 +57,7 @@ java_library { static_libs: [ "net-utils-device-common", "net-utils-framework-common", + "netd-client", ], apex_available: [ "//apex_available:platform", diff --git a/services/core/java/com/android/server/TestNetworkService.java b/services/core/java/com/android/server/TestNetworkService.java index e8687e57a07b..f0b678fcb575 100644 --- a/services/core/java/com/android/server/TestNetworkService.java +++ b/services/core/java/com/android/server/TestNetworkService.java @@ -32,6 +32,7 @@ import android.net.NetworkAgent; import android.net.NetworkAgentConfig; import android.net.NetworkCapabilities; import android.net.NetworkProvider; +import android.net.NetworkStack; import android.net.RouteInfo; import android.net.StringNetworkSpecifier; import android.net.TestNetworkInterface; @@ -48,6 +49,7 @@ import android.util.SparseArray; import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; +import com.android.net.module.util.NetdUtils; import java.io.UncheckedIOException; import java.net.Inet4Address; @@ -316,10 +318,10 @@ class TestNetworkService extends ITestNetworkManager.Stub { } try { - // This requires NETWORK_STACK privileges. final long token = Binder.clearCallingIdentity(); try { - mNMS.setInterfaceUp(iface); + NetworkStack.checkNetworkStackPermission(mContext); + NetdUtils.setInterfaceUp(mNetd, iface); } finally { Binder.restoreCallingIdentity(token); } -- cgit v1.2.3-59-g8ed1b