BIND 10 trac2377, updated. 42b0cb7bc7423e9f78199ea2f60a449dd98a2843 [2377] Handle relative names

BIND 10 source code commits bind10-changes at lists.isc.org
Mon Dec 3 12:43:38 UTC 2012


The branch, trac2377 has been updated
       via  42b0cb7bc7423e9f78199ea2f60a449dd98a2843 (commit)
       via  2894c45545298103feef9dd0a5f06405d88d67ea (commit)
      from  24c515276e5a15558824fa12b8fefc9b80c315d3 (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 42b0cb7bc7423e9f78199ea2f60a449dd98a2843
Author: Michal 'vorner' Vaner <michal.vaner at nic.cz>
Date:   Mon Dec 3 13:42:17 2012 +0100

    [2377] Handle relative names
    
    Tested at least on the domain names. There is no known Rdata type
    implementation handling relative names right now.

commit 2894c45545298103feef9dd0a5f06405d88d67ea
Author: Michal 'vorner' Vaner <michal.vaner at nic.cz>
Date:   Mon Dec 3 13:19:01 2012 +0100

    [2377] Test skipping lines and comments

-----------------------------------------------------------------------

Summary of changes:
 src/lib/dns/master_loader.cc           |   12 +++++++-----
 src/lib/dns/tests/testdata/example.org |    5 ++++-
 2 files changed, 11 insertions(+), 6 deletions(-)

-----------------------------------------------------------------------
diff --git a/src/lib/dns/master_loader.cc b/src/lib/dns/master_loader.cc
index 6c837e8..5a5aa13 100644
--- a/src/lib/dns/master_loader.cc
+++ b/src/lib/dns/master_loader.cc
@@ -77,9 +77,11 @@ public:
             // Return the last token, as it was not empty
             lexer_.ungetToken();
 
-            const string name_string(getString());
+            const MasterToken::StringRegion
+                name_string(lexer_.getNextToken(MasterToken::QSTRING).
+                            getStringRegion());
             // TODO $ handling
-            const Name name(name_string); // TODO: Origin
+            const Name name(name_string.beg, name_string.len, &zone_origin_);
             // TODO: Some more flexibility. We don't allow omitting anything yet
 
             // The parameters
@@ -87,9 +89,9 @@ public:
             const RRClass rrclass(getString());
             const RRType rrtype(getString());
 
-            // TODO: Origin handling
             const rdata::RdataPtr data(rdata::createRdata(rrtype, rrclass,
-                                                          lexer_, NULL,
+                                                          lexer_,
+                                                          &zone_origin_,
                                                           options_,
                                                           callbacks_));
             // In case we get NULL, it means there was error creating
@@ -108,7 +110,7 @@ public:
 
 private:
     MasterLexer lexer_;
-    const Name& zone_origin_;
+    const Name zone_origin_;
     const RRClass zone_class_;
     MasterLoaderCallbacks callbacks_;
     AddRRCallback add_callback_;
diff --git a/src/lib/dns/tests/testdata/example.org b/src/lib/dns/tests/testdata/example.org
index 929a1a2..deef7d5 100644
--- a/src/lib/dns/tests/testdata/example.org
+++ b/src/lib/dns/tests/testdata/example.org
@@ -8,4 +8,7 @@ example.org.        3600    IN  SOA ( ; The SOA, split across lines for testing
     7200
     )
 example.org.        3600    IN  NS ns1.example.org.
-www.example.org.    3600    IN  A 192.0.2.1
+
+
+; Some empty lines here. They are to make sure the loader can skip them.
+www                 3600    IN  A 192.0.2.1 ; Test a relative name as well.



More information about the bind10-changes mailing list