summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xsrc/lib/dns/gen-rdatacode.py.in1
-rw-r--r--src/lib/dns/rdata/generic/nsec3param_51.cc12
2 files changed, 13 insertions, 0 deletions
diff --git a/src/lib/dns/gen-rdatacode.py.in b/src/lib/dns/gen-rdatacode.py.in
index fac1bb1408..513193a892 100755
--- a/src/lib/dns/gen-rdatacode.py.in
+++ b/src/lib/dns/gen-rdatacode.py.in
@@ -44,6 +44,7 @@ new_rdata_factory_users = [('a', 'in'), ('aaaa', 'in'),
('ns', 'generic'),
('nsec', 'generic'),
('nsec3', 'generic'),
+ ('nsec3param', 'generic'),
('ptr', 'generic'),
('soa', 'generic'),
('spf', 'generic'),
diff --git a/src/lib/dns/rdata/generic/nsec3param_51.cc b/src/lib/dns/rdata/generic/nsec3param_51.cc
index 5686353c53..e0a0f589b3 100644
--- a/src/lib/dns/rdata/generic/nsec3param_51.cc
+++ b/src/lib/dns/rdata/generic/nsec3param_51.cc
@@ -63,6 +63,18 @@ NSEC3PARAM::NSEC3PARAM(const std::string& nsec3param_str) :
params.iterations, salt);
}
+NSEC3PARAM::NSEC3PARAM(MasterLexer& lexer, const Name*, MasterLoader::Options,
+ MasterLoaderCallbacks&) :
+ impl_(NULL)
+{
+ vector<uint8_t> salt;
+ const ParseNSEC3ParamResult params =
+ parseNSEC3ParamFromLexer("NSEC3PARAM", lexer, salt);
+
+ impl_ = new NSEC3PARAMImpl(params.algorithm, params.flags,
+ params.iterations, salt);
+}
+
NSEC3PARAM::NSEC3PARAM(InputBuffer& buffer, size_t rdata_len) {
vector<uint8_t> salt;
const ParseNSEC3ParamResult params =