]> git.ipfire.org Git - thirdparty/knot-dns.git/commitdiff
nameserver: use KNOT_PF_ORIGTTL where necessary
authorDaniel Salzman <daniel.salzman@nic.cz>
Sun, 12 Aug 2018 20:25:25 +0000 (22:25 +0200)
committerDaniel Salzman <daniel.salzman@nic.cz>
Sun, 12 Aug 2018 20:25:46 +0000 (22:25 +0200)
src/knot/nameserver/axfr.c
src/knot/nameserver/internet.c
src/knot/nameserver/ixfr.c
src/knot/nameserver/nsec_proofs.c

index a62373b2bb52e67fed9eeb1eb71fe79976f1ea60..6a60b1968ad6d322db15612a641df435e2f20e09 100644 (file)
@@ -50,7 +50,7 @@ static int axfr_put_rrsets(knot_pkt_t *pkt, zone_node_t *node,
                        continue;
                }
 
-               int ret = knot_pkt_put(pkt, 0, &rrset, KNOT_PF_NOTRUNC);
+               int ret = knot_pkt_put(pkt, 0, &rrset, KNOT_PF_NOTRUNC | KNOT_PF_ORIGTTL);
                if (ret != KNOT_EOK) {
                        /* If something failed, remember the current RR for later. */
                        state->cur_rrset = i;
index 7d58bc0f260cd8e5b3772d94cc180955d4f475c4..62830e74ab72933e538db38c39910e833ab8144d 100644 (file)
@@ -139,6 +139,7 @@ static int put_answer(knot_pkt_t *pkt, uint16_t type, knotd_qdata_t *qdata)
 
        unsigned put_rr_flags = (qdata->params->flags & KNOTD_QUERY_FLAG_LIMIT_SIZE) ?
                                KNOT_PF_NULL : KNOT_PF_NOTRUNC;
+       put_rr_flags |= KNOT_PF_ORIGTTL;
 
        int ret = KNOT_EOK;
        switch (type) {
index bf09e4eb41202df5193bc7b571cb7efe6f74bba8..fa1447e3f55f3a526f41d150197a731ad562b1da 100644 (file)
@@ -36,7 +36,7 @@
 
 /*! \brief Helper macro for putting RRs into packet. */
 #define IXFR_SAFE_PUT(pkt, rr) \
-       int ret = knot_pkt_put((pkt), 0, (rr), KNOT_PF_NOTRUNC); \
+       int ret = knot_pkt_put((pkt), 0, (rr), KNOT_PF_NOTRUNC | KNOT_PF_ORIGTTL); \
        if (ret != KNOT_EOK) { \
                return ret; \
        }
index 930920b2f72b50bb8961e99e9b4a93dcc55febdc..cbbdf2dc2732c14dd669815cd67d58b9368d2516 100644 (file)
@@ -639,6 +639,7 @@ int nsec_append_rrsigs(knot_pkt_t *pkt, knotd_qdata_t *qdata, bool optional)
        int ret = KNOT_EOK;
        uint32_t flags = optional ? KNOT_PF_NOTRUNC : KNOT_PF_NULL;
        flags |= KNOT_PF_FREE; // Free all RRSIGs, they are synthesized
+       flags |= KNOT_PF_ORIGTTL;
 
        /* Append RRSIGs for section. */
        struct rrsig_info *info = NULL;