Fixes #914 (nord module: AD=1 is no good)
- logging: improved logging groups (!1768)
- support libdnssec merged into libknot, as planned for knot >= 3.6 (!1769)
- support cmocka 2.0.0 (!1772)
+- avoid AD=1 in reply if ANSWER+AUTHORITY are empty (#914, !1779)
Bugfixes
--------
return;
}
+ if (knot_wire_get_ancount(answer->wire) == 0 && knot_wire_get_nscount(answer->wire) == 0) {
+ /* Let's disable AD flag if the set of RRs covered by it is empty,
+ * though it seems unclear to vcunat what RFCs say about that special case. */
+ secure = false;
+ }
+
/* AD: "negative answers" need more handling. */
if (kr_response_classify(answer) != PKT_NOERROR
/* Additionally check for CNAME chains that "end in NODATA",
if (!answer)
return ctx->state;
knot_wire_set_rcode(answer->wire, KNOT_RCODE_REFUSED);
- knot_wire_clear_ad(answer->wire);
kr_request_set_extended_error(req, KNOT_EDNS_EDE_NOTAUTH, "ABC4");
ctx->state = KR_STATE_DONE;
return ctx->state;