Explicitly require root privs for tests requiring it

These tests currently require root privs to interact with netd:
  resolv_integration_test
  libnetdbpf_test
  netd_unit_test
  netd_integration_test

Bug: 134891412
Test: atest
Change-Id: I3e286fd7e7603e30b4f4d655fe311c35e05fbc78
diff --git a/libnetdbpf/Android.bp b/libnetdbpf/Android.bp
index bd25535..b5fefac 100644
--- a/libnetdbpf/Android.bp
+++ b/libnetdbpf/Android.bp
@@ -35,6 +35,7 @@
 cc_test {
     name: "libnetdbpf_test",
     test_suites: ["device-tests"],
+    require_root: true,
     srcs: [
         "BpfNetworkStatsTest.cpp",
     ],
diff --git a/resolv/Android.bp b/resolv/Android.bp
index 0b14ffe..91ede75 100644
--- a/resolv/Android.bp
+++ b/resolv/Android.bp
@@ -142,6 +142,7 @@
 cc_test {
     name: "resolv_integration_test",
     test_suites: ["device-tests"],
+    require_root: true,
     defaults: ["netd_defaults"],
     srcs: [
         "dns_responder/dns_responder.cpp",
diff --git a/resolv/dns_responder/dns_responder_client.cpp b/resolv/dns_responder/dns_responder_client.cpp
index fd2a89c..34cfdda 100644
--- a/resolv/dns_responder/dns_responder_client.cpp
+++ b/resolv/dns_responder/dns_responder_client.cpp
@@ -156,6 +156,9 @@
     // binder setup
     auto binder = android::defaultServiceManager()->getService(android::String16("netd"));
     mNetdSrv = android::interface_cast<android::net::INetd>(binder);
+    if (mNetdSrv == nullptr) {
+        LOG(FATAL) << "Can't connect to service 'netd'. Missing root privileges? uid=" << getuid();
+    }
 
     auto resolvBinder =
             android::defaultServiceManager()->getService(android::String16("dnsresolver"));
diff --git a/resolv/dnsresolver_binder_test.cpp b/resolv/dnsresolver_binder_test.cpp
index 7999707..a77e6ec 100644
--- a/resolv/dnsresolver_binder_test.cpp
+++ b/resolv/dnsresolver_binder_test.cpp
@@ -67,6 +67,7 @@
         if (binder != nullptr) {
             mDnsResolver = android::interface_cast<IDnsResolver>(binder);
         }
+        // This could happen when the test isn't running as root, or if netd isn't running.
         assert(nullptr != mDnsResolver.get());
         // Create cache for test
         mDnsResolver->createNetworkCache(TEST_NETID);
diff --git a/server/Android.bp b/server/Android.bp
index dbb5372..bf2c1dd 100644
--- a/server/Android.bp
+++ b/server/Android.bp
@@ -207,6 +207,7 @@
     name: "netd_unit_test",
     defaults: ["netd_defaults"],
     test_suites: ["device-tests"],
+    require_root: true,
     include_dirs: [
         "system/netd/include",
         "system/netd/server/binder",
diff --git a/tests/Android.bp b/tests/Android.bp
index d02ac39..d6baf7a 100644
--- a/tests/Android.bp
+++ b/tests/Android.bp
@@ -50,6 +50,7 @@
 cc_test {
     name: "netd_integration_test",
     test_suites: ["device-tests"],
+    require_root: true,
     defaults: ["netd_defaults"],
     srcs: [
         ":netd_integration_test_shared",