From: Remi Gacogne Date: Wed, 8 Jul 2020 08:49:51 +0000 (+0200) Subject: Merge pull request #9297 from rgacogne/rec-no-cache-only-getdnskeys X-Git-Tag: rec-4.4.0-alpha2~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4b8ac0fd41beaa4f0988cbc68e04f183a617d17e;p=thirdparty%2Fpdns.git Merge pull request #9297 from rgacogne/rec-no-cache-only-getdnskeys rec: Ignore cache-only for DNSKEYs retrieval --- 4b8ac0fd41beaa4f0988cbc68e04f183a617d17e diff --cc pdns/syncres.cc index 352229058d,a96fdf620e..b4a8592228 --- a/pdns/syncres.cc +++ b/pdns/syncres.cc @@@ -2062,12 -2062,10 +2062,14 @@@ vState SyncRes::getDSRecords(const DNSN std::vector dsrecords; vState state = Indeterminate; + const bool oldCacheOnly = setCacheOnly(false); int rcode = doResolve(zone, QType(QType::DS), dsrecords, depth + 1, beenthere, state); + setCacheOnly(oldCacheOnly); + if (rcode == RCode::ServFail) { + throw ImmediateServFailException("Server Failure while retrieving DS records for " + zone.toLogString()); + } + if (rcode == RCode::NoError || (rcode == RCode::NXDomain && !bogusOnNXD)) { uint8_t bestDigestType = 0; @@@ -2334,12 -2332,10 +2336,14 @@@ vState SyncRes::getDNSKeys(const DNSNam LOG(d_prefix<<"Retrieving DNSKeys for "<