From: Ronan Pigott Date: Fri, 8 Mar 2024 21:48:03 +0000 (-0700) Subject: resolved: also reply NOTIMP when refusing a query based on RR type X-Git-Tag: v256-rc1~584^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=591810c02eb01118961a4cd53c7f3ebf3e091a10;p=thirdparty%2Fsystemd.git resolved: also reply NOTIMP when refusing a query based on RR type In some cases we refuse a query based on the RR type, mostly old deprecated types. Let's return NOTIMP in this case, which best communicates why the query failed. --- diff --git a/src/resolve/resolved-dns-stub.c b/src/resolve/resolved-dns-stub.c index 378d55e2302..23d4db9cd54 100644 --- a/src/resolve/resolved-dns-stub.c +++ b/src/resolve/resolved-dns-stub.c @@ -841,12 +841,16 @@ static void dns_stub_query_complete(DnsQuery *query) { (void) dns_stub_send_reply(q, DNS_RCODE_REFUSED); break; + case DNS_TRANSACTION_RR_TYPE_UNSUPPORTED: + /* This RR Type is not implemented */ + (void) dns_stub_send_reply(q, DNS_RCODE_NOTIMP); + break; + case DNS_TRANSACTION_INVALID_REPLY: case DNS_TRANSACTION_ERRNO: case DNS_TRANSACTION_ABORTED: case DNS_TRANSACTION_DNSSEC_FAILED: case DNS_TRANSACTION_NO_TRUST_ANCHOR: - case DNS_TRANSACTION_RR_TYPE_UNSUPPORTED: case DNS_TRANSACTION_NETWORK_DOWN: case DNS_TRANSACTION_NO_SOURCE: case DNS_TRANSACTION_STUB_LOOP: