mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-09-03 16:15:27 +00:00
Fix a potential bitstring bug.
This commit is contained in:
@@ -15,7 +15,7 @@
|
|||||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* $Id: rbt.c,v 1.104 2001/02/21 02:01:15 bwelling Exp $ */
|
/* $Id: rbt.c,v 1.105 2001/02/21 02:27:56 bwelling Exp $ */
|
||||||
|
|
||||||
/* Principal Authors: DCL */
|
/* Principal Authors: DCL */
|
||||||
|
|
||||||
@@ -782,7 +782,7 @@ dns_rbt_findnode(dns_rbt_t *rbt, dns_name_t *name, dns_name_t *foundname,
|
|||||||
unsigned int options, dns_rbtfindcallback_t callback,
|
unsigned int options, dns_rbtfindcallback_t callback,
|
||||||
void *callback_arg)
|
void *callback_arg)
|
||||||
{
|
{
|
||||||
dns_rbtnode_t *current, *last_compared;
|
dns_rbtnode_t *current, *last_compared, *current_root;
|
||||||
dns_rbtnodechain_t localchain;
|
dns_rbtnodechain_t localchain;
|
||||||
dns_name_t *search_name, current_name, *callback_name;
|
dns_name_t *search_name, current_name, *callback_name;
|
||||||
dns_fixedname_t fixedcallbackname, fixedsearchname;
|
dns_fixedname_t fixedcallbackname, fixedsearchname;
|
||||||
@@ -864,13 +864,10 @@ dns_rbt_findnode(dns_rbt_t *rbt, dns_name_t *name, dns_name_t *foundname,
|
|||||||
nlabels = dns_name_countlabels(search_name);
|
nlabels = dns_name_countlabels(search_name);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* In this case, PARENT == UP, since the only
|
* current_root is the root of the current level, so
|
||||||
* nodes that are ever examined at a level are the
|
* it's parent is the same as it's "up" pointer.
|
||||||
* root node and the "correct" node. If
|
|
||||||
* compared == dns_namereln_none, this must not
|
|
||||||
* be the "correct" node.
|
|
||||||
*/
|
*/
|
||||||
up_current = PARENT(current);
|
up_current = PARENT(current_root);
|
||||||
dns_name_init(&hash_name, NULL);
|
dns_name_init(&hash_name, NULL);
|
||||||
|
|
||||||
hashagain:
|
hashagain:
|
||||||
@@ -1029,6 +1026,7 @@ dns_rbt_findnode(dns_rbt_t *rbt, dns_name_t *name, dns_name_t *foundname,
|
|||||||
* Finally, head to the next tree level.
|
* Finally, head to the next tree level.
|
||||||
*/
|
*/
|
||||||
current = DOWN(current);
|
current = DOWN(current);
|
||||||
|
current_root = current;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user