From: aerique Date: Thu, 11 Jan 2018 11:16:32 +0000 (+0100) Subject: Merge pull request #5993 from zeha/ecs-add-for X-Git-Tag: dnsdist-1.3.0~152 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=03cd776f1c59cf7fe974f6f94f36c73479d63752;p=pdns Merge pull request #5993 from zeha/ecs-add-for Recursor: add ecs-add-for option --- 03cd776f1c59cf7fe974f6f94f36c73479d63752 diff --cc pdns/syncres.cc index f31621e02,4f4fc7d8d..bd13b8077 --- a/pdns/syncres.cc +++ b/pdns/syncres.cc @@@ -894,13 -895,9 +895,13 @@@ bool SyncRes::doCNAMECacheCheck(const D vector> signatures; vector> authorityRecs; bool wasAuth; - if(t_RC->get(d_now.tv_sec, qname, QType(QType::CNAME), d_requireAuthData, &cset, d_incomingECSFound ? d_incomingECSNetwork : d_requestor, d_doDNSSEC ? &signatures : nullptr, d_doDNSSEC ? &authorityRecs : nullptr, &d_wasVariable, &state, &wasAuth) > 0) { + if(t_RC->get(d_now.tv_sec, qname, QType(QType::CNAME), d_requireAuthData, &cset, d_cacheRemote, d_doDNSSEC ? &signatures : nullptr, d_doDNSSEC ? &authorityRecs : nullptr, &d_wasVariable, &state, &wasAuth) > 0) { for(auto j=cset.cbegin() ; j != cset.cend() ; ++j) { + if (j->d_class != QClass::IN) { + continue; + } + if(j->d_ttl>(unsigned int) d_now.tv_sec) { if (!wasAuthZone && shouldValidate() && wasAuth && state == Indeterminate && d_requireAuthData) {