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