From: Lennart Poettering Date: Tue, 5 Mar 2024 09:35:40 +0000 (+0100) Subject: resolved: make outselves authoritative for /etc/hosts entries in full X-Git-Tag: v256-rc1~625^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4b91896226b4285da94aad4b38b670036c7f23be;p=thirdparty%2Fsystemd.git resolved: make outselves authoritative for /etc/hosts entries in full If you query for an MX RR of a host listed in /etc/hosts, let's return an empty reply rather than NXDOMAIN, i.e. indicate that the name exists but has no MX RR assigned, thus making ourselves authoritative. The venerable "host" tool by default sends requests for A + AAAA + MX and ensures we never propagate queries further on. Fixes: #31223 --- diff --git a/src/resolve/resolved-etc-hosts.c b/src/resolve/resolved-etc-hosts.c index bd129cd2ca5..2d334d38ddf 100644 --- a/src/resolve/resolved-etc-hosts.c +++ b/src/resolve/resolved-etc-hosts.c @@ -560,7 +560,7 @@ static int etc_hosts_lookup_by_name( return r; } - return question_for_a || question_for_aaaa; + return true; /* We consider ourselves authoritative for the whole name, all RR types, not just A/AAAA */ } int manager_etc_hosts_lookup(Manager *m, DnsQuestion *q, DnsAnswer **answer) {