BIND 10 trac2218_2, updated. d0a412aeddad9a64649eb28a3a5ad1003aa97d94 [2218] Work inside the subtree under the origin's node only
BIND 10 source code commits
bind10-changes at lists.isc.org
Wed Sep 19 07:32:09 UTC 2012
The branch, trac2218_2 has been updated
via d0a412aeddad9a64649eb28a3a5ad1003aa97d94 (commit)
from 9ec629f3465d8651ceaf5b766fc91598e26f7023 (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 d0a412aeddad9a64649eb28a3a5ad1003aa97d94
Author: Mukund Sivaraman <muks at isc.org>
Date: Wed Sep 19 12:59:57 2012 +0530
[2218] Work inside the subtree under the origin's node only
-----------------------------------------------------------------------
Summary of changes:
src/lib/datasrc/memory/zone_finder.cc | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
-----------------------------------------------------------------------
diff --git a/src/lib/datasrc/memory/zone_finder.cc b/src/lib/datasrc/memory/zone_finder.cc
index 52b4ff6..9221c91 100644
--- a/src/lib/datasrc/memory/zone_finder.cc
+++ b/src/lib/datasrc/memory/zone_finder.cc
@@ -699,19 +699,21 @@ InMemoryZoneFinder::findNSEC3(const isc::dns::Name& name, bool recursive) {
return (FindNSEC3Result(true, labels, closest, next));
} else {
- const NameComparisonResult& cmp = chain.getLastComparisonResult();
- assert(cmp.getOrder() != 0);
+ const NameComparisonResult& last_cmp =
+ chain.getLastComparisonResult();
+ const ZoneNode* last_node = chain.getLastComparedNode();
+ assert(last_cmp.getOrder() != 0);
- // find() finished in between these two:
- const ZoneNode* previous_node = tree.previousNode(chain);
- const ZoneNode* next_node = tree.nextNode(chain);
+ // find() finished in between one of these and last_node:
+ const ZoneNode* previous_node = last_node->predecessor();
+ const ZoneNode* next_node = last_node->successor();
// If the given hash is larger than the largest stored hash or
// the first label doesn't match the target, identify the "previous"
// hash value and remember it as the candidate next closer proof.
- if (((cmp.getOrder() < 0) && (previous_node == NULL)) ||
- ((cmp.getOrder() > 0) && (next_node == NULL))) {
- covering_node = tree.getLargestNode();
+ if (((last_cmp.getOrder() < 0) && (previous_node == NULL)) ||
+ ((last_cmp.getOrder() > 0) && (next_node == NULL))) {
+ covering_node = last_node->getLargestInSubTree();
} else {
// Otherwise, H(found_entry-1) < given_hash < H(found_entry).
// The covering proof is the first one (and it's valid
More information about the bind10-changes
mailing list