From: bert hubert Date: Wed, 12 Jun 2013 13:22:38 +0000 (+0200) Subject: implement RKEY record type. No regression test since none have ever been spotted... X-Git-Tag: auth-3.3-rc2~26 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3150a49c4877c3a6f225bfd11c6da08c192952f5;p=thirdparty%2Fpdns.git implement RKEY record type. No regression test since none have ever been spotted in the wild, so we don't know what to compare against. --- diff --git a/pdns/dnsrecords.cc b/pdns/dnsrecords.cc index d4e95ef1b7..14f64d1065 100644 --- a/pdns/dnsrecords.cc +++ b/pdns/dnsrecords.cc @@ -251,8 +251,14 @@ boilerplate_conv(DNSKEY, 48, ) DNSKEYRecordContent::DNSKEYRecordContent() : DNSRecordContent(48) {} -/* EUI48 start */ +boilerplate_conv(RKEY, 57, + conv.xfr16BitInt(d_flags); + conv.xfr8BitInt(d_protocol); + conv.xfrBlob(d_key); + ) +RKEYRecordContent::RKEYRecordContent() : DNSRecordContent(57) {} +/* EUI48 start */ void EUI48RecordContent::report(void) { regist(1, ns_t_eui48, &make, &make, "EUI48"); @@ -418,6 +424,7 @@ void reportOtherTypes() RPRecordContent::report(); KEYRecordContent::report(); DNSKEYRecordContent::report(); + RKEYRecordContent::report(); RRSIGRecordContent::report(); DSRecordContent::report(); SSHFPRecordContent::report(); diff --git a/pdns/dnsrecords.hh b/pdns/dnsrecords.hh index 86acb38790..b9020a61b8 100644 --- a/pdns/dnsrecords.hh +++ b/pdns/dnsrecords.hh @@ -361,6 +361,15 @@ public: }; //} +class RKEYRecordContent : public DNSRecordContent +{ +public: + RKEYRecordContent(); + includeboilerplate(RKEY) + uint16_t d_flags; + uint8_t d_protocol, d_algorithm; + string d_key; +}; class SOARecordContent : public DNSRecordContent {