Fix CVE-2026-12244, CVE-2026-12245, CVE-2026-12246 and CVE-2026-12490
- CVE-2026-12244: A specially crafted SVCB RR can cause a heap
overflow of up to 65509 attacker controlled bytes.
- CVE-2026-12245: If NSD is configured with DNS over TLS, a
client that performs a TLS action, closing the connection early,
causes a crash and restart of the server process. An attacker can
keep all children in a crash-restart loop denying DoT service.
- CVE-2026-12246: The RR type APL rdata address, if too large,
causes out of bounds write on the stack, when the zonefile is written
out.
- CVE-2026-12490: Secondaries authenticated by a client
certificate to transfer a zone over TLS, can bypass verification by
transferring over TCP.
OK sthen
Return statically built addresses when hostname == NULL It always
returns IPv4 and IPv6 addresses when hostname == NULL; previously, it
returned only the address of the selected address family defined by
"family" in resolv.conf.
ok florian
x509_vfy: sync get_crl_sk() with BoringSSL and OpenSSL
Among CRLs with the same score prefer the one with the most recent
lastUpdate (RFC 5280 thisUpdate). This pulls in OpenSSL commits
626aa248, e032117d, 8b7c51a0 from 2016, so before the license change.
This uses the annoying ASN1_TIME_diff() API, but there is no better
way, really. Every other ASN1_TIME API will be just as awkward.
This fixes the currently failing x509_crl test cases.
ok kenjiro
unbreak build on arm64 until the compiler is actually fixed
fatal error: error in backend: Cannot implicitly convert a scalable size to a fixed-width size in `TypeSize::operator ScalarTy()`
clang++: error: clang frontend command failed with exit code 70 (use -v to see invocation)
Make getaddrinfo(3) check hnok_lenient() earlier.
r1.60 added special handling for localhost names; this was done before the
hnok_lenient() check, ensure this validation applies to localhost names too.
ok florian