BIND 10 trac2165_2, updated. a173297fd323767a6a37dbf7acba00f54b10ccdc [2165] Move ZoneFinder::stripRRsigs() into a .cc file
BIND 10 source code commits
bind10-changes at lists.isc.org
Sun Aug 26 23:11:28 UTC 2012
The branch, trac2165_2 has been updated
via a173297fd323767a6a37dbf7acba00f54b10ccdc (commit)
via 3afbf54cd0bb69ea6b56015735825d42dd4dfd15 (commit)
from 552c5782d796ec0c1091af6dd8212f23b9775af9 (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 a173297fd323767a6a37dbf7acba00f54b10ccdc
Author: Mukund Sivaraman <muks at isc.org>
Date: Mon Aug 27 04:40:57 2012 +0530
[2165] Move ZoneFinder::stripRRsigs() into a .cc file
commit 3afbf54cd0bb69ea6b56015735825d42dd4dfd15
Author: Mukund Sivaraman <muks at isc.org>
Date: Mon Aug 27 04:07:44 2012 +0530
[2165] Rename variables
-----------------------------------------------------------------------
Summary of changes:
src/bin/auth/tests/query_unittest.cc | 4 +--
src/lib/datasrc/Makefile.am | 2 +-
src/lib/datasrc/memory_datasrc.cc | 8 ++---
src/lib/datasrc/zone.h | 23 +-------------
src/lib/datasrc/zone_finder.cc | 55 ++++++++++++++++++++++++++++++++++
5 files changed, 63 insertions(+), 29 deletions(-)
create mode 100644 src/lib/datasrc/zone_finder.cc
-----------------------------------------------------------------------
diff --git a/src/bin/auth/tests/query_unittest.cc b/src/bin/auth/tests/query_unittest.cc
index ab3359b..603bf5c 100644
--- a/src/bin/auth/tests/query_unittest.cc
+++ b/src/bin/auth/tests/query_unittest.cc
@@ -485,10 +485,10 @@ protected:
isc::dns::ConstRRsetPtr rrset,
FindResultFlags flags = RESULT_DEFAULT)
{
- ConstRRsetPtr rr = stripRRsigs(rrset, options);
+ ConstRRsetPtr rp = stripRRsigs(rrset, options);
return (ZoneFinderContextPtr(
new Context(*this, options,
- ResultContext(code, rr, flags))));
+ ResultContext(code, rp, flags))));
}
private:
diff --git a/src/lib/datasrc/Makefile.am b/src/lib/datasrc/Makefile.am
index bb18b75..d1e113f 100644
--- a/src/lib/datasrc/Makefile.am
+++ b/src/lib/datasrc/Makefile.am
@@ -29,7 +29,7 @@ libb10_datasrc_la_SOURCES += cache.h cache.cc
libb10_datasrc_la_SOURCES += rbnode_rrset.h
libb10_datasrc_la_SOURCES += rbtree.h
libb10_datasrc_la_SOURCES += zonetable.h zonetable.cc
-libb10_datasrc_la_SOURCES += zone.h zone_finder_context.cc
+libb10_datasrc_la_SOURCES += zone.h zone_finder.cc zone_finder_context.cc
libb10_datasrc_la_SOURCES += result.h
libb10_datasrc_la_SOURCES += logger.h logger.cc
libb10_datasrc_la_SOURCES += client.h iterator.h
diff --git a/src/lib/datasrc/memory_datasrc.cc b/src/lib/datasrc/memory_datasrc.cc
index e4ef97f..e38a487 100644
--- a/src/lib/datasrc/memory_datasrc.cc
+++ b/src/lib/datasrc/memory_datasrc.cc
@@ -854,13 +854,13 @@ private:
// in case the caller has the same RRset but as a result
// of normal find() and needs to know they are of the same
// kind; otherwise we simply use the stored RBNodeRRset.
- ConstRRsetPtr rr;
+ ConstRRsetPtr rp;
if (wild_expanded) {
- rr = found->second->getUnderlyingRRset();
+ rp = found->second->getUnderlyingRRset();
} else {
- rr = found->second;
+ rp = found->second;
}
- result.push_back(ZoneFinder::stripRRsigs(rr, options));
+ result.push_back(ZoneFinder::stripRRsigs(rp, options));
}
}
}
diff --git a/src/lib/datasrc/zone.h b/src/lib/datasrc/zone.h
index 15a949d..2330412 100644
--- a/src/lib/datasrc/zone.h
+++ b/src/lib/datasrc/zone.h
@@ -137,28 +137,7 @@ public:
/// \brief A helper function to strip RRSIGs when FIND_DNSSEC is not
/// requested.
static isc::dns::ConstRRsetPtr
- stripRRsigs(isc::dns::ConstRRsetPtr rr, const FindOptions options) {
- if (rr) {
- isc::dns::ConstRRsetPtr sig_rrset = rr->getRRsig();
- if (sig_rrset &&
- ((options & ZoneFinder::FIND_DNSSEC) == 0)) {
- isc::dns::RRsetPtr result_base
- (new isc::dns::RRset(rr->getName(),
- rr->getClass(),
- rr->getType(),
- rr->getTTL()));
- for (isc::dns::RdataIteratorPtr i(rr->getRdataIterator());
- !i->isLast();
- i->next()) {
- result_base->addRdata(i->getCurrent());
- }
-
- return (result_base);
- }
- }
-
- return (rr);
- }
+ stripRRsigs(isc::dns::ConstRRsetPtr rp, const FindOptions options);
/// \brief Context of the result of a find() call.
///
diff --git a/src/lib/datasrc/zone_finder.cc b/src/lib/datasrc/zone_finder.cc
new file mode 100644
index 0000000..562b43f
--- /dev/null
+++ b/src/lib/datasrc/zone_finder.cc
@@ -0,0 +1,55 @@
+// Copyright (C) 2012 Internet Systems Consortium, Inc. ("ISC")
+//
+// Permission to use, copy, modify, and/or distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
+// REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+// AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
+// INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+// LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
+// OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+// PERFORMANCE OF THIS SOFTWARE.
+
+#include <dns/rdata.h>
+#include <dns/rrset.h>
+#include <dns/rrtype.h>
+#include <dns/rdataclass.h>
+
+#include <datasrc/zone.h>
+
+using namespace std;
+using namespace isc::dns;
+using namespace isc::dns::rdata;
+
+namespace isc {
+namespace datasrc {
+
+isc::dns::ConstRRsetPtr
+ZoneFinder::stripRRsigs(isc::dns::ConstRRsetPtr rp,
+ const FindOptions options) {
+ if (rp) {
+ isc::dns::ConstRRsetPtr sig_rrset = rp->getRRsig();
+ if (sig_rrset &&
+ ((options & ZoneFinder::FIND_DNSSEC) == 0)) {
+ isc::dns::RRsetPtr result_base
+ (new isc::dns::RRset(rp->getName(),
+ rp->getClass(),
+ rp->getType(),
+ rp->getTTL()));
+ for (isc::dns::RdataIteratorPtr i(rp->getRdataIterator());
+ !i->isLast();
+ i->next()) {
+ result_base->addRdata(i->getCurrent());
+ }
+
+ return (result_base);
+ }
+ }
+
+ return (rp);
+}
+
+} // namespace datasrc
+} // datasrc isc
More information about the bind10-changes
mailing list