diff --git a/lib/layer/iterate.c b/lib/layer/iterate.c index 865ded6c114bd678a50410729900533f1ecaca20..d7cdb289c4232264423ec6c1765d3bfa2add9c87 100644 --- a/lib/layer/iterate.c +++ b/lib/layer/iterate.c @@ -87,7 +87,7 @@ static bool is_paired_to_query(const knot_pkt_t *answer, struct kr_query *query) /* Construct expected randomized QNAME */ uint8_t qname[KNOT_DNAME_MAXLEN]; knot_dname_to_wire(qname, qname_min, sizeof(qname)); - if (!(query->flags & QUERY_CACHED)) { + if (!(query->flags & (QUERY_CACHED|QUERY_SAFEMODE))) { randomized_qname_case(qname, query->secret); } diff --git a/modules/block/block.lua b/modules/block/block.lua index 348471e3bcea1e3ccb3154ae296e344e3d450762..776f25364a036121d3348994a5a91f99b0bea3ad 100644 --- a/modules/block/block.lua +++ b/modules/block/block.lua @@ -108,7 +108,7 @@ block.layer = { -- Answer full question local qclass = kres.query_qclass(qry) local qtype = kres.query_qtype(qry) - kres.query_flag(qry, kres.query.NO_MINIMIZE) + kres.query_flag(qry, kres.query.NO_MINIMIZE + kres.query.SAFEMODE) pkt:question(qname, qclass, qtype) pkt:flag(kres.wire.QR) pkt:flag(kres.wire.AA)