]> granicus.if.org Git - pdns/commitdiff
avoid interleaved access to B (via d_dk)
authorPeter van Dijk <peter.van.dijk@powerdns.com>
Tue, 24 Apr 2018 21:48:13 +0000 (23:48 +0200)
committerPeter van Dijk <peter.van.dijk@powerdns.com>
Tue, 24 Apr 2018 21:48:13 +0000 (23:48 +0200)
pdns/packethandler.cc

index 06d052630265a384d1b2c15045b16dfcb3856510..9e2ca7e89e8bda857a50cc35f58ea404a7108510 100644 (file)
@@ -1340,13 +1340,6 @@ DNSPacket *PacketHandler::doQuestion(DNSPacket *p)
 
     DLOG(g_log<<"Got no referrals, trying ANY"<<endl);
 
-    // see what we get..
-    B.lookup(QType(QType::ANY), target, p, sd.domain_id);
-    rrset.clear();
-    haveAlias.trimToLabels(0);
-    weDone = weRedirected = weHaveUnauth =  false;
-
-
 #ifdef HAVE_LUA_RECORDS
     if(!doLua) {
       string val;
@@ -1354,6 +1347,12 @@ DNSPacket *PacketHandler::doQuestion(DNSPacket *p)
       doLua = (val=="1");
     }
 #endif
+
+    // see what we get..
+    B.lookup(QType(QType::ANY), target, p, sd.domain_id);
+    rrset.clear();
+    haveAlias.trimToLabels(0);
+    weDone = weRedirected = weHaveUnauth =  false;
     
     while(B.get(rr)) {
 #ifdef HAVE_LUA_RECORDS