Commit 97d02ec0 authored by JINMEI Tatuya's avatar JINMEI Tatuya
Browse files

[1574b] test the case of adding NSEC3PARAM at non origin

parent d17500bf
......@@ -476,9 +476,10 @@ struct InMemoryZoneFinder::InMemoryZoneFinderImpl {
node->setFlag(DomainNode::FLAG_CALLBACK);
}
// If we've added NSEC3PARAM, set up NSEC3 specific data or check
// consistency with already set up parameters.
if (rrset->getType() == RRType::NSEC3PARAM()) {
// If we've added NSEC3PARAM at zone origin, set up NSEC3 specific
// data or check consistency with already set up parameters.
if (rrset->getType() == RRType::NSEC3PARAM() &&
rrset->getName() == origin_) {
// We know rrset has exactly one RDATA
const generic::NSEC3PARAM& param =
dynamic_cast<const generic::NSEC3PARAM&>(
......
......@@ -1531,7 +1531,18 @@ TEST_F(InMemoryZoneFinderTest, multiNSEC3PARAM) {
EXPECT_THROW(zone_finder_.add(nsec3param), InMemoryZoneFinder::AddError);
}
TEST_F(InMemoryZoneFinderTest, nonOriginNSEC3PARAM) {
// This is a normal NSEC3PARAM at the zone origin
EXPECT_EQ(result::SUCCESS,
zone_finder_.add(textToRRset("example.org. 300 IN NSEC3PARAM "
"1 0 12 aabbccdd")));
// Add another (with different param) at a non origin node. This is
// awkward, but the implementation accepts it as an ordinary RR.
EXPECT_EQ(result::SUCCESS,
zone_finder_.add(textToRRset("a.example.org. 300 IN NSEC3PARAM "
"1 1 1 aabbccdd")));
}
// TODO
// - existence of NSEC3PARAM
// - add NSEC3PARAM at non origin (should be ignored)
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment