]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
auth: ignore NSEC3PARAM in an unsigned zone 5373/head
authorKees Monshouwer <mind04@monshouwer.org>
Sat, 3 Jun 2017 14:25:02 +0000 (16:25 +0200)
committermind04 <mind04@monshouwer.org>
Sat, 3 Jun 2017 14:27:12 +0000 (16:27 +0200)
pdns/packethandler.cc
pdns/tcpreceiver.cc

index 3a9dc7a2510fa44ffcf76a1738296d2acf72bdff..5c9319070b22a0474adb316895c6e600a39ccebd 100644 (file)
@@ -1293,7 +1293,7 @@ DNSPacket *PacketHandler::doQuestion(DNSPacket *p)
         if(addCDS(p,r, sd))
           goto sendit;
       }
-      else if(p->qtype.getCode() == QType::NSEC3PARAM)
+      else if(p->qtype.getCode() == QType::NSEC3PARAM && d_dk.isSecuredZone(sd.qname))
       {
         if(addNSEC3PARAM(p,r, sd))
           goto sendit;
index c873499c2bcbb71dbc8cf441787e82558b5f3310..fb7dca597581e08bb837dafaa356c58514ba6608 100644 (file)
@@ -614,7 +614,7 @@ int TCPNameserver::doAXFR(const DNSName &target, shared_ptr<DNSPacket> q, int ou
   NSEC3PARAMRecordContent ns3pr;
   bool narrow;
   bool NSEC3Zone=false;
-  if(dk.getNSEC3PARAM(target, &ns3pr, &narrow)) {
+  if(securedZone && dk.getNSEC3PARAM(target, &ns3pr, &narrow)) {
     NSEC3Zone=true;
     if(narrow) {
       L<<Logger::Error<<"Not doing AXFR of an NSEC3 narrow zone '"<<target<<"' for "<<q->getRemote()<<endl;