BIND 10 trac2108_3, updated. 061fbc119bccfb8cf5afe7eb3e8a6228d8956168 [2108] Add ZoneTable::setZoneData()

BIND 10 source code commits bind10-changes at lists.isc.org
Mon Sep 3 08:25:18 UTC 2012


The branch, trac2108_3 has been updated
       via  061fbc119bccfb8cf5afe7eb3e8a6228d8956168 (commit)
      from  d1c78d4a09351ccb7f8aab34f74fe5245ba590d6 (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 061fbc119bccfb8cf5afe7eb3e8a6228d8956168
Author: Mukund Sivaraman <muks at isc.org>
Date:   Mon Sep 3 13:54:51 2012 +0530

    [2108] Add ZoneTable::setZoneData()

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

Summary of changes:
 src/lib/datasrc/memory/zone_table.cc |   15 +++++++++++++++
 src/lib/datasrc/memory/zone_table.h  |   10 ++++++++++
 2 files changed, 25 insertions(+)

-----------------------------------------------------------------------
diff --git a/src/lib/datasrc/memory/zone_table.cc b/src/lib/datasrc/memory/zone_table.cc
index f9b2768..f2cddc0 100644
--- a/src/lib/datasrc/memory/zone_table.cc
+++ b/src/lib/datasrc/memory/zone_table.cc
@@ -132,6 +132,21 @@ ZoneTable::findZone(const Name& name) const {
     return (FindResult(my_result, node->getData()));
 }
 
+ZoneData*
+ZoneTable::setZoneData(const Name& name, ZoneData* data)
+{
+    ZoneTableNode* node(NULL);
+
+    ZoneTableTree::Result result(zones_->find(name, &node));
+
+    if ((result != ZoneTableTree::EXACTMATCH) &&
+        (result != ZoneTableTree::PARTIALMATCH)) {
+        return (NULL);
+    }
+
+    return (node->setData(data));
+}
+
 } // end of namespace memory
 } // end of namespace datasrc
 } // end of namespace isc
diff --git a/src/lib/datasrc/memory/zone_table.h b/src/lib/datasrc/memory/zone_table.h
index 2faf606..617cb1e 100644
--- a/src/lib/datasrc/memory/zone_table.h
+++ b/src/lib/datasrc/memory/zone_table.h
@@ -185,6 +185,16 @@ public:
     /// \return A \c FindResult object enclosing the search result (see above).
     FindResult findZone(const isc::dns::Name& name) const;
 
+    /// Override the ZoneData for a node (zone) in the zone tree.
+    ///
+    /// \throw none
+    ///
+    /// \param name A domain name for which the zone data is set.
+    /// \param data The new zone data to set.
+    /// \return A \c ZoneData object containing the old data if the zone
+    /// was found, or \c NULL otherwise.
+    ZoneData* setZoneData(const isc::dns::Name& name, ZoneData* data);
+
 private:
     boost::interprocess::offset_ptr<ZoneTableTree> zones_;
 };



More information about the bind10-changes mailing list