]> granicus.if.org Git - pdns/commitdiff
accept ANY responses during recursive forwarding, thanks Jan-Piet Mens
authorPeter van Dijk <peter.van.dijk@netherlabs.nl>
Mon, 11 Mar 2013 09:32:28 +0000 (09:32 +0000)
committerPeter van Dijk <peter.van.dijk@netherlabs.nl>
Mon, 11 Mar 2013 09:32:28 +0000 (09:32 +0000)
git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@3116 d19b8d6e-7fed-0310-83ef-9ca221ded41b

pdns/syncres.cc

index 1f76320fb98baf1854c12c2309fde76fde3f4337..28f804f7d1294f3d8ef2dc6bc39475d907c082cd 100644 (file)
@@ -1053,10 +1053,10 @@ int SyncRes::doResolveAt(set<string, CIStringCompare> nameservers, string auth,
           ret.push_back(*i);
           newtarget=i->content;
         }
-        // for ANY answers we *must* have an authoritive answer
+        // for ANY answers we *must* have an authoritive answer, unless we are forwarding recursively
         else if(i->d_place==DNSResourceRecord::ANSWER && pdns_iequals(i->qname, qname) && 
                (
-                i->qtype==qtype || (lwr.d_aabit && (qtype==QType(QType::ANY) || magicAddrMatch(qtype, i->qtype) ) )
+                i->qtype==qtype || (lwr.d_aabit && (qtype==QType(QType::ANY) || magicAddrMatch(qtype, i->qtype) ) ) || sendRDQuery
                ) 
                )   
           {