From: Mukund Sivaraman Date: Fri, 7 Sep 2012 05:21:28 +0000 (+0530) Subject: [2108] NSEC3/NSEC3PARAM RRs with multiple RDATA should throw X-Git-Tag: trac2351_base~70^2~35 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=caf572ed4757d33ee4b849de2a4745dcbe04dc66;p=thirdparty%2Fkea.git [2108] NSEC3/NSEC3PARAM RRs with multiple RDATA should throw --- diff --git a/src/lib/datasrc/memory/tests/memory_client_unittest.cc b/src/lib/datasrc/memory/tests/memory_client_unittest.cc index 1e5b7dc8d6..dd18ff2017 100644 --- a/src/lib/datasrc/memory/tests/memory_client_unittest.cc +++ b/src/lib/datasrc/memory/tests/memory_client_unittest.cc @@ -263,6 +263,24 @@ TEST_F(MemoryClientTest, loadMultipleDNAME) { // Teardown checks for memory segment leaks } +TEST_F(MemoryClientTest, loadMultipleNSEC3) { + // Multiple NSEC3 RRs should throw. + EXPECT_THROW(client_->load(Name("example.org"), + TEST_DATA_DIR + "/example.org-multiple-nsec3.zone"), + InMemoryClient::AddError); + // Teardown checks for memory segment leaks +} + +TEST_F(MemoryClientTest, loadMultipleNSEC3PARAM) { + // Multiple NSEC3PARAM RRs should throw. + EXPECT_THROW(client_->load(Name("example.org"), + TEST_DATA_DIR + "/example.org-multiple-nsec3param.zone"), + InMemoryClient::AddError); + // Teardown checks for memory segment leaks +} + TEST_F(MemoryClientTest, loadRRSIGFollowsNothing) { EXPECT_THROW(client_->load(Name("example.org"), TEST_DATA_DIR diff --git a/src/lib/datasrc/memory/tests/testdata/Makefile.am b/src/lib/datasrc/memory/tests/testdata/Makefile.am index b13f094bf0..d52397261b 100644 --- a/src/lib/datasrc/memory/tests/testdata/Makefile.am +++ b/src/lib/datasrc/memory/tests/testdata/Makefile.am @@ -13,5 +13,7 @@ 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 +EXTRA_DIST += example.org-multiple-nsec3.zone +EXTRA_DIST += example.org-multiple-nsec3param.zone EXTRA_DIST += example.org-nsec3-signed.zone EXTRA_DIST += example.org-nsec3-signed-no-param.zone diff --git a/src/lib/datasrc/memory/tests/testdata/example.org-multiple-nsec3.zone b/src/lib/datasrc/memory/tests/testdata/example.org-multiple-nsec3.zone new file mode 100644 index 0000000000..874023a2a4 --- /dev/null +++ b/src/lib/datasrc/memory/tests/testdata/example.org-multiple-nsec3.zone @@ -0,0 +1,3 @@ +example.org. 86400 IN SOA ns.example.org. ns.example.org. 2012090702 7200 3600 2592000 1200 +09GM5T42SMIMT7R8DF6RTG80SFMS1NLU.example.org. 1200 IN NSEC3 1 0 10 AABBCCDD RKOF8QMFRB5F2V9EJHFBVB2JPVSA0DJD A RRSIG +09GM5T42SMIMT7R8DF6RTG80SFMS1NLU.example.org. 1200 IN NSEC3 1 0 10 AABBCCDD 09GM5T42SMIMT7R8DF6RTG80SFMS1NLU NS SOA RRSIG DNSKEY NSEC3PARAM diff --git a/src/lib/datasrc/memory/tests/testdata/example.org-multiple-nsec3param.zone b/src/lib/datasrc/memory/tests/testdata/example.org-multiple-nsec3param.zone new file mode 100644 index 0000000000..5e69518098 --- /dev/null +++ b/src/lib/datasrc/memory/tests/testdata/example.org-multiple-nsec3param.zone @@ -0,0 +1,3 @@ +example.org. 86400 IN SOA ns.example.org. ns.example.org. 2012090700 7200 3600 2592000 1200 +example.org. 0 IN NSEC3PARAM 1 0 10 AABBCCDD +example.org. 0 IN NSEC3PARAM 1 0 10 AABBCCDD