]> git.ipfire.org Git - thirdparty/bind9.git/commit
merge dns_db_find/findext and dns_db_findnode/findnodeext
authorEvan Hunt <each@isc.org>
Mon, 4 Aug 2025 23:54:08 +0000 (16:54 -0700)
committerEvan Hunt <each@isc.org>
Mon, 15 Sep 2025 16:11:50 +0000 (16:11 +0000)
commit4de396f955cbce45564b1f5ff9db4e8801738071
treef549c5a31fa4d7a86a6dc5966dfac023fa93cd91
parent9e14fcd2592d741e63c82fbffc5e5964603a8241
merge dns_db_find/findext and dns_db_findnode/findnodeext

the dns_db_findext and _findnodeext calls are extended versions
of dns_db_find and _findnode, which take additional arguments for
client information in order to support ECS. previously, database
implementations could support either API call, with cross-compatibility
so that, for example, dns_db_findext() could call a find implementation
if findext was not implemented, and dns_db_find() could call findext
if find was not implemented.

this has now been simplified. the find and findnodeext implementations
now support client info.  all database implementations will now provide
these calls.  implementations which do not support ECS will simply
ignore the clientinfo and clientinfomethods parameters.

this only affects the underlying implementation; callers will still
use the same interface. dns_db_find() and dns_db_findnode() are now
macros which pass NULL to the clientinfo parameters, so that callers
don't have to do so explicitly. dns_db_findext() and dns_db_findnodeext()
are still available for callers that do wish to pass clientinfo pointers.
bin/named/builtin.c
bin/tests/system/dyndb/driver/db.c
lib/dns/db.c
lib/dns/include/dns/db.h
lib/dns/qpcache.c
lib/dns/qpzone.c
lib/dns/sdlz.c