[svn] commit: r753 - in /branches/each-datasrc/src: bin/auth/auth_srv.cc bin/auth/auth_srv.h lib/auth/cpp/data_source.cc lib/auth/cpp/data_source.h lib/auth/cpp/data_source_static.cc
BIND 10 source code commits
bind10-changes at lists.isc.org
Mon Feb 8 22:25:39 UTC 2010
Author: each
Date: Mon Feb 8 22:25:39 2010
New Revision: 753
Log:
checkpoint:
- create MetaDataSrc, link StaticDataSrc to it
- remove debugging output
Modified:
branches/each-datasrc/src/bin/auth/auth_srv.cc
branches/each-datasrc/src/bin/auth/auth_srv.h
branches/each-datasrc/src/lib/auth/cpp/data_source.cc
branches/each-datasrc/src/lib/auth/cpp/data_source.h
branches/each-datasrc/src/lib/auth/cpp/data_source_static.cc
Modified: branches/each-datasrc/src/bin/auth/auth_srv.cc
==============================================================================
--- branches/each-datasrc/src/bin/auth/auth_srv.cc (original)
+++ branches/each-datasrc/src/bin/auth/auth_srv.cc Mon Feb 8 22:25:39 2010
@@ -66,6 +66,9 @@
throw FatalError("could not bind socket");
sock = s;
+
+ // add static data source
+ data_src.addDataSrc(new StaticDataSrc);
}
void
Modified: branches/each-datasrc/src/bin/auth/auth_srv.h
==============================================================================
--- branches/each-datasrc/src/bin/auth/auth_srv.h (original)
+++ branches/each-datasrc/src/bin/auth/auth_srv.h Mon Feb 8 22:25:39 2010
@@ -23,7 +23,6 @@
class AuthSrv {
public:
explicit AuthSrv(int port);
- //~AuthSrv() {}
int getSocket() { return (sock); }
void processMessage();
void serve(std::string zone_name);
@@ -31,8 +30,7 @@
isc::data::ElementPtr updateConfig(isc::data::ElementPtr config);
private:
- // TODO: make this a MetaDataSrc, but that one is abstract...
- isc::dns::StaticDataSrc data_src;
+ isc::dns::MetaDataSrc data_src;
int sock;
};
Modified: branches/each-datasrc/src/lib/auth/cpp/data_source.cc
==============================================================================
--- branches/each-datasrc/src/lib/auth/cpp/data_source.cc (original)
+++ branches/each-datasrc/src/lib/auth/cpp/data_source.cc Mon Feb 8 22:25:39 2010
@@ -17,8 +17,6 @@
DSResult result;
Name container(".");
Message& m = q.message();
-
- std::cerr << "entering runQuery()\n";
while (!q.tasks().empty()) {
RRsetList data, sigs;
Modified: branches/each-datasrc/src/lib/auth/cpp/data_source.h
==============================================================================
--- branches/each-datasrc/src/lib/auth/cpp/data_source.h (original)
+++ branches/each-datasrc/src/lib/auth/cpp/data_source.h Mon Feb 8 22:25:39 2010
@@ -140,17 +140,42 @@
}
void findClosestEnclosure(NameMatch& match) const {
- std::cerr << "in MDS::findClosestEnclosure()\n";
BOOST_FOREACH (DataSrc* ds, data_sources) {
if (getClass() != RRClass::ANY() && ds->getClass() != getClass()) {
continue;
}
- std::cerr << "trying a ds...\n";
ds->findClosestEnclosure(match);
}
}
+ // Actual queries for data should not be sent to a MetaDataSrc object,
+ // so we return NOT_IMPLEMENTED if we receive any.
+ //
+ // Instead, use findClosestEnclosure() to get a pointer to the best
+ // concrete data source, then send all queries directly there.
+
+ DSResult findRRset(const Name& qname, const RRClass& qclass,
+ const RRType& qtype, RRsetList& target,
+ RRsetList& sigs) const {
+ return (NOT_IMPLEMENTED);
+ }
+
+ DSResult findRRset(const Name& qname, const RRClass& qclass,
+ const RRType& qtype, RRsetList& target) const {
+ return (NOT_IMPLEMENTED);
+ }
+
+ DSResult findAddrs(const Name& qname, const RRClass& qclass,
+ RRsetList& target, RRsetList& sigs) const {
+ return (NOT_IMPLEMENTED);
+ }
+
+ DSResult findAddrs(const Name& qname, const RRClass& qclass,
+ RRsetList& target) const {
+ return (NOT_IMPLEMENTED);
+ }
+
private:
std::vector<DataSrc*> data_sources;
};
@@ -163,12 +188,10 @@
~NameMatch() {}
void update(const DataSrc& new_source, const Name& container) {
- std::cerr << "updating name\n";
if (closest_name_ == NULL ||
closest_name_->getLabelCount() < container.getLabelCount()) {
closest_name_ = &container;
best_source_ = &new_source;
- std::cerr << container << "\n";
}
}
Modified: branches/each-datasrc/src/lib/auth/cpp/data_source_static.cc
==============================================================================
--- branches/each-datasrc/src/lib/auth/cpp/data_source_static.cc (original)
+++ branches/each-datasrc/src/lib/auth/cpp/data_source_static.cc Mon Feb 8 22:25:39 2010
@@ -50,7 +50,6 @@
void
StaticDataSrc::findClosestEnclosure(NameMatch& match) const {
const Name& qname = match.qname();
- std::cerr << "in SDS::findClosestEnclosure() with name " << qname << "\n";
NameComparisonResult::NameRelation version_cmp =
qname.compare(version_name).getRelation();
More information about the bind10-changes
mailing list