From: Mukund Sivaraman Date: Mon, 28 Jan 2013 07:18:07 +0000 (+0530) Subject: [2390] Use createNameFromLexer() X-Git-Tag: bind10-1.0.0-rc-release~72 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f18d297fd5b1651ebf61d5d72ca0d64b92fece30;p=thirdparty%2Fkea.git [2390] Use createNameFromLexer() Also fix tests to use absolute names. --- diff --git a/src/lib/dns/rdata/generic/mx_15.cc b/src/lib/dns/rdata/generic/mx_15.cc index 48e4c26afc..32c01f3d9e 100644 --- a/src/lib/dns/rdata/generic/mx_15.cc +++ b/src/lib/dns/rdata/generic/mx_15.cc @@ -26,6 +26,8 @@ #include #include +#include + using namespace std; using boost::lexical_cast; using namespace isc::util; @@ -57,17 +59,17 @@ MX::MX(const std::string& mx_str) : mxname_ = Name(mxname); } -MX::MX(MasterLexer& lexer, const Name*, MasterLoader::Options, - MasterLoaderCallbacks&) : +MX::MX(MasterLexer& lexer, const Name* origin, + MasterLoader::Options, MasterLoaderCallbacks&) : preference_(0), mxname_(".") { uint32_t num = lexer.getNextToken(MasterToken::NUMBER).getNumber(); if (num > 65535) { isc_throw(InvalidRdataText, "Invalid MX preference"); } - preference_ = static_cast(num); - mxname_ = Name(lexer.getNextToken(MasterToken::QSTRING).getString()); + + mxname_ = createNameFromLexer(lexer, origin); } MX::MX(uint16_t preference, const Name& mxname) : diff --git a/src/lib/dns/rdata/generic/ns_2.cc b/src/lib/dns/rdata/generic/ns_2.cc index a6891fe297..96d5704330 100644 --- a/src/lib/dns/rdata/generic/ns_2.cc +++ b/src/lib/dns/rdata/generic/ns_2.cc @@ -22,6 +22,8 @@ #include #include +#include + using namespace std; using namespace isc::util; @@ -39,9 +41,9 @@ NS::NS(InputBuffer& buffer, size_t) : // check consistency. } -NS::NS(MasterLexer& lexer, const Name*, MasterLoader::Options, - MasterLoaderCallbacks&) : - nsname_(lexer.getNextToken(MasterToken::QSTRING).getString()) +NS::NS(MasterLexer& lexer, const Name* origin, + MasterLoader::Options, MasterLoaderCallbacks&) : + nsname_(createNameFromLexer(lexer, origin)) {} NS::NS(const NS& other) : diff --git a/src/lib/dns/rdata/generic/ptr_12.cc b/src/lib/dns/rdata/generic/ptr_12.cc index 6b47d0678b..6a3cefacef 100644 --- a/src/lib/dns/rdata/generic/ptr_12.cc +++ b/src/lib/dns/rdata/generic/ptr_12.cc @@ -39,9 +39,9 @@ PTR::PTR(InputBuffer& buffer, size_t) : // check consistency. } -PTR::PTR(MasterLexer& lexer, const Name*, MasterLoader::Options, - MasterLoaderCallbacks&) : - ptr_name_(lexer.getNextToken(MasterToken::QSTRING).getString()) +PTR::PTR(MasterLexer& lexer, const Name* origin, + MasterLoader::Options, MasterLoaderCallbacks&) : + ptr_name_(createNameFromLexer(lexer, origin)) {} PTR::PTR(const PTR& source) : diff --git a/src/lib/dns/tests/rdata_mx_unittest.cc b/src/lib/dns/tests/rdata_mx_unittest.cc index 7eba588d7d..59639444a7 100644 --- a/src/lib/dns/tests/rdata_mx_unittest.cc +++ b/src/lib/dns/tests/rdata_mx_unittest.cc @@ -65,15 +65,15 @@ TEST_F(Rdata_MX_Test, createFromWire) { TEST_F(Rdata_MX_Test, createFromLexer) { EXPECT_EQ(0, rdata_mx.compare( *test::createRdataUsingLexer(RRType::MX(), RRClass::IN(), - "10 mx.example.com"))); + "10 mx.example.com."))); // Exceptions cause NULL to be returned. EXPECT_FALSE(test::createRdataUsingLexer(RRType::MX(), RRClass::IN(), - "10 mx. example.com")); + "10 mx. example.com.")); // 65536 is larger than maximum possible preference EXPECT_FALSE(test::createRdataUsingLexer(RRType::MX(), RRClass::IN(), - "65536 mx.example.com")); + "65536 mx.example.com.")); } TEST_F(Rdata_MX_Test, toWireRenderer) { diff --git a/src/lib/dns/tests/rdata_ns_unittest.cc b/src/lib/dns/tests/rdata_ns_unittest.cc index d536393083..8ec2a2bd5c 100644 --- a/src/lib/dns/tests/rdata_ns_unittest.cc +++ b/src/lib/dns/tests/rdata_ns_unittest.cc @@ -89,7 +89,7 @@ TEST_F(Rdata_NS_Test, createFromWire) { TEST_F(Rdata_NS_Test, createFromLexer) { EXPECT_EQ(0, rdata_ns.compare( *test::createRdataUsingLexer(RRType::NS(), RRClass::IN(), - "ns.example.com"))); + "ns.example.com."))); // Exceptions cause NULL to be returned. EXPECT_FALSE(test::createRdataUsingLexer(RRType::NS(), RRClass::IN(), diff --git a/src/lib/dns/tests/rdata_ptr_unittest.cc b/src/lib/dns/tests/rdata_ptr_unittest.cc index 44b849a933..cecbdd341a 100644 --- a/src/lib/dns/tests/rdata_ptr_unittest.cc +++ b/src/lib/dns/tests/rdata_ptr_unittest.cc @@ -93,7 +93,7 @@ TEST_F(Rdata_PTR_Test, createFromWire) { TEST_F(Rdata_PTR_Test, createFromLexer) { EXPECT_EQ(0, rdata_ptr.compare( *test::createRdataUsingLexer(RRType::PTR(), RRClass::IN(), - "ns.example.com"))); + "ns.example.com."))); } TEST_F(Rdata_PTR_Test, toWireBuffer) {