]> git.ipfire.org Git - thirdparty/bind9.git/commit
Use delegation DB for bestzonecut lookups
authorColin Vidal <colin@isc.org>
Mon, 30 Mar 2026 09:31:47 +0000 (11:31 +0200)
committerColin Vidal <colin@isc.org>
Mon, 30 Mar 2026 18:41:13 +0000 (20:41 +0200)
commitde8bc44dc8f3260c80181a2d557ea07e98d2c2af
treef7cbdc6387dd560e0a3d14f7a5e532ef66c16eb7
parentf45329d83d7d5cba0e10b3215228132a7604308a
Use delegation DB for bestzonecut lookups

Function `dns_view_bestzonecut()` now uses the delegation DB instead of
the main cache when looking up at the cache.

As a result, replace `dns_rdataset_t` (representing an NS RRset) with
`dns_delegset_t` in `dns_view_bestzonecut()` and
`dns_resolver_createfetch()` APIs. The resolver and query processing now
use the delegation DB instead of the cache for zonecut lookups.

In the case of the delegation lives in the local database, the locally
found `rdataset` is internally converted into a `dns_delegset_t` object.
From caller POV, it doesn't change anything: a delegation set is a
read-only object which can be used as long as needed and must be
detached one it's done with it.
bin/named/server.c
lib/dns/adb.c
lib/dns/include/dns/resolver.h
lib/dns/include/dns/view.h
lib/dns/resolver.c
lib/dns/view.c
lib/ns/include/ns/query.h
lib/ns/query.c