34 lines
1.2 KiB
Diff
34 lines
1.2 KiB
Diff
Index: /trunk/pdns/pdns/packethandler.cc
|
|
===================================================================
|
|
--- /trunk/pdns/pdns/packethandler.cc (revision 1079)
|
|
+++ /trunk/pdns/pdns/packethandler.cc (revision 1081)
|
|
@@ -399,6 +399,8 @@
|
|
}
|
|
}
|
|
- if(hits && !found && !rfound && shortcut ) // we found matching qnames but not a qtype
|
|
+ if(hits && !found && !rfound && shortcut ) { // we found matching qnames but not a qtype
|
|
+ DLOG(L<<"Found matching qname, but not the qtype"<<endl);
|
|
return 2;
|
|
+ }
|
|
|
|
if(rfound)
|
|
@@ -654,4 +656,5 @@
|
|
|
|
if(mret==2) { // there is some data, but not of the correct type
|
|
+ r->clearRecords();
|
|
DLOG(L<<"There is some data, but not of the correct type, adding SOA for NXRECORDSET"<<endl);
|
|
SOAData sd;
|
|
@@ -696,5 +699,4 @@
|
|
}
|
|
}
|
|
-
|
|
noSameLevelNS=true;
|
|
|
|
@@ -739,5 +741,5 @@
|
|
// not found yet, try wildcards (we only try here in case of recursion - we should check before we hand off)
|
|
|
|
- if(p->d.rd && d_doRecursion && d_doWildcards) {
|
|
+ if(mret != 2 && p->d.rd && d_doRecursion && d_doWildcards) {
|
|
int res=doWildcardRecords(p,r,target);
|
|
if(res) { // had a result
|