diff --git a/middleware/file/dnssec_test.go b/middleware/file/dnssec_test.go index a3c7072a7..96eff6660 100644 --- a/middleware/file/dnssec_test.go +++ b/middleware/file/dnssec_test.go @@ -60,16 +60,13 @@ var dnssecTestCases = []coretest.Case{ coretest.SOA("miek.nl. 1800 IN SOA linode.atoom.net. miek.miek.nl. 1282630057 14400 3600 604800 14400"), }, }, - /* HAHA nsec... shit. - // disprove *.miek.nl and that b.miek.nl does not exist { - Qname: "b.miek.nl.", Qtype: dns.TypeA, + Qname: "b.miek.nl.", Qtype: dns.TypeA, // Do: true, // need sorting first Rcode: dns.RcodeNameError, Ns: []dns.RR{ coretest.SOA("miek.nl. 1800 IN SOA linode.atoom.net. miek.miek.nl. 1282630057 14400 3600 604800 14400"), }, }, - */ } func TestLookupDNSSEC(t *testing.T) { diff --git a/middleware/file/lookup.go b/middleware/file/lookup.go index e89796585..e250f9d50 100644 --- a/middleware/file/lookup.go +++ b/middleware/file/lookup.go @@ -1,8 +1,6 @@ package file import ( - "fmt" - "github.com/miekg/coredns/middleware/file/tree" "github.com/miekg/dns" ) @@ -69,14 +67,14 @@ func (z *Zone) noData(elem *tree.Elem, do bool) ([]dns.RR, []dns.RR, []dns.RR, R } func (z *Zone) nameError(elem *tree.Elem, rr dns.RR, do bool) ([]dns.RR, []dns.RR, []dns.RR, Result) { - ret := []dns.RR{} + ret := []dns.RR{z.SOA} if do { ret = append(ret, z.SIG...) // Now we need two NSEC, one to deny the wildcard and one to deny the name. elem := z.Tree.Prev(rr) - fmt.Printf("%+v\n", elem.All()) + ret = append(ret, z.lookupNSEC(elem, do)) elem = z.Tree.Prev(wildcard(rr)) - fmt.Printf("%+v\n", elem.All()) + ret = append(ret, z.lookupNSEC(elem, do)) } return nil, ret, nil, NameError }