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

Pavlin Radoslavov pavlin@icir.org
Mon, 17 Oct 2005 11:27:52 GMT


CVSROOT:	/usr/local/share/doc/apache/cvs
Module name:	xorp
Changes by:	pavlin@xorpc.icir.org	2005-10-17 11:27:52 UTC

XORP CVS repository


Modified files:
	fea           ifconfig_observer_iphelper.cc 
	              ifconfig_observer_netlink.cc 
	              ifconfig_observer_rtsock.cc 

Log message:
	If the live config state as read from the kernel is modified
	by an observer, then propagate the changes from the live config
	to the local config.
	
	This modification propagates the "no_carrier" flag changes that
	may come from the kernel.
	
	This change completes the fix for Bugzilla entry #167, so now
	the "show interfaces" operational command can be used to show
	the link state of the interfaces. E.g., if the Ethernet cable
	is not plugged, then the "NO-CARRIER" flag would be shown:
	
	Xorp> show interfaces
	fxp0/fxp0: Flags:<NO-CARRIER,BROADCAST,MULTICAST> mtu 1500
	        ...
	xl0/xl0: Flags:<ENABLED,BROADCAST,MULTICAST> mtu 1500
	        ...
	
	Note that the asyncronous upcall notification by the kernel about
	link state changes exists on Linux, NetBSD and OpenBSD, but
	(currently) it doesn't appear to exist on FreeBSD and MacOS X.
	Hence, on the latter systems the link state is read on startup, but
	any future changes to the link state may never be caught and propagated
	by the FEA to the interested parties.
	
	Bugzilla URL:   http://www.xorp.org/bugzilla/show_bug.cgi?id=167

Revision  Changes                               Path
1.4       +8 -1;  commitid: 163b435388b07ea6;   xorp/fea/ifconfig_observer_iphelper.cc
1.13      +11 -2;  commitid: 163b435388b07ea6;  xorp/fea/ifconfig_observer_netlink.cc
1.13      +11 -2;  commitid: 163b435388b07ea6;  xorp/fea/ifconfig_observer_rtsock.cc