*/
static isc_uint8_t dtype[8];
-static const char *startstr = NULL; /* from which we derive notbefore */
+static const char *startstr = NULL; /* from which we derive notbefore */
static isc_stdtime_t notbefore = 0; /* restrict sig inception times */
static dns_rdata_rrsig_t oldestsig; /* for recording inception time */
}
}
+ vbprintf(1, "no matching %s for %s %d %d\n",
+ dsset->type == dns_rdatatype_cds
+ ? "CDS" : "DS",
+ ki->rdata.type == dns_rdatatype_cdnskey
+ ? "CDNSKEY" : "DNSKEY",
+ ki->tag, ki->algo);
+
return (ISC_FALSE);
}
for (i = 0; i < nkey; i++) {
keyinfo_t *ki = &keytbl[i];
- if (ki->dst == NULL ||
- sig.keyid != ki->tag ||
+ if (sig.keyid != ki->tag ||
sig.algorithm != ki->algo ||
!dns_name_equal(&sig.signer, name))
{
continue;
}
+ if (ki->dst == NULL) {
+ vbprintf(1, "skip RRSIG by key %d:"
+ " no matching (C)DS\n",
+ sig.keyid);
+ continue;
+ }
result = dns_dnssec_verify(name, rdataset, ki->dst,
ISC_FALSE, mctx, &sigrdata);
if (result != ISC_R_SUCCESS) {
+ vbprintf(1, "skip RRSIG by key %d:"
+ " verification failed: %s\n",
+ sig.keyid, isc_result_totext(result));
continue;
}