From: Otto Moerbeek Date: Fri, 6 Nov 2020 11:58:53 +0000 (+0100) Subject: If a.b.c CNAME x.a.b.c is encoutered, switch off X-Git-Tag: dnsdist-1.6.0-alpha0~31^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=157d17730c4fa6b25c1e0f5e720b7e73ac7723aa;p=thirdparty%2Fpdns.git If a.b.c CNAME x.a.b.c is encoutered, switch off QM, it will lead to great recursion depth without result. --- diff --git a/pdns/syncres.cc b/pdns/syncres.cc index e9f1a2ab82..91eefeb217 100644 --- a/pdns/syncres.cc +++ b/pdns/syncres.cc @@ -1498,6 +1498,13 @@ bool SyncRes::doCNAMECacheCheck(const DNSName &qname, const QType &qtype, vector throw ImmediateServFailException(msg); } + if (newTarget.isPartOf(qname)) { + // a.b.c. CNAME x.a.b.c will go to great depths with QM on + string msg = "got a CNAME referral (from cache) to child, switching off QM"; + LOG(prefix< 10) { LOG(prefix<