]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
fix: usr: Don't evict DNSSEC-validated cache data on a CD=1 NXDOMAIN
authorEvan Hunt <each@isc.org>
Thu, 2 Jul 2026 07:44:53 +0000 (07:44 +0000)
committerEvan Hunt <each@isc.org>
Thu, 2 Jul 2026 07:44:53 +0000 (07:44 +0000)
When a client sent a query with the checking-disabled (CD) bit set and the
answer was NXDOMAIN, the resolver cached that unvalidated negative response and
discarded any DNSSEC-validated records it already held for the same name, even
though the validated data was more trustworthy. A single such response -
including a forged one - could flush validated records from the cache and force
the resolver to fetch them again. The resolver now checks the trust level of the
existing data first and leaves the cache unchanged when it is already validated.

Closes #5877

Merge branch '5877-cd-nxdomain' into 'main'

See merge request isc-projects/bind9!11946


Trivial merge