[svn] commit: r682 - in /experiments/each-query/src/lib/auth/cpp: data_source.cc data_source_static.cc query.cc query.h

BIND 10 source code commits bind10-changes at lists.isc.org
Sat Jan 30 01:44:21 UTC 2010


Author: each
Date: Sat Jan 30 01:44:21 2010
New Revision: 682

Log:
checkpoint

Modified:
    experiments/each-query/src/lib/auth/cpp/data_source.cc
    experiments/each-query/src/lib/auth/cpp/data_source_static.cc
    experiments/each-query/src/lib/auth/cpp/query.cc
    experiments/each-query/src/lib/auth/cpp/query.h

Modified: experiments/each-query/src/lib/auth/cpp/data_source.cc
==============================================================================
--- experiments/each-query/src/lib/auth/cpp/data_source.cc (original)
+++ experiments/each-query/src/lib/auth/cpp/data_source.cc Sat Jan 30 01:44:21 2010
@@ -65,7 +65,10 @@
                 if (q.wantDnssec() && sigs.size() == 1) {
                     m.addRRset(Section(task->section), sigs[0]);
                 }
-                // take apart the CNAME rdata and re-query HERE
+
+                if (data[0].getType() == RRType::CNAME()) {
+                    // take apart the CNAME rdata and re-query HERE
+                }
                 continue;
 
             case NAME_NOT_FOUND:

Modified: experiments/each-query/src/lib/auth/cpp/data_source_static.cc
==============================================================================
--- experiments/each-query/src/lib/auth/cpp/data_source_static.cc (original)
+++ experiments/each-query/src/lib/auth/cpp/data_source_static.cc Sat Jan 30 01:44:21 2010
@@ -31,28 +31,46 @@
 
 const DataSrc*
 StaticDataSrc::findClosestEnclosure(const Name& qname, Name& container, bool& found) const {
-    NameComparisonResult::NameRelation version_cmp = qname.compare(version_name).getRelation();
+    NameComparisonResult::NameRelation version_cmp = 
+        qname.compare(version_name).getRelation();
+
     if (version_cmp == NameComparisonResult::EQUAL ||
         version_cmp == NameComparisonResult::SUBDOMAIN) {
-        if (version_name.compare(container).getRelation() == NameComparisonResult::SUBDOMAIN) {
+        NameComparisonResult::NameRelation sub_cmp = 
+           container.compare(version_name).getRelation();
+
+        if (sub_cmp == NameComparisonResult::SUBDOMAIN) {
+            container = authors_name;
             found = true;
-            container = version_name;
+            return this;
+        } else if (!found && sub_cmp == NameComparisonResult::EQUAL) {
+            found = true;
             return this;
         } else {
             return NULL;
         }
     }
-    NameComparisonResult::NameRelation authors_cmp = qname.compare(authors_name).getRelation();
+
+    NameComparisonResult::NameRelation authors_cmp = 
+        qname.compare(authors_name).getRelation();
+
     if (authors_cmp == NameComparisonResult::EQUAL ||
         authors_cmp == NameComparisonResult::SUBDOMAIN) {
-        if (authors_name.compare(container).getRelation() == NameComparisonResult::SUBDOMAIN) {
+        NameComparisonResult::NameRelation sub_cmp = 
+            container.compare(authors_name).getRelation();
+
+        if (sub_cmp == NameComparisonResult::SUBDOMAIN) {
+            container = authors_name;
             found = true;
-            container = authors_name;
+            return this;
+        } else if (!found && sub_cmp == NameComparisonResult::EQUAL) {
+            found = true;
             return this;
         } else {
             return NULL;
         }
     }
+
     return NULL;
 }
 

Modified: experiments/each-query/src/lib/auth/cpp/query.cc
==============================================================================
--- experiments/each-query/src/lib/auth/cpp/query.cc (original)
+++ experiments/each-query/src/lib/auth/cpp/query.cc Sat Jan 30 01:44:21 2010
@@ -26,5 +26,18 @@
 namespace isc {
 namespace dns {
 
+QueryTask::QueryTask(const Name& n, const RRClass& c,
+                     const RRType& t, const Section& s) :
+    qname(n), qclass(c), qtype(t), section(s)
+{
+        // Empty constructor.  It is defined outside the class statement
+        // because otherwise the linker will be confused.
+}
+
+QueryTask::~QueryTask() {
+        // Empty destructor.  It is defined outside the class statement
+        // because otherwise the linker will be confused.
+}
+
 }
 }

Modified: experiments/each-query/src/lib/auth/cpp/query.h
==============================================================================
--- experiments/each-query/src/lib/auth/cpp/query.h (original)
+++ experiments/each-query/src/lib/auth/cpp/query.h Sat Jan 30 01:44:21 2010
@@ -49,8 +49,7 @@
 class QueryTask {
 public:
     QueryTask(const Name& n, const RRClass& c,
-              const RRType& t, const Section& s) :
-              qname(n), qclass(c), qtype(t), section(s) {}
+              const RRType& t, const Section& s);
     virtual ~QueryTask();
 
     const Name& qname;




More information about the bind10-changes mailing list