BIND 10 trac2387, updated. ed58ec0a82ec0b9df0e0f9bd53f1a32123c9fff6 [2387] Use a slightly more efficent getString()
BIND 10 source code commits
bind10-changes at lists.isc.org
Mon Mar 25 13:43:35 UTC 2013
The branch, trac2387 has been updated
via ed58ec0a82ec0b9df0e0f9bd53f1a32123c9fff6 (commit)
from 0ecc1e01cde7133bfcb183ced46b011b4eb9558a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit ed58ec0a82ec0b9df0e0f9bd53f1a32123c9fff6
Author: Mukund Sivaraman <muks at isc.org>
Date: Mon Mar 25 19:12:30 2013 +0530
[2387] Use a slightly more efficent getString()
-----------------------------------------------------------------------
Summary of changes:
src/lib/dns/rdata/generic/detail/nsec_bitmap.cc | 5 +++--
src/lib/dns/rdata/generic/dnskey_48.cc | 13 ++++++++-----
2 files changed, 11 insertions(+), 7 deletions(-)
-----------------------------------------------------------------------
diff --git a/src/lib/dns/rdata/generic/detail/nsec_bitmap.cc b/src/lib/dns/rdata/generic/detail/nsec_bitmap.cc
index a95d6c7..1f2ab35 100644
--- a/src/lib/dns/rdata/generic/detail/nsec_bitmap.cc
+++ b/src/lib/dns/rdata/generic/detail/nsec_bitmap.cc
@@ -87,7 +87,8 @@ buildBitmapsFromLexer(const char* const rrtype_name,
bool have_rrtypes = false;
while (true) {
- const MasterToken& token = lexer.getNextToken();
+ const MasterToken& token =
+ lexer.getNextToken(MasterToken::STRING, true);
if ((token.getType() == MasterToken::END_OF_FILE) ||
(token.getType() == MasterToken::END_OF_LINE)) {
break;
@@ -100,8 +101,8 @@ buildBitmapsFromLexer(const char* const rrtype_name,
have_rrtypes = true;
std::string type_str;
+ token.getString(type_str);
try {
- type_str = token.getString();
const int code = RRType(type_str).getCode();
bitmap[code / 8] |= (0x80 >> (code % 8));
} catch (const InvalidRRType&) {
diff --git a/src/lib/dns/rdata/generic/dnskey_48.cc b/src/lib/dns/rdata/generic/dnskey_48.cc
index d1620fb..bfe148a 100644
--- a/src/lib/dns/rdata/generic/dnskey_48.cc
+++ b/src/lib/dns/rdata/generic/dnskey_48.cc
@@ -160,9 +160,10 @@ DNSKEY::constructFromLexer(MasterLexer& lexer) {
"DNSKEY algorithm out of range: " << algorithm);
}
- std::string keydatastr;
+ std::string keydata_str;
while (true) {
- const MasterToken& token = lexer.getNextToken();
+ const MasterToken& token =
+ lexer.getNextToken(MasterToken::STRING, true);
if ((token.getType() == MasterToken::END_OF_FILE) ||
(token.getType() == MasterToken::END_OF_LINE)) {
break;
@@ -173,19 +174,21 @@ DNSKEY::constructFromLexer(MasterLexer& lexer) {
"Non-string token found when parsing key data");
}
- keydatastr.append(token.getString());
+ std::string keydata_substr;
+ token.getString(keydata_substr);
+ keydata_str.append(keydata_substr);
}
lexer.ungetToken();
// Check that some key data was read before end of input was
// reached.
- if (keydatastr.size() == 0) {
+ if (keydata_str.size() == 0) {
isc_throw(InvalidRdataText, "Missing DNSKEY digest");
}
vector<uint8_t> keydata;
- decodeBase64(keydatastr, keydata);
+ decodeBase64(keydata_str, keydata);
// See RFC 4034 appendix B.1 for why the key data has to be at least
// 3 bytes long with RSA/MD5.
More information about the bind10-changes
mailing list