return section_has_type(knot_pkt_section(pkt, KNOT_ADDITIONAL), type);
}
-static void log_bogus_rrsig(kr_rrset_validation_ctx_t *vctx, const struct kr_query *qry,
+static void log_bogus_rrsig(kr_rrset_validation_ctx_t *vctx,
const knot_rrset_t *rr, const char *msg) {
- WITH_VERBOSE(qry) {
+ WITH_VERBOSE(vctx->log_qry) {
auto_free char *name_text = kr_dname_text(rr->owner);
auto_free char *type_text = kr_rrtype_text(rr->type);
- VERBOSE_MSG(qry, ">< %s: %s %s "
+ VERBOSE_MSG(vctx->log_qry, ">< %s: %s %s "
"(%u matching RRSIGs, %u expired, %u not yet valid, "
"%u invalid signer, %u invalid label count, %u invalid key, "
"%u invalid crypto, %u invalid NSEC)\n",
* NS RRsets that appear at delegation points (...)
* MUST NOT be signed */
if (vctx->rrs_counters.matching_name_type > 0)
- log_bogus_rrsig(vctx, qry, rr,
+ log_bogus_rrsig(vctx, rr,
"found unexpected signatures for non-authoritative data which failed to validate, continuing");
vctx->result = kr_ok();
kr_rank_set(&entry->rank, KR_RANK_TRY);
/* no RRSIGs found */
kr_rank_set(&entry->rank, KR_RANK_MISSING);
vctx->err_cnt += 1;
- log_bogus_rrsig(vctx, qry, rr, "no valid RRSIGs found");
+ log_bogus_rrsig(vctx, rr, "no valid RRSIGs found");
} else {
kr_rank_set(&entry->rank, KR_RANK_BOGUS);
vctx->err_cnt += 1;
- log_bogus_rrsig(vctx, qry, rr, "bogus signatures");
+ log_bogus_rrsig(vctx, rr, "bogus signatures");
}
}
return kr_ok();
.flags = 0,
.err_cnt = 0,
.cname_norrsig_cnt = 0,
- .result = 0
+ .result = 0,
+ .log_qry = qry,
};
int ret = validate_section(&vctx, qry, pool);
.qry_uid = qry->uid,
.has_nsec3 = has_nsec3,
.flags = 0,
- .result = 0
+ .result = 0,
+ .log_qry = qry,
};
int ret = kr_dnskeys_trusted(&vctx, qry->zone_cut.trust_anchor);
if (ret != 0) {
if (ret != kr_error(DNSSEC_INVALID_DS_ALGORITHM) &&
ret != kr_error(EAGAIN)) {
- log_bogus_rrsig(&vctx, qry, qry->zone_cut.key, "bogus key");
+ log_bogus_rrsig(&vctx, qry->zone_cut.key, "bogus key");
}
knot_rrset_free(qry->zone_cut.key, qry->zone_cut.pool);
qry->zone_cut.key = NULL;