Merge branch 'aram/catz-processing-skip-warnings-for-some-rrset-types-v9_16' into 'v9_16'
[v9_16] Don't process DNSSEC-related and ZONEMD records in catz See merge request isc-projects/bind9!6384
This commit is contained in:
@@ -1,3 +1,6 @@
|
||||
5899. [func] Don't try to process DNSSEC-related and ZONEMD records
|
||||
in catz. [GL #3380]
|
||||
|
||||
5890. [bug] When the fetches-per-server quota was adjusted
|
||||
because of an authoritative server timing out more
|
||||
or less frequently, it was incorrectly set to 1
|
||||
|
||||
@@ -43,3 +43,6 @@ Bug Fixes
|
||||
- Key files were updated every time the ``dnssec-policy`` key manager ran,
|
||||
whether the metadata has changed or not. BIND now checks if changes were
|
||||
applied before writing out the key files. :gl:`#3302`.
|
||||
|
||||
- DNSSEC-signed catalog zones were not being processed correctly. This
|
||||
has been fixed. :gl:`#3380`.
|
||||
|
||||
@@ -1799,6 +1799,12 @@ cleanup:
|
||||
return (result);
|
||||
}
|
||||
|
||||
static bool
|
||||
catz_rdatatype_is_processable(const dns_rdatatype_t type) {
|
||||
return (!dns_rdatatype_isdnssec(type) && type != dns_rdatatype_cds &&
|
||||
type != dns_rdatatype_cdnskey && type != dns_rdatatype_zonemd);
|
||||
}
|
||||
|
||||
void
|
||||
dns_catz_update_from_db(dns_db_t *db, dns_catz_zones_t *catzs) {
|
||||
dns_catz_zone_t *oldzone = NULL, *newzone = NULL;
|
||||
@@ -1908,6 +1914,17 @@ dns_catz_update_from_db(dns_db_t *db, dns_catz_zones_t *catzs) {
|
||||
result = dns_rdatasetiter_first(rdsiter);
|
||||
while (result == ISC_R_SUCCESS) {
|
||||
dns_rdatasetiter_current(rdsiter, &rdataset);
|
||||
|
||||
/*
|
||||
* Skip processing DNSSEC-related and ZONEMD types,
|
||||
* because we are not interested in them in the context
|
||||
* of a catalog zone, and processing them will fail
|
||||
* and produce an unnecessary warning message.
|
||||
*/
|
||||
if (!catz_rdatatype_is_processable(rdataset.type)) {
|
||||
goto next;
|
||||
}
|
||||
|
||||
result = dns_catz_update_process(catzs, newzone, name,
|
||||
&rdataset);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
@@ -1930,6 +1947,7 @@ dns_catz_update_from_db(dns_db_t *db, dns_catz_zones_t *catzs) {
|
||||
cname, classbuf, typebuf,
|
||||
isc_result_totext(result));
|
||||
}
|
||||
next:
|
||||
dns_rdataset_disassociate(&rdataset);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user