From: Yu Watanabe Date: Sun, 23 Jan 2022 21:36:53 +0000 (+0900) Subject: resolve: synthesize null address, IPv4 broadcast address, or invalid domain X-Git-Tag: v251-rc1~466^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F22231%2Fhead;p=thirdparty%2Fsystemd.git resolve: synthesize null address, IPv4 broadcast address, or invalid domain These are filtered in `dns_scope_good_domain()`, but not synthesized. Fixes #22229. --- diff --git a/src/resolve/resolved-dns-synthesize.c b/src/resolve/resolved-dns-synthesize.c index ea239e686d8..0914515fdfb 100644 --- a/src/resolve/resolved-dns-synthesize.c +++ b/src/resolve/resolved-dns-synthesize.c @@ -397,6 +397,14 @@ int dns_synthesize_answer( if (dns_name_is_empty(name)) { /* Do nothing. */ + } else if (dns_name_endswith(name, "0.in-addr.arpa") > 0 || + dns_name_equal(name, "255.255.255.255.in-addr.arpa") > 0 || + dns_name_equal(name, "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.0.ip6.arpa") > 0 || + dns_name_endswith(name, "invalid") > 0) { + + nxdomain = true; + continue; + } else if (is_localhost(name)) { r = synthesize_localhost_rr(m, key, ifindex, &answer);