From 1c8851b14228ff1394729b291b750395666c7de5 Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Mon, 15 Jan 2024 13:39:44 +1100 Subject: [PATCH 1/2] Dissassociate rdatasets returned from dns_ncache_current lib/dns/validator.c:findnsec3proofs failed to disassociate the temporary rdataset returned by dns_ncache_current on all paths. (cherry picked from commit dc94f422095d55727248d2137a3681e1015adde4) --- lib/dns/validator.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/dns/validator.c b/lib/dns/validator.c index 56a0ced7b7..5e5073e64e 100644 --- a/lib/dns/validator.c +++ b/lib/dns/validator.c @@ -2230,6 +2230,9 @@ findnsec3proofs(dns_validator_t *val) { POST(result); if (dns_name_countlabels(zonename) == 0) { + if (dns_rdataset_isassociated(&trdataset)) { + dns_rdataset_disassociate(&trdataset); + } return (ISC_R_SUCCESS); } @@ -2299,6 +2302,9 @@ findnsec3proofs(dns_validator_t *val) { { proofs[DNS_VALIDATOR_NOWILDCARDPROOF] = name; } + if (dns_rdataset_isassociated(&trdataset)) { + dns_rdataset_disassociate(&trdataset); + } return (result); } if (result != ISC_R_SUCCESS) { @@ -2352,9 +2358,15 @@ findnsec3proofs(dns_validator_t *val) { { result = checkwildcard(val, dns_rdatatype_nsec3, zonename); if (result != ISC_R_SUCCESS) { + if (dns_rdataset_isassociated(&trdataset)) { + dns_rdataset_disassociate(&trdataset); + } return (result); } } + if (dns_rdataset_isassociated(&trdataset)) { + dns_rdataset_disassociate(&trdataset); + } return (result); } From 0f086ddfe1a8cbf63aa1428838c8daade16e624b Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Mon, 12 Feb 2024 18:51:21 +1100 Subject: [PATCH 2/2] Add CHANGES note for [GL #4571] (cherry picked from commit 3b7cddfb1b4ec03ea4f0f57755c65be9e681d8f5) --- CHANGES | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGES b/CHANGES index 6cee029187..163ab0d0e4 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +6345. [bug] Added missing dns_rdataset_disassociate calls in + validator.c:findnsec3proofs. [GL #4571] + 6343. [bug] Fix case insensitive setting for isc_ht hashtable. [GL #4568]