]> granicus.if.org Git - pdns/commitdiff
fix up case as described in http://darkwing.uoregon.edu/~llynch/dnsop/msg03884.html
authorBert Hubert <bert.hubert@netherlabs.nl>
Thu, 28 Sep 2006 19:38:39 +0000 (19:38 +0000)
committerBert Hubert <bert.hubert@netherlabs.nl>
Thu, 28 Sep 2006 19:38:39 +0000 (19:38 +0000)
reported by Bryan Seitz

git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@893 d19b8d6e-7fed-0310-83ef-9ca221ded41b

pdns/syncres.cc

index d15dc0643d99ef263edb98e73b07a166afd40e7b..04a1e1054e933cd951170b979b4301bb0d1d33ca 100644 (file)
@@ -818,7 +818,7 @@ int SyncRes::doResolveAt(set<string, CIStringCompare> nameservers, string auth,
            LOG<<prefix<<qname<<": got upwards/level NS record '"<<i->qname<<"' -> '"<<i->content<<"', had '"<<auth<<"'"<<endl;
          nsset.insert(i->content);
        }
-       else if(i->d_place==DNSResourceRecord::AUTHORITY && dottedEndsOn(qname,i->qname) && i->qtype.getCode()==QType::SOA && 
+       else if(!done && i->d_place==DNSResourceRecord::AUTHORITY && dottedEndsOn(qname,i->qname) && i->qtype.getCode()==QType::SOA && 
           d_lwr.d_rcode==RCode::NoError) {
          LOG<<prefix<<qname<<": got negative caching indication for '"<< (qname+"|"+i->qtype.getName()+"'") <<endl;
          ret.push_back(*i);