[Xorp-cvs] XORP cvs commit: xorp/rtrmgr

Pavlin Radoslavov pavlin@icir.org
Wed, 1 Mar 2006 03:07:58 GMT


CVSROOT:	/usr/local/share/doc/apache/cvs
Module name:	xorp
Changes by:	pavlin@xorpc.icir.org	2006-03-01 03:07:57 UTC

XORP CVS repository


Modified files:
	rtrmgr        conf_tree_node.cc conf_tree_node.hh 

Log message:
	Fix a bug in the method ConfigTreeNode::retain_deletion_nodes(...),
	where a deleted multi-node was not being retained on the deletion
	tree -- the multi-node, as well as its parents, were getting deleted.
	As a result, the xorpsh was not getting properly notified of the deleted
	multi-node via the "config_changed" callback.
	
	The problem can be demonstrated by a rtrmgr template like:
	
	system {
	    name-server @: ipv4 {
	        %help:   short "Configure domain name server";
	        %delete:;
	        /* foo: bool = false; */
	    }
	}
	
	and xorpsh commands like:
	
	create system name-server 1.1.1.1
	commit
	delete system name-server 1.1.1.1
	commit
	
	If there is a second xorpsh instance running, that instance won't
	receive properly the deleted state:
	
	pavlin@possum.icir.org# The configuration had been changed by user pavlin
	DELTAS:
	    system {
	        name-server 1.1.1.1
	    }
	[edit]
	pavlin@possum.icir.org#
	pavlin@possum.icir.org# The configuration had been changed by user pavlin
	[edit]
	pavlin@possum.icir.org#
	pavlin@possum.icir.org# show
	    system {
	        name-server 1.1.1.1
	    }
	
	[edit]
	pavlin@possum.icir.org#
	
	Note that if the "foo: bool = false;" node in the rtrmgr template
	is uncommented, then the problem is masked.
	
	Submitted by:   Marat Nepomnyashy

Revision  Changes                               Path
1.109     +18 -2;  commitid: 954044050e5b7ea6;  xorp/rtrmgr/conf_tree_node.cc
1.61      +2 -1;  commitid: 954044050e5b7ea6;   xorp/rtrmgr/conf_tree_node.hh