No subject



Sat May 31 0:03:33 2003
Return-Path: xorp-cvs-admin@icir.org
Delivery-Date: Sat, 31 May 2003 00:04:02 -0700
Received: from wyvern.icir.org (wyvern.icir.org [192.150.187.14])
	by tigger.icir.org (8.12.8p1/8.12.3) with ESMTP id h4V742CH087925
	for <atanu@tigger.icir.org>; Sat, 31 May 2003 00:04:02 -0700 (PDT)
	(envelope-from xorp-cvs-admin@icir.org)
Received: from fruitcake.ICSI.Berkeley.EDU (fruitcake.ICSI.Berkeley.EDU [192.150.186.11])
	by wyvern.icir.org (8.12.8p1/8.12.3) with ESMTP id h4V741DD085407;
	Sat, 31 May 2003 00:04:01 -0700 (PDT)
	(envelope-from xorp-cvs-admin@icir.org)
Received: from fruitcake.ICSI.Berkeley.EDU (localhost [127.0.0.1])
	by fruitcake.ICSI.Berkeley.EDU (8.12.9/8.12.9) with ESMTP id h4V741bb024300;
	Sat, 31 May 2003 00:04:01 -0700 (PDT)
Received: from wyvern.icir.org (wyvern.icir.org [192.150.187.14])
	by fruitcake.ICSI.Berkeley.EDU (8.12.9/8.12.9) with ESMTP id h4V73Xbb024291
	for <xorp-cvs@icsi.berkeley.edu>; Sat, 31 May 2003 00:03:33 -0700 (PDT)
Received: from xorpc.icir.org (xorpc.icir.org [192.150.187.68])
	by wyvern.icir.org (8.12.8p1/8.12.3) with ESMTP id h4V73XDD085399
	for <xorp-cvs@icir.org>; Sat, 31 May 2003 00:03:33 -0700 (PDT)
	(envelope-from pavlin@xorpc.icir.org)
Received: from xorpc.icir.org (localhost [127.0.0.1])
	by xorpc.icir.org (8.12.8p1/8.12.3) with ESMTP id h4V73XQg016672
	for <xorp-cvs@icir.org>; Sat, 31 May 2003 00:03:33 -0700 (PDT)
	(envelope-from pavlin@xorpc.icir.org)
Received: (from pavlin@localhost)
	by xorpc.icir.org (8.12.8p1/8.12.3/Submit) id h4V73XOh016671;
	Sat, 31 May 2003 00:03:33 -0700 (PDT)
	(envelope-from pavlin)
From: Pavlin Radoslavov <pavlin@icir.org>
Message-Id: <200305310703.h4V73XOh016671@xorpc.icir.org>
Date:     Sat, 31 May 2003  0:03:33  ()
To: xorp-cvs@icir.org
Reply-To: pavlin@icir.org
Subject: [Xorp-cvs] XORP cvs commit: xorp/pim/ pim_config.cc pim_node.cc pim_node.hh pim_vif.cc  	           pim_vif.hh xrl_pim_node.cc xrl_pim_node.hh
Sender: xorp-cvs-admin@icir.org
Errors-To: xorp-cvs-admin@icir.org
X-BeenThere: xorp-cvs@icir.org
X-Mailman-Version: 2.0
Precedence: bulk
List-Help: <mailto:xorp-cvs-request@icir.org?subject=help>
List-Post: <mailto:xorp-cvs@icir.org>
List-Subscribe: <http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-cvs>,
	<mailto:xorp-cvs-request@icir.org?subject=subscribe>
List-Id: Mailing list for XORP CVS commit messages <xorp-cvs.icir.org>
List-Unsubscribe: <http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-cvs>,
	<mailto:xorp-cvs-request@icir.org?subject=unsubscribe>

CVSROOT:	/usr/local/share/doc/apache/cvs
Module name:	xorp
Repository:	xorp/pim/
Changes by:	pavlin@xorpc.icir.org.	03/05/31 00:03:33

Modified files:
	xorp/pim/: pim_config.cc pim_node.cc pim_node.hh pim_vif.cc 
	           pim_vif.hh xrl_pim_node.cc xrl_pim_node.hh 

Log message:
	* Add new methods PimNode::start_config() and end_config()
	that should be called any time we start and end a batch
	of atomic configuration operations.
	Currently, the main purpose of start/end_config()
	is to set the node status (i.e., to set the ProcessStatus code),
	but in the future they may be used for other purpose as well.
	Currently, the semantic is that we can call start_config()
	more than once before we call end_config().
	
	* Add PimNode::_configured_vifs holder to keep a copy of the
	configured vifs, and add the appropriate methods to add/delete
	vifs, vif addresses, etc. When the MFEA starts sending XRLs
	about add/delete vifs, etc. the modifications are performed
	on _configured_vifs. When "set_all_vifs_done" XRL is sent,
	then the changes are applied to PimNode.
	
	* Modify all configuration methods to call start_config() before
	attempting to perform configuration, and then call end_config()
	before returning.
	Further, add one more parameter to all those config methods:
	"string& reason" to return-by-reference the message with the
	reason for failure (if any).
	
	* Add new methods bool PimNode::is_waiting_for_mfea_startup()
	and bool PimNode::is_waiting_for_mld6igmp_startup()
	to test whether we are waiting to complete startup operations
	with the MFEA and MLD6IGMP respectively.
	
	* Implement a mechnanism to count the number of outstanding events
	that need to be completed to finish the startup operations
	with the MFEA and MLD6IGMP. Basically, it is a counter that
	is incremented when an XRL (from few selected types) is sent
	to the MFEA or MLD6IGMP, and is decremented when the XRL result
	is received.
	
	* Implement PimNode::node_status() method to obtain the node status
	and the message with the human-readable information about the status
	(e.g., the progress-report in case of PROC_SHUTDOWN, the
	reason for waiting in case of PROC_STARTUP, etc).
	
	* Remove the usage of mfea_client/0.1/set_vif_done XRL,
	because it doesn't serve any useful purpose.
	
	* Misc. cleanup

_______________________________________________
Xorp-cvs mailing list
Xorp-cvs@icir.org
http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-cvs