Browse Source

[2108] Multiple DNAME RRs should throw

Mukund Sivaraman 12 years ago
parent
commit
22add5b6c6

+ 9 - 0
src/lib/datasrc/memory/tests/memory_client_unittest.cc

@@ -243,6 +243,15 @@ TEST_F(MemoryClientTest, loadMultipleCNAME) {
     // Teardown checks for memory segment leaks
 }
 
+TEST_F(MemoryClientTest, loadMultipleDNAME) {
+    // Multiple DNAME RRs should throw.
+    EXPECT_THROW(client_->load(Name("example.org"),
+                               TEST_DATA_DIR
+                               "/example.org-multiple-dname.zone"),
+                 InMemoryClient::AddError);
+    // Teardown checks for memory segment leaks
+}
+
 TEST_F(MemoryClientTest, loadRRSIGFollowsNothing) {
     EXPECT_THROW(client_->load(Name("example.org"),
                                TEST_DATA_DIR

+ 1 - 0
src/lib/datasrc/memory/tests/testdata/Makefile.am

@@ -12,3 +12,4 @@ EXTRA_DIST += example.org-rrsigs.zone
 EXTRA_DIST += example.org-duplicate-type.zone
 EXTRA_DIST += example.org-duplicate-type-bad.zone
 EXTRA_DIST += example.org-multiple-cname.zone
+EXTRA_DIST += example.org-multiple-dname.zone

+ 3 - 0
src/lib/datasrc/memory/tests/testdata/example.org-multiple-dname.zone

@@ -0,0 +1,3 @@
+example.org. 3600 IN SOA	ns1.example.org. bugs.x.w.example.org. 79 3600 300 3600000 3600
+ns1.example.org.		      3600 IN DNAME	foo.example.com.
+ns1.example.org.		      3600 IN DNAME	bar.example.com.