summaryrefslogtreecommitdiff
path: root/src/resolve
diff options
context:
space:
mode:
authorDaniel Mack <github@zonque.org>2015-07-29 12:44:22 +0200
committerDaniel Mack <github@zonque.org>2015-07-29 12:44:22 +0200
commit3512af1706e764a1610cfc185a95b6d955684d71 (patch)
treecdb8e4a859ccf9a8bfcaf755a202316ec81b0c31 /src/resolve
parent19a9bc49dfacf9824a94828d56b18b58701c135f (diff)
parent9436e8cae4709b50ed57f2f5858a3ffad03d5d32 (diff)
Merge pull request #768 from poettering/resolved-localhost
resolved: never attempt to resolve loopback addresses via DNS/LLMNR/mDNS
Diffstat (limited to 'src/resolve')
-rw-r--r--src/resolve/resolved-dns-scope.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/resolve/resolved-dns-scope.c b/src/resolve/resolved-dns-scope.c
index 927a1ddc26..4bc4157028 100644
--- a/src/resolve/resolved-dns-scope.c
+++ b/src/resolve/resolved-dns-scope.c
@@ -313,6 +313,11 @@ DnsScopeMatch dns_scope_good_domain(DnsScope *s, int ifindex, uint64_t flags, co
if (is_localhost(domain))
return DNS_SCOPE_NO;
+ /* Never resolve any loopback IP address via DNS, LLMNR or mDNS */
+ if (dns_name_endswith(domain, "127.in-addr.arpa") > 0 ||
+ dns_name_equal(domain, "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa") > 0)
+ return DNS_SCOPE_NO;
+
if (s->protocol == DNS_PROTOCOL_DNS) {
if (dns_name_endswith(domain, "254.169.in-addr.arpa") == 0 &&
dns_name_endswith(domain, "0.8.e.f.ip6.arpa") == 0 &&