From: Marek VavruĊĦa Date: Thu, 9 Jul 2015 20:22:37 +0000 (+0200) Subject: Merge branch 'master' into HEAD X-Git-Tag: v1.0.0-beta1~53^2~166 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=df52fc186cc4aa01df6ffe6af3e0663459cb9782;p=thirdparty%2Fknot-resolver.git Merge branch 'master' into HEAD --- df52fc186cc4aa01df6ffe6af3e0663459cb9782 diff --cc lib/layer/rrcache.c index dd1ea2f87,56f64b46c..666d480eb --- a/lib/layer/rrcache.c +++ b/lib/layer/rrcache.c @@@ -17,9 -17,9 +17,10 @@@ #include #include #include +#include - #include #include + #include + #include #include "lib/layer/iterate.h" #include "lib/cache.h" @@@ -40,18 -34,13 +41,18 @@@ static int begin(knot_layer_t *ctx, voi } static int loot_rr(struct kr_cache_txn *txn, knot_pkt_t *pkt, const knot_dname_t *name, - uint16_t rrclass, uint16_t rrtype, struct kr_query *qry) + uint16_t rrclass, uint16_t rrtype, struct kr_query *qry, bool fetch_rrsig) { /* Check if record exists in cache */ + int ret = 0; - uint32_t timestamp = qry->timestamp.tv_sec; + uint32_t drift = qry->timestamp.tv_sec; knot_rrset_t cache_rr; knot_rrset_init(&cache_rr, (knot_dname_t *)name, rrtype, rrclass); - int ret = kr_cache_peek_rr(txn, &cache_rr, &drift); + if (fetch_rrsig) { - ret = kr_cache_peek_rrsig(txn, &cache_rr, ×tamp); ++ ret = kr_cache_peek_rrsig(txn, &cache_rr, &drift); + } else { - ret = kr_cache_peek_rr(txn, &cache_rr, ×tamp); ++ ret = kr_cache_peek_rr(txn, &cache_rr, &drift); + } if (ret != 0) { return ret; }