Use dlopen() and dlsym() for resolver functions
This is a workaround to allow us to use libnetd_resolv.so from
the resolver APEX before b/120661824 is fixed.
Test: builds, boots
Test: system/netd/tests/runtests.sh
Test: atest FrameworksNetTests android.net.cts.ConnectivityManagerTest
Change-Id: I752ae248bb59545b0a4fbc1a7b8c9bcd697a31d4
diff --git a/server/Android.bp b/server/Android.bp
index 1fcb7ee..a4beb2c 100644
--- a/server/Android.bp
+++ b/server/Android.bp
@@ -75,7 +75,6 @@
],
shared_libs: [
"libbpf_android",
- "libnetd_resolv",
"libbase",
"libbinder",
"liblogwrap",
@@ -88,6 +87,9 @@
"netd_aidl_interface-cpp",
"netd_event_listener_interface-cpp",
],
+ header_libs: [
+ "libnetd_resolv_headers",
+ ],
aidl: {
export_aidl_headers: true,
local_include_dirs: ["binder"],
@@ -116,7 +118,6 @@
"liblog",
"liblogwrap",
"libmdnssd",
- "libnetd_resolv",
"libnetdbpf",
"libnetdutils",
"libnetutils",
@@ -131,6 +132,9 @@
static_libs: [
"libnetd_server",
],
+ header_libs: [
+ "libnetd_resolv_headers",
+ ],
srcs: [
"ClatdController.cpp",
"CommandListener.cpp",
@@ -150,6 +154,7 @@
"PhysicalNetwork.cpp",
"PppController.cpp",
"Process.cpp",
+ "ResolvStub.cpp",
"ResolverController.cpp",
"VirtualNetwork.cpp",
"main.cpp",