From 92ec19add9839f81fc12f69bbcd6a47812ac5d63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Men=C5=A1=C3=ADk?= Date: Wed, 10 Jan 2024 21:25:52 +0100 Subject: [PATCH] Do HTTPS record query from host in addition Unless explicitly specified type from host command, do fourth query for type HTTPS RR. It is expected it will become more common and some systems already query that record for every name. (cherry picked from commit 82069a57006066190dbbb1d30b271c25b7a74552) --- bin/dig/host.c | 11 +++++++++++ bin/dig/host.rst | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/bin/dig/host.c b/bin/dig/host.c index 4b5f58fb7e..533ecfa133 100644 --- a/bin/dig/host.c +++ b/bin/dig/host.c @@ -80,6 +80,7 @@ struct rtype rtypes[] = { { 1, "has address" }, { 25, "has key" }, { 28, "has IPv6 address" }, { 29, "location" }, + { dns_rdatatype_https, "has HTTP service bindings" }, { 0, NULL } }; static char * @@ -457,6 +458,16 @@ printmessage(dig_query_t *query, const isc_buffer_t *msgbuf, dns_message_t *msg, lookup->retries = tries; ISC_LIST_APPEND(lookup_list, lookup, link); } + lookup = clone_lookup(query->lookup, false); + if (lookup != NULL) { + strlcpy(lookup->textname, namestr, + sizeof(lookup->textname)); + lookup->rdtype = dns_rdatatype_https; + lookup->rdtypeset = true; + lookup->origin = NULL; + lookup->retries = tries; + ISC_LIST_APPEND(lookup_list, lookup, link); + } } if (!short_form) { diff --git a/bin/dig/host.rst b/bin/dig/host.rst index 2647d36a73..71a736dde3 100644 --- a/bin/dig/host.rst +++ b/bin/dig/host.rst @@ -122,7 +122,7 @@ Options CNAME, NS, SOA, TXT, DNSKEY, AXFR, etc. When no query type is specified, :program:`host` automatically selects an - appropriate query type. By default, it looks for A, AAAA, and MX + appropriate query type. By default, it looks for A, AAAA, MX, and HTTPS records. If the :option:`-C` option is given, queries are made for SOA records. If ``name`` is a dotted-decimal IPv4 address or colon-delimited IPv6 address, :program:`host` queries for PTR records.