From 1bb24d70e0730ed35458d528ea266a267206f6d2 Mon Sep 17 00:00:00 2001 From: Manuel Mausz Date: Thu, 25 Jun 2026 14:11:15 +0200 Subject: dns: use RES_USE_DNSSEC --- dns.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'dns.c') diff --git a/dns.c b/dns.c index ed35dda..16203c0 100644 --- a/dns.c +++ b/dns.c @@ -47,20 +47,23 @@ static int resolve(const stralloc *domain, int type) if (!stralloc_copy(&glue,domain)) return DNS_MEM; if (!stralloc_0(&glue)) return DNS_MEM; - if (!responsebuflen) + if (!responsebuflen) { if (response.buf = (unsigned char *)alloc(PACKETSZ+1)) responsebuflen = PACKETSZ+1; else return DNS_MEM; + } dns_res_ad_flag = 0; + dns_res_state.options |= RES_USE_DNSSEC; responselen = lookup(&dns_res_state, glue.s, C_IN, type, response.buf, responsebuflen); if ((responselen >= responsebuflen) || (responselen > 0 && (((HEADER *)response.buf)->tc))) { - if (responsebuflen < 65536) - if (alloc_re(&response.buf, responsebuflen, 65536)) - responsebuflen = 65536; - else return DNS_MEM; + if (responsebuflen < 65536) { + if (alloc_re(&response.buf, responsebuflen, 65536)) + responsebuflen = 65536; + else return DNS_MEM; + } u_long saveresoptions = dns_res_state.options; dns_res_state.options |= RES_USEVC; responselen = lookup(&dns_res_state, glue.s, C_IN, type, response.buf, responsebuflen); @@ -427,6 +430,10 @@ unsigned long random; return flagsoft; } +#ifndef T_TLSA +#define T_TLSA 52 +#endif + int dns_tlsa(stralloc *out, const stralloc *fqdn) { int ranswers = 0; -- cgit v1.2.3