bind9/lib/dns
Ondřej Surý b575dbfd9e
Fix dropped covers field for SIG records in dns_diff_apply
rdata_covers() in lib/dns/diff.c discriminated only on
dns_rdatatype_rrsig (46) and returned 0 for the legacy SIG (24), so
the covered-type field was silently discarded on the dynamic-update
and IXFR paths.  Every SIG rdataset was then filed in the zone DB
under typepair (SIG, 0) instead of (SIG, covered_type); a second SIG
add with a different covers but a different TTL collided at that
bucket, tripped DNS_DBADD_EXACTTTL in qpzone, returned
DNS_R_NOTEXACT, and came back to the client as SERVFAIL.

Use dns_rdatatype_issig() here so both SIG and RRSIG carry their
covers through the diff, matching the helper pattern already used in
lib/dns/master.c, lib/ns/xfrout.c, lib/dns/qpcache.c, and the
dns__db_findrdataset() REQUIRE that the surrounding merge request
just relaxed.

(cherry picked from commit 0a5ba57116)
2026-04-20 11:21:14 +02:00
..
include Use the correct maximal compressed bit map buffer size 2026-04-10 06:23:59 +00:00
rdata Set length in dns_rdata_in_dhcid structure 2026-03-12 20:32:18 +11:00
.gitignore 4394. [func] Add rndc command "dnstap-reopen" to close and 2016-06-24 09:37:04 +10:00
acl.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
adb.c Use clang-format-22 to update formatting 2026-03-04 12:24:53 +01:00
badcache.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
byaddr.c Use clang-format-20 to update formatting 2025-06-25 13:59:44 +10:00
cache.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
callbacks.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
catz.c Remove unnecessary dns_name_free call 2026-04-15 12:21:48 +10:00
client.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
clientinfo.c refactor dns_clientinfo_init(); use separate function to set ECS 2023-02-08 00:13:12 -08:00
compress.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
db.c Fix assertion failure in dns_db_findrdataset() for SIG records 2026-04-20 11:21:14 +02:00
dbiterator.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
diff.c Fix dropped covers field for SIG records in dns_diff_apply 2026-04-20 11:21:14 +02:00
dispatch.c Use clang-format-20 to update formatting 2025-06-25 13:59:44 +10:00
dlz.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
dns64.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
dnsrps.c Fix missing RRSIGs for "glue" lookups with CD=1 2025-09-11 08:27:50 +10:00
dnssec.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
dnstap.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
dnstap.proto Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
ds.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
dst_api.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
dst_internal.h Replace isc_fsaccess API with more secure file creation 2023-03-31 16:47:15 +02:00
dst_openssl.h Use autoconf check for BN_GENCB_new() 2022-03-02 10:49:47 +00:00
dst_parse.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
dst_parse.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
dyndb.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
ecs.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
fixedname.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
forward.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
gen.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
geoip2.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
gssapi_link.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
gssapictx.c Release gnamebuf also on the error path 2026-02-06 18:37:44 +01:00
hmac_link.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
ipkeylist.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
iptable.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
journal.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
kasp.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
key.c Don't check DNS_KEYFLAG_NOAUTH 2025-03-25 00:04:34 -07:00
keydata.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
keymgr.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
keytable.c Remove dns_rdataset_equals as unneeded 2025-09-11 08:27:50 +10:00
log.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
lookup.c Implement global limit for outgoing queries 2024-12-06 15:17:53 +00:00
Makefile.am Add support for parsing DSYNC scheme mnemonics 2025-08-06 13:08:11 +10:00
master.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
masterdump.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
message.c Retry lookups with unsigned DNAME over TCP 2025-10-02 13:07:06 +02:00
name.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
ncache.c Remove dns_rdataset_equals as unneeded 2025-09-11 08:27:50 +10:00
nsec.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
nsec3.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
nta.c Implement global limit for outgoing queries 2024-12-06 15:17:53 +00:00
openssl_link.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
openssl_shim.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
openssl_shim.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
openssldh_link.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
opensslecdsa_link.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
openssleddsa_link.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
opensslrsa_link.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
order.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
peer.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
private.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
rbt.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
rbtdb.c In dbiterator_prev, dereference_iter_node was being called too soon 2025-12-08 10:27:03 +01:00
rbtdb.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
rcode.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
rdata.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
rdatalist.c Remove dns_rdataset_equals as unneeded 2025-09-11 08:27:50 +10:00
rdatalist_p.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
rdataset.c Remove dns_rdataset_equals as unneeded 2025-09-11 08:27:50 +10:00
rdatasetiter.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
rdataslab.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
request.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
resolver.c Remove extra fctx->result assignment from broken backport 2026-03-20 08:57:51 +01:00
result.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
rootns.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
rpz.c RPZ canonical warning displays zone entry incorrectly 2025-09-02 23:43:45 +00:00
rriterator.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
rrl.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
sdb.c Remove dns_rdataset_equals as unneeded 2025-09-11 08:27:50 +10:00
sdlz.c Remove dns_rdataset_equals as unneeded 2025-09-11 08:27:50 +10:00
soa.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
ssu.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
ssu_external.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
stats.c Use clang-format-20 to update formatting 2025-06-25 13:59:44 +10:00
tests Move all the unit tests to /tests/<libname>/ 2022-05-31 12:06:00 +02:00
time.c Use clang-format-22 to update formatting 2026-03-04 12:24:53 +01:00
tkey.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
transport.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
tsec.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
tsig.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
tsig_p.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
ttl.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
update.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
validator.c Rename isdelegation() to is_insecure_referral() 2026-04-07 09:53:34 +02:00
view.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
xfrin.c standardize CHECK and RETERR macros 2025-12-03 19:18:12 -08:00
zone.c Use clang-format-22 to update formatting 2026-03-04 12:24:53 +01:00
zone_p.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
zonekey.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
zoneverify.c Use the correct maximal compressed bit map buffer size 2026-04-10 06:23:59 +00:00
zt.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00