From 46bf7f31069137aee8a82bc4f8287ce60117652c Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Tue, 13 Jun 2017 12:51:52 -0700 Subject: middleware/file: consider no SOA a fatal error (#734) Don't load a zone with a SOA record, barf with 'no SOA record' error. --- middleware/file/file_test.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'middleware/file/file_test.go') diff --git a/middleware/file/file_test.go b/middleware/file/file_test.go index d5762683d..ae17624f9 100644 --- a/middleware/file/file_test.go +++ b/middleware/file/file_test.go @@ -10,3 +10,22 @@ func BenchmarkParseInsert(b *testing.B) { Parse(strings.NewReader(dbMiekENTNL), testzone, "stdin", 0) } } + +func TestParseNoSOA(t *testing.T) { + _, err := Parse(strings.NewReader(dbNoSOA), "example.org.", "stdin", 0) + if err == nil { + t.Fatalf("zone %q should have failed to load", "example.org.") + } + if !strings.Contains(err.Error(), "no SOA record") { + t.Fatalf("zone %q should have failed to load with no soa error: %s", "example.org.", err) + } +} + +const dbNoSOA = ` +$TTL 1M +$ORIGIN example.org. + +www IN A 192.168.0.14 +mail IN A 192.168.0.15 +imap IN CNAME mail +` -- cgit v1.2.3