summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKen Chen <cken@google.com>2023-01-17 23:51:26 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-01-17 23:51:26 +0000
commit66552adb64292641e355b6cbe83b7a881bba2e2b (patch)
treee25e99fb7a8e972add3355dcef95f3def21bd932
parentf5877d2b47a92a9e71f89f388a29a5e4b2906f8e (diff)
parent7c5b973df2b91cec79f15928207c0cd10d9fba15 (diff)
downloadnetd-66552adb64292641e355b6cbe83b7a881bba2e2b.tar.gz
Allow DNS lookup in no default network case am: fd22f385a7 am: 7c5b973df2
Original change: https://android-review.googlesource.com/c/platform/system/netd/+/2389516 Change-Id: I466a3907eac6cf31ff5cdce75e77ca4b506ec393 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--server/NetworkController.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/server/NetworkController.cpp b/server/NetworkController.cpp
index 082eaf84..3e38d48e 100644
--- a/server/NetworkController.cpp
+++ b/server/NetworkController.cpp
@@ -825,7 +825,10 @@ int NetworkController::setNetworkAllowlist(
bool NetworkController::isUidAllowed(unsigned netId, uid_t uid) const {
const ScopedRLock lock(mRWLock);
Network* network = getNetworkLocked(netId);
- if (network && network->isUidAllowed(uid)) {
+ // Exempt when no netId is specified and there is no default network, so that apps or tests can
+ // do DNS lookups for hostnames in etc/hosts.
+ if ((network && network->isUidAllowed(uid)) ||
+ (netId == NETID_UNSET && mDefaultNetId == NETID_UNSET)) {
return true;
}
return false;