2008-01-10 Lon Hohberger <lhh at redhat.com> 1.2.37
	* src/daemons/clusvcmgrd.c: Add 'stopping' state so other nodes
	cannot start a service before it's fully stopped/disabled.  This
	closes a hole where it was possible to have a partially stopped
	service started on another node in the cluster. #428305
	* src/utils/clustat.c: Override state in clustat -x to not break
	redhat-config-cluster
	* src/clulib/shared_services.c: Add STOPPING_STR to list of
	strings.
	* include/clusterdefs.h: Add SVC_STOPPING and SVC_STOPPING_STR

2008-01-07 Lon Hohberger <lhh at redhat.com>
	* src/daemons/clulockd.c: Don't accept connections from nodes
	we don't think are online, even if they're in the configuration
	(#427577)
	* src/clulib/vf.c: Increase the voting timeout
	* src/daemons/cluquorumd.c: Decrease the VF start retry time

2007-10-31 Lon Hohberger <lhh at redhat.com>
	* src/daemons/clusvcmgrd.c: Fix #360541 - if membership drops a node
	before quorumd does, services are not failed over.

2007-10-19 Lon Hohberger <lhh at redhat.com>
	* src/clulib/clist.c: Fix #333001 - fixes erroneous list deletion
	during shutdown of cluquorumd.  This was causing cluquorumd to
	crash in the exit path and not notifying clumembd, preventing
	'service clumanager stop' from succeeding
	* src/daemons/clumembd.c: Fix last-breath notification.

2007-06-14 Lon Hohberger <lhh at redhat.com>
	* src/daemons/clusvcmgrd.c: Apply patch to fix #206149 from Josef
	Bacik

2007-05-21 Lon Hohberger <lhh at redhat.com> 1.2.35.2
	* src/daemons/clurmtabd.c: Fix crash bug causing clurmtabd to break
	(#208995 redux)

2007-04-10 Lon Hohberger <lhh at redhat.com> 1.2.35.1
	* src/daemons/clumembd.c: Apply patch to fix race in clumembd during
	shutdown which could cause the watchdog to fire. #235933

2007-02-22 Lon Hohberger <lhh at redhat.com> 1.2.35
	* src/services/svclib_nfs: Revert to 1.5 to fix NFS failover #226789
	* src/services/svclib_filesystem: Add entry for vxfs #224427
	* src/daemons/cluquorumd.c: Fix disk priority #211312
	* src/daemons/clusvcmgrd.c: Add svc failure reporting #211311
	* Several: Add reboot debugging option #211238
	* init.d/clumanager: Add ability to set timeouts #209384
	* src/daemons/clurmtabd.c: Fix subtree matching #208995

2007-01-11 Lon Hohberger <lhh at redhat.com>
	* src/services/svclib_filesystem: Fix #212046
	* Add reboot debug patch from #211238
	* Add missing operational description.

2006-07-20 Lon Hohberger <lhh at redhat.com> 1.2.34
	* src/services/svclib_filesystem: Correctly check for is_nfs_service
	in svclib_filesystem

2006-06-22 Lon Hohberger <lhh at redhat.com> 1.2.33.2
	* src/daemons/clusvcmgrd.c: Fix #194491 (original patch from Josef
	Whiter)
	* src/daemons/clumembd.c: Fix incorrect output of membership mask
	in debug mode

2006-06-16 Lon Hohberger <lhh at redhat.com> 1.2.33.1
	* src/services/svclib_filesystem, svclib_nfs: Tweaks on NFS export/
	unexport

2006-06-13 Lon Hohberger <lhh at redhat.com> 1.2.33
	* src/services/service, svclib_filesystem: Don't kill lockd on
	start, and always unexport to world rather than individual clients

2006-05-26 Lon Hohberger <lhh at redhat.com>
	* src/services/service, svclib_filesystem, svclib_nfslock: Change
	ordering to drop locks before unexporting the fs

2006-05-04 Lon Hohberger <lhh at redhat.com>
	* src/services/service, svclib_filesystem, svclib_nfslock: Add big
	workaround to tell NFSd to drop locks on unmount if the file
	system can not be unmounted and it is an NFS service.  Also add
	quota support if specified in user options.
	* src/daemons/clusvcmgrd.c: Negative maxrestarts values now
	cause a service to immediately relocate.

2006-01-30 Lon Hohberger <lhh at redhat.com>
	* include/quorumparams.h: Add parameter for cluquorumd to
	make it not STONITH if disk is up when disk tiebreaker is
	in use.
	* src/daemons/cluquorumd.c: Allow use of cluquorumd%disk_quorum
	* doc/man/cludb.8: Document toggle for disk quorum.

2006-01-20 Lon Hohberger <lhh at redhat.com> 1.2.31
	* src/daemons/clumembd.c: Send last breath during shutdown to 
	enable faster membership transitions when a node leaves cleanly
	* src/daemons/clusvcmgrd.c: If we get a lock failure during shutdown,
	switch to unclean shutdown for the rest of the services.  When 
	shutting down services uncleanly, clean up all of them, not just
	the ones we think we started.

2005-12-14 Lon Hohberger <lhh at redhat.com> 1.2.30.1
	* src/daemons/cluquorumd_net.c: Don't zap the tiebreaker status
	on one-node clusters during configuration.

2005-12-13 Lon Hohberger <lhh at redhat.com> 1.2.30
	* src/services/svclib_filesystem: Get rid of tempfile + sorting
	during start/stop of file systems; it's not needed (and cause
	problems!)
	* doc/man/cluforce.8, clustat.8: Update to include more clear
	information on behaviors.
	* librhcm/cm_api.h, quorum.c: Add new API for querying tiebreaker
	information from the quorum daemon.
	* src/daemons/cluquorumd.c: Add support for new QUORUM_QUERY_TB
	message
	* src/utils/clustat.c: Query the quorum daemon for tiebreaker
	status if we're inquorate and provide (hopefully) more sane
	messages to users.

2005-12-06 Lon Hohberger <lhh at redhat.com> 1.2.29
	* src/services/svclib_svcdb, svclib_filesystem: ensure ID-based
	ordering during mount, reversed-ID-based ordering during umount

2005-11-21 Lon Hohberger <lhh at redhat.com>
	* doc/man/cludb.8: Fix primary_only to be broadcast_primary_only
	as it should be (#173640)

2005-11-10 Lon Hohberger <lhh at redhat.com> 1.2.28.6
	* include/msgsvc.h: Add msg_open_local, msg_accept_local,
	msg_listen_local prototypes (#172894)
	* src/clulib/msgsimple.c: Add local messaging to increase locking
	performance (#172894)
	* src/clulib/svc_db.c: Comment out silly debug log message when
	we're returning NOT_FOUND for a given member.
	* src/daemons/clulockd.c: Use local communications for better
	performance (#172894).  Fix signal deadlock condition (#172893).
	* src/daemons/clusvcmgrd.c: Add break to prevent segfault when
	doing ops with services locked (#172735)
	* src/locklib/clulock.c: Use local comms for better performance.
	Retry during unlock phase to prevent FAULT() if a connection fails.
	(#172894, #168665)
	* src/services/svclib_filesystem: Use lsof -bn so we don't block
	on gethostbyname() if DNS is down during force unmount (#171637)
	* src/utils/cludb.c: Unlock in all cases to prevent erroneous
	"Reclaiming lock from nonexistent PID messages" (#172894)

2005-07-28 Lon Hohberger <lhh at redhat.com> 1.2.28
	* src/clulib/if_lookup.c: Don't check IPs of interfaces which
	are not up.

2005-07-27 Lon Hohberger <lhh at redhat.com> 1.2.27pre3
        * src/services/service: Add svclib_ip_netlink handling by
        checking "clusvcmgrd%use_netlink".
        * doc/man/cludb.8: document clusvcmgrd%use_netlink
        * src/services/svclib_ip_netlink: Added.  Support using netlink
        instead of using ifconfig.

2005-07-11 Lon Hohberger <lhh at redhat.com> 1.2.27pre1
	* src/stonithlib/wti_nps.c: support passwords with length == 1
	(#162564)
	* src/stonithlib/apcmaster.c: Support newer AP9225 units
	(#162966)
	* doc/man/clusvcadm.8: Fix #151840: Incomplete man page for
	clusvcadm
	* src/utils/cluarp.c: Fix #160101: VIP not floating correctly 
	on some routers.

2005-06-30 Lon Hohberger <lhh at redhat.com> 1.2.27pre0
	* src/clulib/msgsimple.c: Add support for disabling ARP checking
	(#155393)

2005-04-27 Lon Hohberger <lhh at redhat.com> 1.2.26.2
	* src/stonithlib/pap.c: Use realistic timeouts.

2005-03-23 Lon Hohberger <lhh at redhat.com>
	* src/stonithlib/ipmilan.c: Use realistic timeouts.

2005-03-02 Lon Hohberger <lhh at redhat.com>
	* src/services/svclib_filesystem: Fix #149851 - svclib_filesysem
	kills all processes in /mnt_foo and /mnt if /mnt is file system

2005-02-21 Lon Hohberger <lhh at redhat.com>
	* src/services/svclib_globals, svclib_ip, svclib_svcdb: Make link
	monitoring a per-IP configuration option, not a global one.
	* doc/man/cludb.8: Remove clusvcmgrd%monitor_links

2005-02-13 Lon Hohberger <lhh at redhat.com>
	* src/stonithlib/ipmilan.c: Fix host being nulled out if no password
	specified.  Tell SpawnProcess to call setsid() so we don't have to
	worry about ipmitool opening the controlling TTY
	* src/stonithlib/expect.c, expect.h: Add support for EXP_NOCTTY and
	EXP_STDERR flags.

2005-02-11 Lon Hohberger <lhh at redhat.com>
	* doc/man/cludb.8: Document clusvcmgrd%monitor_links option.
	* src/clulib/stonith_fence.c: Unlink option file only if it succeeds
	(useful for debugging)
	* src/services/svclib_globals, svclib_ip, svclib_svcdb: Make the
	link monitoring a configuration option (default = off) so as not
	to break any existing customer installations.
	* src/stonithlib/Makefile, ipmilan.c: Implement IPMI support for
	Tiger-4 systems (Bull NovaScale Tiger-4 primarily).
	* src/stonithlib/*: Add option to redirect stderr on children
	created with StartProcess() to stdout.

2005-02-07 Lon Hohberger <lhh at redhat.com>
	* clumanager.spec.in: Misc fixes.
	* src/clulib/stonith_config.c: Stop requiring support for every new
	switch we support.  Instead, assume that the switch needs a
	{device/ip, login, password} triple to log in.
	* src/stonithlib/Makefile: Add bladecenter target.
	* src/stonithlib/stelnet.c, stelnet.h: Add generic telnet functions
	for future telnet-based STONITH modules. 
	* src/stonithlib/bladecenter.c: Add support for IBM Blade Center
	STONITH target.

2005-01-11 Lon Hohberger <lhh at redhat.com>
	* clumanager.spec.in: Require iproute (for /sbin/ip)
	* src/services/svclib_ip: Fix broken patch for #144488 which was
	calling the 'ip' function of svclib_ip instead of /sbin/ip.
	* src/services/svclib_log: Fix argument processing for test cases.

2005-01-07 Lon Hohberger <lhh at redhat.com> 1.2.23
	* src/services/svclib_ip: Make link-state monitoring handle
	bonded links for services. (#144488)
	* src/stonithlib/pap.c: Fix bug causing incorrect syslog message
	when waiting for STATE_ON
	* src/clulib/stonith_fence.c: Unlink stonith config files after
	use (#134735)

2005-01-05 Lon Hohberger <lhh at redhat.com>
	* src/clulib/stonith_config.c: Add support for pap driver
	* src/stonithlib/pap.c: Bull NovaScale pap (fame) STONITH driver.

2005-01-03 Lon Hohberger <lhh at redhat.com>
	* src/daemons/clusvcmgrd.c: Fix signal-blocking passed to child
	threads. #143867

2004-12-16 Lon Hohberger <lhh at redhat.com>
	* src/clulib/shared_services.c: Retry when we get bogus info back
	from raw reads of service blocks.  #120934
	* src/clulib/ping.c: Fixed #135098 - wrong size of ping packets
	being used; caused problems with some routers.
	* init.d/clumanager: Fixed #134995 - no default case in init
	script
	* src/daemons/clumembd.c: Fix bug preventing processing of
	broadcast heartbeat packets on different NIC paths.  Only
	set logging facility at startup.
	* src/daemons/cluquorumd.c, clurmtabd.c, clulockd.c: Only set
	logging facility at startup.
	* src/daemons/clusvcmgrd.c: Make sure we handle all waitpid()
	cases properly; some error cases caused #137406.  Only set
	logging facility at startup.
	* src/services/svclib_ip: Add link-state monitoring to IP addresses
	(#144488)
	* src/services/svclib_log: Fix incorrect variable

2004-09-28 Lon Hohberger <lhh at redhat.com> 1.2.22
	* src/clulib/clulog.c, src/daemons/*, src/utils/clufence.c,
	src/utils/clulog.c: Support alternate logging facilities.
	* src/daemons/clurmtabd.c, src/daemons/clurmtab_lib.c: Fix bugs
	preventing proper failover/recovery of nodes in rmtab when multiple
	devices + exports are used in conjunction with wildcards.

2004-09-22 Lon Hohberger <lhh at redhat.com> 1.2.21
	* src/stonithlib/apcmaster.c: Add support for the APC 7900 switch

2004-09-22 Lon Hohberger <lhh at redhat.com> 1.2.20
	* src/clulib/svc_db.c: Sync with new redhat-config-cluster for max
	restarts/false starts in /etc/cluster.xml.
	* doc/man/cludb.8: Add primary_only to documentation.

2004-09-21 Lon Hohberger <lhh at redhat.com> 1.2.19
	* src/services/*: Minor bugfixes

2004-09-21 Lon Hohberger <lhh at redhat.com> 1.2.19pre1
	* src/services/*: Fix for bugzilla #113080: sparse ID tags cause
	services to break

2004-09-15 Lon Hohnerger <lhh at redhat.com>
	* src/iolib/shutil.c: Automatically store cluster.xml whenever we run
	'shutil -i'.
	* src/daemons/cluquorumd.c: Don't start if we can't determine
	our member ID.

2004-09-07 Lon Hohberger <lhh at redhat.com> 1.2.18

2004-09-03 Lon Hohberger <lhh at redhat.com> 1.2.18-pre2
	* include/clusterdefs.h: Keep track of false starts + restarts so we
	can relocate after a number of failed attempts.
	* src/daemons/clusvcmgrd.c: Support max_false_starts and max_restarts
	* src/clulib/svc_db.c: Add getters for max_false_starts and max_restarts

2004-09-02 Lon Hohberger <lhh at redhat.com> 1.2.18-pre1
	* src/daemons/cluquorumd_net.c: Misc changes to make IPv4 TB behave
	better.
	* src/clulib/message.c: Display a message at DEBUG if getting ARP info
	for an IP fails.
	* src/clulib/ping.c: Add 'ICMP_ECHO' as a valid response.
	* src/daemons/clusvcmgrd.c: Fix for double-resource alloc in corner
	case (#131574)
	* src/services/svclib_filesystem: Fix for lsof hang if other NFS file
	systems are mounted (#131235)

2004-08-27 Lon Hohberger <lhh at redhat.com> 1.2.17(devel only)
	* include/net_tie.h: Fixes for network tiebreaker (#130426)
	* src/daemons/cluquorumd.c, cluquorumd_net.c: Fixes for network
	tiebreaker (#130426)
	* src/daemons/clumembd.c: Implemented 'primary-NIC' only mode
	for broadcast heartbeat (#131006).  Incorporated fix for aliased
	bonded ethernet devices (#129710).

2004-06-23 Lon Hohberger <lhh at redhat.com>
	* src/clulib/vf.c: Fix bug causing infinite loop in VF child process
	in the event of timeout (#126316)

2004-06-09 Lon Hohberger <lhh at redhat.com> 1.2.16
	* src/stonithlib/gulm-bridge.c: Increase cycle-timeout for when 
	a gulm master node fails and it's part of the clumanager cluster.
	Make sure we handle the "logged out" gulm state.

2004-06-08 Lon Hohberger <lhh at redhat.com>
	* src/stonithlib/gulm-bridge.c: Fix logout when we're not logged in.
	Make sure we pass empty string instead of NULL.

2004-06-02 Lon Hohberger <lhh at redhat.com> 1.2.15
	* src/daemons/clusvcmgrd.c: Add support for displaying service-lock
	state for clusvcadm
	* src/utils/clusvcadm.c: Same.

2004-05-10 Lon Hohberger <lhh at redhat.com>
	* src/stonithlib/gulm-bridge.c: Pass in empty string instead of 
	NULL pointer to lg_initialize

2004-05-04 Lon Hohberger <lhh at redhat.com>
	* src/daemons/cluquorumd: Allow loss of quorum in clean-exit cases
	w/o STONITH devices (#122364)
	* src/daemons/clusvcmgrd: Make clusvcmgrd relocate services it
	can't run b/c of restricted failover domain (#122441)

2004-04-14 Lon Hohberger <lhh at redhat.com> 1.2.13
	* include/quorumparams.h: Add "cluquorumd%ignore_gulm" parameter
	* src/daemons/cluquorumd.c: Add monitor code for lock_gulmd when
	a member is controlled by lock_gulmd's fencing.
	* librhcm/auth_md5.c: Bump timeout up a few seconds.
	* src/clulib/stonith_fence.c, stonith_config.c: Add gulm-bridge
	support (needs 0 configuration)
	* src/clulib/stonith_driverload.c: Fix log message.
	* src/clulib/msgsimple.c: Use TCP_NODELAY if possible, since we're
	sending miniscule messages frequently.
	* src/iolib/raw/large.c: Import patch from Bugzilla #120085 for AMD64
	support.  Thanks to Phillip Sorensen.
	* src/locklib/clulock.c: Increase timeout a few seconds.
	* src/stonithlib/Makefile: Add gulm-bridge.so to distribution.
	* src/stonithlib/gulm-bridge.c: Added.  Talk to GuLM about fencing
	nodes.

2004-03-09 Lon Hohberger <lhh at redhat.com> 1.2.12
	* doc/man/cluforce.8: Updated to fix broken sentence.
	* doc/man/cludb.8: Added documentation of "cluquorumd%allow_soft"
	* src/daemons/cluquorumd.c: Added handling of "cluquorumd%allow_soft"
	Fixed log messages around tie-breakers so people know when they are
	being used.
	* src/daemons/cluquorumd_disk.c: Fixed up log messages to be uniform
	with other tie-breaker methods.

2004-03-08 Lon Hohberger <lhh at redhat.com> 1.2.11
	* All: Build for U2

2004-02-25 Lon Hohberger <lhh at redhat.com>
	* doc/man/cluquorumd.8: Updated.
	* doc/man/cluforce.8: Documents 'cluforce' command.
	* include/quorum.h: Add QUORUM_FORCE message definition.
	* src/daemons/clumembd.c: Fixed loop in clumembd preventing heartbeat
	receives from occurring naturally.
	* src/daemons/cluquorumd.c: Add handling for QUORUM_FORCE message &
	change default behavior to not allow formation of a quorum off of
	the tiebreaker IP unless operator intervention occurs (#116012)
	* src/utils/cluforce.c: Added; sends QUORUM_FORCE message to quorum
	daemon.

2004-02-24 Lon Hohberger <lhh at redhat.com>
	* src/stonithlib/gulm.c: Added STONITH-GuLM bridge code.

2004-02-20 Lon Hohberger <lhh at redhat.com>
	* src/clulib/stonith_fence.c: Fix for #116380.

2004-02-06 Lon Hohberger <lhh at redhat.com>
	* src/daemons/clumembd.c: Fix for #114653.  Reorganized some code
	as it was *very* unclear as to how it worked WRT binding to
	heartbeat broadcast & multicast addresses.
	* doc/clumanager-1.2.dia: Added.  Basic start/message/monitoring
	diagram.

2004-02-05 Lon Hohberger <lhh at redhat.com>
	* src/services/svclib_filesystem: Port of patch to fix lsof vs.
	losf bug preventing force umount w/lsof.
	* src/locklib/clulock.c: Quiet down useless message and make it
	more useful.
	* src/daemons/clulockd.c: Fix broken log message

2004-02-02 Lon Hohberger <lhh at redhat.com>
	* src/services/*: Fix logic problem preventing ret_val from getting
	set properly.
	* src/servvices/svclib_filesystem: Change behavior when dealing
	with GFS

2004-01-28 Lon Hohberger <lhh at redhat.com>
	* src/services/svclib_filesystem, svclib_device: Import from 1.0.x
	tree fixing missing backslashes (#114435)

2004-01-23 Lon Hohberger <lhh at redhat.com>
	* src/daemons/clusvcmgrd_cfg.c: Handle mis-read of shared configuration
	header as a disk error (#113226).

2004-01-16 Lon Hohberger <lhh at redhat.com> 1.2.9
	* src/daemons/clulockd.c: Retry in case the lock server is responding
	slowly, but is reachable.
	* src/daemons/cluquorumd.c: Change mean and nasty "PANIC" message.
	* src/daemons/clusvcmgrd.c: Fix for services starting on both
	members if high node ID started first followed by low node ID.

2003-12-16 Lon Hohberger <lhh at redhat.com> 1.2.7
	* include/clu_lock.h: Added prototype for lock_set_quorum_view()
	* include/sharedstate.h: Changed lb_align to lb_incarnation.  Although
	'incarnation' is the view of quorum (which is 64-bits wide), we need
	to use a 32-bit space to store it to preserve rolling upgrade.
	* src/daemons/clulockd.c: Added code to store and check cluster
	quorum incarnation numbers.  We reject lock requests from newer
	quorum incarnations (to eliminate a race with the service manager).
	The incarnation is set when we receive a quorum event.
	* src/daemons/clusvcmgrd.c: Added code to store cluster quorum
	incarnation number in lock code to avoid race condition with lock
	daemon which prevented service failover in some cases when we yank
	the cable to shared storage.
	* src/locklib/clulock.c: Added code to store and send cluster quorum
	incarnation in lock messages to clulockd.

2003-12-11 Lon Hohberger <lhh at redhat.com>
	* doc/man/cluquorumd.8: Fixed spelling error and missing 'committed'
	word.

2003-11-14 Lon Hohberger <lhh at redhat.com> 1.2.6
	* clumanager.spec.in: Updated.

2003-11-11 Lon Hohberger <lhh at redhat.com>
	* src/daemons/cluquorumd.c: Fix other case for #109037 (split brain
	using disk tie-breaker during network partition).  Ensure we check
	the disk states even if we receive no network messages (as expected)

2003-11-07 Lon Hohberger <lhh at redhat.com>
	* librhcm/man/cm_event_data.3: Ref. cm_event_io instead of cm_events

2003-11-05 Lon Hohberger <lhh at redhat.com> 1.2.5

2003-11-04 Lon Hohberger <lhh at redhat.com>
	* src/daemons/cluquorumd_disk.c: Ensure we run the disk status
	check when we don't have a membership view showing one member.
	* src/daemons/cluquorumd.c: Fix for #109037 (split brain using disk
	tie-breaker during network partition).  Check correct data structure
	for newly-formed quorum status instead of old view.

2003-11-03 Lon Hohberger <lhh at redhat.com>
	* src/daemons/clumembd.c: Handle "ifdown" and other problems with
	sending multicast packets (ie, interface goes away) like we should.
	Ensure we update our tables when we commit a view.

2003-10-28 Lon Hohberger <lhh at redhat.com>
	* src/services/svclib_ip, svclib_filesystem:  Implement status
	checks for filesystems and IP addresses (previously were no-ops).
	(#108148)

2003-10-16 Lon Hohberger <lhh at redhat.com> 1.2.4
	* src/daemons/cluquorumd.c: Add case-handler for when we lose
	the IP-based tiebreaker and we are in the lesser-half of members.
	Also, don't start the disk thread when the tie-breaker is in use.
	(This wastes resources).  (#107274, #107276)
	* src/daemons/clurawtest.c: Add clurawtest to CVS; minor tweaks.

2003-10-14 Lon Hohberger <lhh at redhat.com>
	* src/stonithlib/rps10.c: Port of fix for #103721

2003-10-08 Lon Hohberger <lhh at redhat.com>
	* doc/man/cluarp.8, clubufflush.8, cludb.8, clufindhostname.8,
	clugetconfig.8, clukey.8, clulog.8, clunfsops.8: Added.  Documents
	internal commands with appropriate warnings (ie, "WARNING: Doom
	awaits you if you run this!"). (#106465)
	* doc/man/clumembd.8: Incorporate/fix unclarity.

2003-10-06 Lon Hohberger <lhh at redhat.com> 1.2.3
	* init.d/clumanager: Fix the "Quorum Service are stopped [FAILED]"
	bug
	* src/daemons/clumembd.c: Fix for #106107 - cluster reboots when
	configuration changed.

2003-10-02 Lon Hohberger <lhh at redhat.com>
	* init.d/clumanager: Bugzilla #106001: Feature which causes
	clumanager to open firewall ports in a firewall as configured by
	redhat-config-securitylevel.
	* clumanager.kdevprj: Removed

2003-09-15 Lon Hohberger <lhh at redhat.com> 1.2.2
	* src/services/svclib_filesystem: Mountpoint issue causing
	noise with loglevel of service manager set to LOG_INFO or LOG_DEBUG

2003-09-11 Lon Hohberger <lhh at redhat.com> 1.2.1
	* src/daemons/clusvcmgrd.c: Report actual running member back to
	caller.
	* src/services/svclib_filesystem: Do the proper check (-e, not -f)
	for the directory.
	* src/services/svclib_samba: Properly detect commented-out
	"netbios name" in /etc/samba/smb.conf.<sharename>
	* src/utils/clustat.c: bugfix: report invalid member/service name
	* src/utils/clusvcadm.c: Report actual member service started on/
	relocated-to back to caller.

2003-09-09 Lon Hohberger <lhh at redhat.com> 1.1.85, 1.2.0
	* Tiny service manager tweak.

2003-09-08 Lon Hohberger <lhh at redhat.com> 1.1.84
	* src/utils/syscall.h, clunfsops.c: Changed to build with hacked up
	kernel includes.

2003-09-08 Lon Hohberger <lhh at redhat.com> 1.1.83
	* Global: Comment sanitizing.
	* clumanager.spec.in: Add automatic-restart upon RPM upgrade.
	* include/clulog.h: Change default log level to LOG_NOTICE.
	* include/vf.h: Move getuptime() into vf.c
	* init.d/clumanager: Add default runlevels.  Add 'condrestart' phase.
	* doc/ReleaseNotes: Updated.
	* doc/services/Makefile: Don't install mysql.server; use the default init
	script shipped with RHEL.
	* src/clulib/vf.c: Move getuptime() here from clumembd.c.  Use getuptime()
	instead of gettimeofday().  Remove unused fds created with pipe().
	* librhcm/cm_api.h: Bump max members from 6 to 16.
	* librhcm/membership.c: Stow away the local member ID; reduces load on 
	clumembd
	* src/daemons/clulockd.c: Clean-ups.  Handle recursive lock attempts.  Restart
	in some error cases.
	* src/daemons/clumembd.c: Clean up handling of when we should update.
	Fixed bug causing infinite retry-loop when strict voting was enabled.
	* src/daemons/clumembd_watchdog.c: Fix watchdog duration to be less than
	failover time.
	* src/daemons/cluquorumd.c: Change exit mask to keep bits on until a member
	comes online again.  Base next-check time on time we finish	the current power 
	switch check (avoids some mid-air collisions on power switches).  Don't allow 
	spawning of multiple power switch check children.  Clean up old VF pipe stuff.
	* src/daemons/cluquorumd_disk.c: We were supposed to need a 3 tko_count
	for disk pinging, not 4.
	* src/daemons/clusvcmgrd.c: Fix fork()-exit bug leaving around multiple
	service managers.  Quiet down failback error messages to prevent alarm.
	* src/iolib/raw/ops.c: Remove "Min Size" display in version string.
	* src/locklib/clulock.c: Use cached local node ID.
	* src/stonithlib/apcmaster.c, servertech.c, wti_nps.c: Exponential backoff 
	on login failure. (Reduces log noise from contention on power switches).
	* src/utils/clusvcadm.c: Fix bug where stopping a disabled service would
	cause it to enable.

2003-09-02 Lon Hohberger <lhh at redhat.com> 1.1.82
	* librhcm/apitcp.c: Minor cleanup
	* src/clulib/shared_services.c: Add missing shared medium error handler.
	* src/clulib/vf.c: Set all peer fds to -1 instead of 0.  Fixes two 
	otherwise strange problems.
	* src/daemons/clulockd.c: Fix shared medium error handling.
	* src/daemons/cluquorumd.c: Tweaks for daemon monitoring.
	* src/daemons/cluquorumd_disk.c: Fix shared medium error handling.
	* src/daemons/clusvcmgrd.c: Tweaks for daemon monitoring.
	* src/daemons/clusvcmgrd_cfg.c: Fix shared medium error handling.

2003-08-26 Lon Hohberger <lhh at redhat.com> 1.1.81
	* src/daemons/clumembd.c: Add 'getuptime()'.  Use uptime to
	calc. timeouts; prevents gettimeofday() problems (ie, changing
	clock!)
	* src/daemons/cluquorumd.c: Increase loop duration.  Fix/add 
	daemon monitoring/restarting.
	* src/daemons/clusvcmgrd.c: Add grace period when we lose
	connection to cluquorumd; reboot if we can't reconnect (very
	bad thing)
	* src/iolib/header.c: Ensure we return a valid CRC in the 
	header field.
	* src/iolib/raw/Makefile: Add test namespace program build.
	* src/iolib/raw/large.c: Add CRC + header checking.  Fix
	mirror-rebuild code.
	* src/iolib/raw/rawio.c: Fix mirror-rebuild code.
	* src/services/svclib_filesystem: Make mount point for a device
	if it doesn't exist.
	* src/services/svclib_nfs: Monitor "clurmtabd" when performing
	a service status check.
	* src/stonithlib/apcmaster.c: Made it work correctly with AP9212
	and AP9225 in user + admin modes.
	* src/stonithlib/expect.c: Don't assume 0 and 1 are NOT
	contained in the pipes we just created.

2003-08-20 Lon Hohberger <lhh at redhat.com>
	* init.d/clumanager: Fixed status reporting causing the GUI to
	fail on starting local daemons.
	* src/daemons/clumembd.c: Restart watchdog on SIGHUP (So a
	user can disable watchdog on a cluster member...)

2003-08-13 Lon Hohberger <lhh at redhat.com> 1.1.80
	* librhcm/md5.c: PPC fix

2003-08-13 Lon Hohberger <lhh at redhat.com> 1.1.79
	* include/vf.h: Add vf_start flags.  Remove unused viewno
	argument.
	* librhcm/api.c: Don't return ENOSYS on an invalid argument.
	Increase timeout for reading an event.
	* librhcm/auth_md5.c: Don't rely on /dev/random for the
	challenge data; it runs the system out of entropy very fast
	in a busy cluster!
	* librhcm/xmlwrap.c: Check return code of sh_write_atomic()
	* src/clulib/msgsimple.c: Close the socket if the server does
	not allow the connection.
	* src/clulib/vf.c: Add vf_running() function to see if VF
	is running on a given key.  Prevents deadlock in the quorum
	daemon.  Make connections after the fork.  Add handling of
	operational flags.
	* src/daemons/clumembd.c: Fix VF behavior.
	* src/daemons/cluquorumd.c: Spawn membership daemon prior to
	determining disk states.  Check disk states only if VF
	isn't running; prevents deadlock.
	* src/daemons/cluquorumd_disk.c: Just check once for disk
	states; no need to do the full cycle.
	* src/daemons/clusvcmgrd.c: Change loglevel for failed
	service to WARNING from NOTICE.  Avoid deadlock during
	startup (two members trying to auth a failback req
	simultaneously).
	* src/daemons/clusvcmgrd_cfg.c: Use memcmp to compare all
	contents of header to see if it changed.
	* src/utils/Makefile: Change build reqs. for cludb, clukey
	so that we can write to shared storage if we change the config.
	* src/utils/clukey.c, cludb.c: Write to shared storage if we
	change the local config.  Ran cludb.c through indent.
	* src/utils/clustat.c: Change wording so as not to confuse
	"view number" with config view number.

2003-08-11 Lon Hohberger <lhh at redhat.com> 1.1.78
	* librhcm/auth_md5.c: Added Doxygen comments.
	* librhcm/binhex.c: Added.  Change bin->ascii/hex and back.
	* librhcm/Makefile: binhex.c integration.
	* librhcm/apitcp.c: binhex.c integration for cluster key.
	* src/clulib/msgsimple.c: binhex.c integration for cluster key.
	* src/utils/clukey.c: Added.  Generate/remove global cluster key
	and bump cluster config view number.
	* src/utils/Makefile: clukey integration.

2003-08-11 Lon Hohberger <lhh at redhat.com> 1.1.77
	* librhcm/Makefile, xmlwrap.[ch], xmlconfig.[ch]: Moved to librhcm
	from src/xmllib so that we can retrieve stuff from /etc/cluster.xml.
	Changed license on xml*.[ch] to LGPL.
	* librhcm/apitcp.c: Auth-md5 integration.
	* librhcm/auth_md5.c: Don't open /dev/random until we *need* it
	(ie, issuing a challenge). Add write()/read() so that the server
	tells us if we're authenticated instead of waiting for a closed
	socket.
	* librhcm/auth_md5.h: Add newline at end of file.
	* src/Makefile: Don't enter xmllib; it's attic material.
	* src/clulib/msgsimple.c: Auth-MD5 integration.
	* src/clulib/vf.c: Connect locally *after* fork().  We need
	to be able to process auth stuff.
	* src/daemons/Makefile: Changed to reflect new location of
	xml config stuff.
	* src/iolib/raw/Makefile: Changed to reflect new location of
	xml config stuff.
	* src/iolib/sfs/Makefile: Changed to reflect new location of
	xml config stuff.
	* src/iolib/utils/Makefile: Changed to reflect new location of
	xml config stuff.

2003-08-08 Lon Hohberger <lhh at redhat.com> 1.1.76
	* src/daemons/clumembd.c: Fixed membership.  Make "-d" cause the
	loglevel to *never* be set.
	* src/daemons/clulockd.c: Initialize/deinit shared storage subsys
	when we gain/lose quorum.

2003-08-08 Lon Hohberger <lhh at redhat.com> 1.1.75
	* include/clushared.h: Changed to add support for "stat(2)" like
	member function.  Removed "size" function.
	* include/membership.h, vf.h: Changed #defines to match VF protocol
	naming.
	* include/sharedstate.h: Moved structure of SharedHeader to
	membership.h
	* librhcm/Makefile: Added md5.o, auth_md5.o as build targets.
	Added auth test targets.
	* librhcm/md5.c, md5.h: Added Colin Plumb's MD5 code.
	* librhcm/auth_md5.c, auth_md5.h: Added simple challenge/response
	authentication code.
	* src/clulib/Makefile, msgsimple.c: Removed fdlist stuff,
	cleaned up obsolete #ifdefs.
	* src/clulib/vf.c: Cleaned up language to match VF protocol.
	* src/daemons/clulockd.c: Read from local config instead of
	shared state (so we don't need to know if there is a quorum
	first)
	* src/daemons/clumembd.c: Move vars to static if they're private.
	Ensure we force a membership event when the number of members
	changes (causing a quorum recalculation).
	* src/daemons/cluquorumd_disk.c: Ensure disk detection time is
	less than membership detection time.
	* src/daemons/clusvcmgrd.c, clusvcmgrd_cfg.c: Check shared
	storage's view of cluster config periodically (just in case a
	config-update message gets lost).
	* src/iolib/header.c: Use swab() macros.  Add support for
	new metadata fields.
	* src/iolib/io_driver.c, shutil.c: Add support for stat-like
	function.
	* src/iolib/raw/ops.c: Add support for stat-like function.
	* src/sfs/ops.c: Add support for stat-like function.
	* src/utils/cludb.c: Port to stat-like function from sh_size.
	* src/xmllib/xmlwrap.c: Port to stat-like function from sh_size.

2003-07-24 Lon Hohberger <lhh at redhat.com> 1.1.74
	* src/services/svclib_user: Service scripts can legally return
	an error code if they're stopped when not running.  Add a status
	check to verify that the script _stopped_ and didn't break during
	the stop phase.
	
2003-07-23 Lon Hohberger <lhh at redhat.com>
	* src/services/svclib_nfs: Ensure that null options are treated
	as "None".  Don't print funny XXX message when someone specifies
	invalid export options.
	* src/daemons/clusvcmgrd.c: Only mark as FAILED if we actually
	fail a start,stop pair of operations during a check/relocate/start
	operation.

2003-07-21 Lon Hohberger <lhh at redhat.com>
	* doc/man/clusvcadm.8, clufence.8, clustat.8: Removed references to
	cluconfig.

2003-07-10 Lon Hohberger <lhh at redhat.com> 1.1.73
	* include/svcmgr.h, src/daemons/fo_domain.c: Implemented pseudo-fuzzy
	logic about whether a member should start a service.
	* src/clulib/fdops.c: Added checking for exceptions on sockets; ran
	through indent.
	* src/daemons/cluquorumd.c: Increased start_vf timeout (reduces
	warnings in 2-member disk-tiebreaker clusters).  Send shutdown
	message before killing off processes.
	* src/daemons/clusvcmgrd.c: Integration with new failover-domain
	logic.  Fixed segfault around relocating failed service.  Ensure
	we don't clobber a service's previous owner when it goes to the
	FAILED state.
	* src/daemons/clusvcadm.c: Ensure we don't accidentally enable
	while attempting to disable.

2003-07-01 Lon Hohberger <lhh at redhat.com> 1.1.72
	* src/utils/clusvcadm.c: Handle relocate of disabled service as
	start.

2003-06-27 Lon Hohberger <lhh at redhat.com> 1.1.71
	* doc/man/clustat.8, clusvcadm.8: Updated.
	* include/svcmgr.h: Added SVC_LOCK/SVC_UNLOCK messages to prevent
	restarting of services during a global shutdown.
	* src/daemons/clusvcmgrd.c: Added handlers & logic for SVC_LOCK,
	SVC_UNLOCK, and behavior surrounding being service-locked.
	* src/utils/Makefile: Added support for clushutdown.
	* src/utils/clustat.c: Added -Q option (return quorum to shell)
	* src/utils/clusvcadm.c: Added -l, -u support (for clushutdown) to
	lock/unlock service managers for clean shutdown.

2003-06-27 Lon Hohberger <lhh at redhat.com> 1.1.70
	* include/clu_lock.h: Changed to hex numbers; added LOCK_LOST_QUORUM
	for unclean service shutdown during remaining services.
	* src/clulib/msgsimple.c: Strengthened MAC address authentication.
	If not local and no ARP info. is available, drop the connection.
	* src/daemons/clulockd.c: Changed behavior after quorum loss to return
	LOCK_QUORUM_LOST message.
	* src/daemons/cluquorumd.c: Killed log message in signal handler
	so futex doesn't blow up.  Added sigterm flag so that we don't reboot
	members which don't have STONITH devices if they were on their way
	down.
	* src/daemons/clusvcmgrd.c: Fixed SVC_STOP request handling.  Added
	flag for sigterm; removed call to clulog in signal handler for
	SIGCHLD.  Added checks for sigterm_received in init_services() and
	main().
	* src/locklib/clulock.c: Added support for LOCK_LOST_QUORUM message
	from clulockd.  If this message is received, we return ENOLCK.
	Changed return value for lock held to 'EBUSY'; EAGAIN is used to
	signify that we haven't yet gained quorum.
	* src/utils/clusvcadm.c: Add "hidden" capability to stop services
	(ie, make them restart after a node transition).

2003-06-25 Lon Hohberger <lhh at redhat.com> 1.1.69
	* src/daemons/clusvcmgrd.c: Handle relocate->local as restart
	* src/utils/clusvcadm.c: Handle relocate->local as restart
	* src/clulib/if_lookup.c: Fix build bug

2003-06-25 Lon Hohberger <lhh at redhat.com> 1.1.68
	* src/daemons/clumembd.c: Don't try to bind heartbeat sockets to
	slave interfaces.
	* src/clulib/if_lookup.c: Don't look for an IP/hostname on slave
	interfaces.
	* src/services/svclib_ip: Check for the SLAVE flag in ifconfig;
	don't bind service IPs to SLAVE interfaces.

2003-06-24 Lon Hohberger <lhh at redhat.com> 1.1.67
	* src/daemons/cluquorumd_disk.c: iolib fix.
	* src/clulib: Minor build/pool cleanup.
	* src/services/svclib_samba: Remove /var/run/samba/<share> and
	/var/cache/samba/<share> on samba service stop.

2003-06-24 Lon Hohberger <lhh at redhat.com> 1.1.66
	* global: Include example scripts in
	/usr/share/doc/clumanager-<v>/examples
	* init.d/clumanager: Add the watchdog timer functionality from 1.0.x.
	Ensure we don't kill clumembd arbitrarily - give it time to properly
	shut down.
	* src/daemons/clumembd_watchdog.c: Fixes to make it watchdog timers
	work properly.
	* src/daemons/cluquorumd.c: Use 'killall' function instead of
	findproc/kill().  Ensure signal handlers are set properly.  Ensure
	we don't break debug loglevel if -d is specified.
	* src/daemons/clusvcmgrd.c: Ensure we try to stop all services in the
	exit path - even if locks blow up (ie, global shutdown).
	* src/locklib/clulock.c, Makefile: Lock directory cleanups (now use
	/var/lock/clumanager).  Only open the lock files if we're trying to
	take the lock - having N lock files open all the time uses up lots
	of file descriptors.
	* src/services/service: Add a little flag to see if we cleanly stop
	or start a service.
	* src/iolib/raw/diskutils.c, alignedbuf.c: Set CLOEXEC flag on our
	file descriptors so that we don't have extra fds laying around in
	children.
	* src/stonithlib/wti_nps.c, apcmaster.c, rps10.c, servertech.c, 
	baytech.c: Close the RPC config file when we're done with it...

2003-06-23 Lon Hohberger <lhh at redhat.com> 1.1.65
	* Fixed clustat errors.
	* Fixed minor bug in membership alg. which caused split-brain
	in some cases (where "need_update" was set but not coordinator).
	* Fixed cases in service manager where last_owner field wasn't
	getting set properly during boot.

2003-06-23 Lon Hohberger <lhh at redhat.com> 1.1.64
	* Fixed error bug when cluster isn't configured and someone
	tries to start/stop it.
	* Misc namespace cleanups.
	* Changed 'NodeStatusBlock' to 'PartStatusBlock'; someday it may
	allow multi-node partitions.
	* Fixed non-creation of /partition directory in namespace within
	SFS driver.
	* Misc msgsvc.h header cleanups.
	* Fixed rebuild to ensure we don't link against dynamic librhcm.
	* librhcm/cm_api.h: Added #defines for membership + quorum port #s.

2003-06-20 Lon Hohberger <lhh at redhat.com> 1.1.63	
	* Stonith Login -> User fix

2003-06-19 Lon Hohberger <lhh at redhat.com> 1.1.62
	* Rebuild fix
	* Pool reorganization/minor recoding to make librhcm LGPL
	* Cleaned up installation process; no more build/`arch`/*

2003-06-18 Lon Hohberger <lhh at redhat.com>
	* clumanager.spec.in: Put chkconfig call back.
	* init.d/clumanager: Change default to not-running in any runlevel.
	* src/services/svclib_samba: Delete per-service samba share pid
	directories on service stop.

2003-06-10 Lon Hohberger <lhh at redhat.com> 1.1.60
	* clumanager.spec.in: Cleanup.
	* src/daemons/clumembd.c: Changed default ping*tko -> 15sec.
	* src/daemons/clusvcmgrd.c: Fix for failover domain crash: services
	are marked 'stopped' after all members of its restricted failover
	domain have crashed.  Changed service transitions to use time()
	instead of gettimeofday().  Fix for relocating a service outside
	of its restricted domain when no other members of said domain
	are online (should fail immediately).

2003-06-02 Lon Hohberger <lhh at redhat.com> 1.1.59
	* init.d/clumanager: Fix for #92012

2003-05-29 Lon Hohberger <lhh at redhat.com> 1.1.58
	* src/utils/clustat.c: Added handling of -v even if /etc/cluster.xml
	is nonexistent.

2003-05-28 Lon Hohberger <lhh at redhat.com> 1.1.57
	* src/services/svclib_samba: Fixed samba startup to ensure that
	PID directories we default to (/var/run/samba/<sharename>) are
	created prior to attempting to start the samba daemons.  Also
	added code to ensure that we share under the hostname of the VIP
	instead of the real hostname if no "netbios name" is specified
	in smb.conf.<sharename>
	* src/services/svclib_globals: added define for FINDHOST
	* src/clulib/clulock.c: Changed to use current membership params
	to determine lock timeout instead of old quorum params.
	* include/membership.h, src/daemons/clumembd.c: Moved #defines into
	header file.
	* include/quorumparams.h, src/daemons/cluquorumd.c: Moved #defines
	into header file.

2003-05-27 Lon Hohberger <lhh at redhat.com> 1.1.56
	* src/daemons/clusvcmgrd.c: Added retry during startup to handle
	the case where we lose and subsequently gain quorum prior to the
	original service manager fully shutting down.  Note: might be
	better to kill the old service manager...
	* src/daemons/clumembd.c: Separated 'multicast enable' from
	'multicast address' (configuration parameters).
	* src/stonithlib/wti_nps.c: Added different case 'invalid password'
	token.
	* src/xmllib/xmlwrap.c: Fixed xtree_writefile bug causing EINVAL on
	ia64 as well as potential window of crashability when we receive an
	EINTR during our write of a file.  Fixed left-over fds hanging
	around.
	   
2003-05-26 Lon Hohberger <lhh at redhat.com> 1.1.55
	* include/sharedstate.h: Another 64-bit-cleanup.

2003-05-26 Lon Hohberger <lhh at redhat.com> 1.1.54
	* [GLOBAL]: 64-bit cleanups (wrong alignment stuff from disk
	structures on the shared partitions).
	* doc/ReleaseNotes: Updated.
	* src/clulib/msgsimple.c: Added SO_KEEPALIVE to connections.
	* src/clulib/vf.c, ping.c: Misc cleanups.
	* src/iolib/shutil.c: Removed ConfigTimestamp printing (since we 
	don't use it...)

2003-05-23 Lon Hohberger <lhh at redhat.com> 1.1.53
	* [GLOBAL]: Changes to reflect removal of auth parameter.
	Changes to log levels so that /var/log/cluster produces useful
	information instead of noise.  Log message cleanups.
	* include/msgsvc.h: Removed auth parameter.
	* include/stonithapis.h: Removed unused declaration.
	* src/clulib/daemon_init.c, fdlist.c: Ran through indent.
	* src/clulib/msgsimple.c, fdlist.c: #ifdef'd out fdlist stuff.
	* src/clulib/nodeid.c: Fixed doxygen comment.
	* src/clulib/stonith_fence.c: Fixed reporting of fence status for
	members which are not controlled by STONITH modules.  Added
	clu_stonith_count() (counts the number of STONITH devices
	controlling a member).
	* src/daemons/cluquorumd.c: Added immediate self-reboot on loss
	of quorum for members not controlled by STONITH.  Added
	timestamp tracking of power switch status messages.
	* src/daemons/cluquorumd_disk.c: Removed "I/O Hang" reboots.
	* src/daemons/clurmtabd.c: Removed self-re-exec on IO/ILL/SEGV
	signals.
	* src/iolib/shutil.c: Fixed formatted output.
	* src/services/svclib_globals: Fixed NOT_FOUND/TIMEOUT values.
	* src/utils/cluconfig: Nuked.
	* src/utils/clufence.c: Dis-allow self-STONITH.
	* src/utils/clustat.c: Fixed return value.
	* src/xmllib/xmlwrap.c: Fixed return value for "none".

2003-05-22 Lon Hohberger <lhh at redhat.com> 1.1.52
	* include/clusterdefs.h: Change service block transition to 64-bit
	instead of 32-bit to match the rest of the cluster status blocks.
	* include/nodeid.h: Added proto for getLocalNodeInfo() which returns
	the local node ID as well as the interface information.
	* include/sharedstate.h: Changed cluster header structure to work
	with shutil(8) and provide more useful information.
	* src/clulib/msgsimple.c: Added ethernet MAC address authentication.
	This is designed to alleviate the problem where, if a sysadmin
	configures a service IP address with the wrong netmask, the wrong
	outgoing address is used by the cluster software to communicate.
	With simple IP-authentication (a la NFS), this would cause the
	socket to be closed immediately.  So, it's a workaround for bad
	configurations, really.  Also ran indent on it to bring it in line
	with the rest of the cluster code base.
	* src/clulib/nodeid.c: Added a function which returns local ethernet
	information while determining the node ID.
	* src/clulib/stonith_fence.c: Dropped the log-message about switch
	states to INFO from NOTICE.
	* src/daemons/clumembd.c: Dropped a bunch of log messages to DEBUG
	from INFO.
	* src/iolib/shutil.c: Added printing of timestamps in human readable
	format to all state blocks on shared storage.
	* src/utils/clufence.c: Added more descriptive help messages.
	
2003-05-20 Lon Hohberger <lhh at redhat.com> 1.1.51
	* Makefile.top: Version 1.1.51
	* include/quorum.h: Added power switch status messages.
	* doc/man/shutil.8: See below.
	* src/clulib/stonith_fence.c: Changed to show the member name instead
	of the member number when logging errors.
	* src/daemons/clumembd.c: Changed log level to match quorum daemon.
	* src/daemons/cluquorumd.c: Added periodic power switch checking of
	next-higher-online member.  This does not check the power switch
	status of offline members.  However, it does log a message at ALERT
	on ALL cluster members if any switch status check fails.  Currently,
	the switch is polled every two minutes.  States are stored internally
	but are not user-accessible (ie, clustat does not show power switch
	states).  Changed initial boot sequence: Determining disk state should
	be done prior to spawning membership daemon, that way we can handle
	requests when they come in rather than waiting a long time, which 
	could potentially cause timeouts in the VF code.
	* src/daemons/cluquorumd_disk.c: Misc. comments/log message changes.
	* src/iolib/shutil.c: Fixed left-around file descriptors, added '-r'
	- retrieve from shared storage - parameter.

2003-05-14 Lon Hohberger <lhh at redhat.com> 1.1.50
	* Makefile.top: Version 1.1.50
	* doc/Makefile: Added.  Unbreaks builds.
	* clumanager.spec.in: Added automatic adding/removing of local4 ->
	/var/log/clumanager in /etc/syslog.conf (will remove if bad idea).
	* include/disk_tie.h: Disk tiebreaker integration.
	* src/daemons/clulockd.c: Prevent split-brain in the lock daemon.
	* src/daemons/cluquorumd.c: Disk tiebreaker integration.  Moved as
	much as possible into cluquorumd_disk.c.
	* src/daemons/cluquorumd_disk.c: Disk tiebreaker integration.  This
	is designed to be really easy to remove.  We don't ever shoot anyone
	as the tiebreaker status thread anymore.
	* src/daemons/clusvcmgrd.c: Locks failing no longer prevents service
	scripts from stopping during initialization.  Handle transition of
	a node from 'panic' or 'uncertain' state to 'down' gracefully.
	* src/iolib/raw/large.c: Removed unnecessary clulog()
	* src/iolib/raw/ops.c: Updated FIXME, removed unnecessary clulog().
	* src/locklib/clulock.c: Fixed locking return messages.
	* src/services/svclib_ip: Fixed handling of IP addresses with no
	broadcast/netmask addresses specified.

2003-05-12 Lon Hohberger <lhh at redhat.com> 1.1.49
	* Makefile.top: Version 1.1.49
	* Global: Lots of copyright/GPL notice additions, minor Doxygen
	additions and code cleanups.
	* include/clusterdefs.h: sb_last_owner field added to service block.
	* src/daemons/clusvcmgrd.c: Implementation of sb_last_owner handling.
	Added SVC_FAILED state and implemented circumstances it could become
	activated.  Logs a mean message if a service fails on all nodes and
	fails to stop as well.  Needs testing.
	* src/utils/clustat.c: Handling of SVC_FAILED state.  Addition of
	querying for individual states of services and members.
	* src/utils/clusvcadm.c: Handling of SVC_FAILED state as well as
	talking to the local member.

2003-05-08 Lon Hohberger <lhh at redhat.com> 1.1.48
	* Makefile.top: Version 1.1.48
	* Lots of manpage work/integration.  Misc. minor code cleanups.
	* Misc Doxygen cleanups

2003-05-05 Lon Hohberger <lhh at redhat.com> 1.1.47
	* Makefile.top: Version 1.1.47
	* include/findproc.h: Added prototypes for killall(), findkillproc().
	* src/clulib/findproc.c: Implemented killall(), findkillproc().
	* src/clulib/stonith_fence.c: Added pthred mutex around
	stonith_fence_cycle (because of disk quorum thread).
	* src/clulib/vf.c: Changed log message to what it should be.
	* src/daemons/cluquorumd_disk.c: Implemented
	and integrated disk-based (BACKUP ONLY) quorum tiebreaker.
	* src/daemons/cluquorumd.c, Makefile: Integrated cluquorumd_disk.c.
	Switched shutdown/signal sending to killall() from findproc().
	* src/daemons/clusvcmgrd.c: Switched signal sending to killall().
	* src/iolib/shutil.c: Fixed /nodes/n/status handling.
	* src/iolib/raw/namespace.c, offsets.h: Fixed /nodes/n/status handling.
	* src/xmllib/xmlconfig.c: Fixed segfault.
	* src/xmllib/xmlwrap.c: Fixed segfault.

2003-05-01 Lon Hohberger <lhh at redhat.com> 1.1.46
	* Makefile.top: Version 1.1.46
	* include/clusterdefs.h, src/clulib/shared_services.c: Added FAILED
	state XXX Not yet implemented in service manager.  This is for when a
	service fails and fails to restart. Customers have been restarting
	failed services blindly - since the cluster merely 'disabled' them -
	this led to partially running services on both nodes (sometimes).
	* include/rmtab.h, src/daemons/clurmtabd_lib.c: Update to be 
	platform-independent and coincide with 1.0.19's.
	* include/vf.h, src/clulib/vf.c: Added timeout handling if desired.
	* init.d/clumanager: Added shutdown of clurmtabd.
	* src/daemons/Makefile, src/services/svclib_nfs,
	src/services/svclib_globals: Reintegration of clurmtabd.
	* src/daemons/clurmtabd.c: Implemented.  Synchronizes a mount point's
	exports and then forks into the background.  It stores a given device's
	rmtab entries in MOUNT_POINT/.clumanager/rmtab instead of the previous
	'sync-over-network' model.
	* src/daemons/clumembd.c: Cleaned out old references to internal VF
	code.  Added timeouts to match vf.h, vf.c.
	* src/daemons/cluquorumd.c: Added timeouts to match vf.h, vf.c.

2003-04-24 Lon Hohberger <lhh at redhat.com> 1.1.45
	* Makefile.top: Version 1.1.45
	* Makefile: Clean up buildtest/doc stuff when doing a make clean.
	* include/platform.h: Added Doxygen file tag.
	* include/rmtab.h: Port of rmtab-compact patch from 1.0.19.
	* include/vf.h: Changed structures around so we wouldn't have to
	do multiple swab-kludges to get at our data.  Moved some of the VF
	structures in here from vf.c.  Added callback type definitions and
	slots in the key_node_t structure.  Added better error/return codes
	for vf_process_msg.
	* src/api/clumq.c: Ported to current API revision (node->member
	naming scheme...).
	* src/clulib/clist.c: Added delete of file descriptors so we can't 
	insert duplicates into the clist.
	* src/clulib/msgsimple.c: Made error messages a little more helpful.
	* src/clulib/vf.c: Updated so that it allows for callbacks, new 
	structure revisions, etc.
	* src/daemons/clumembd.c, clumembd_vf.c, Makefile: Changed to use
	global cluster vf.c+callbacks instead of clumembd_vf.c.
	* src/daemons/clulockd.c: Give descriptive error log messages when
	we fail to write out a cluster lock to persistent storage.
	* src/daemons/cluquorumd.c: Updated to use current vf.h internal API.
	* src/daemons/clurmtabd_lib.c: Port of rmtab-compact patch from 
	1.0.19.
	* src/daemons/clurmtabd.c: XXX BROKEN - start of reintegration.
	* src/services/svclib_samba: Fix for share names with spaces in them.

2003-04-22 Lon Hohberger <lhh at redhat.com> 1.1.44
	* Makefile.top: Version 1.1.44
	* More massive cleanups/doxygen work.

2003-04-22 Lon Hohberger <lhh at redhat.com> 1.1.43
	* Makefile.top: Version 1.1.43
	* Massive pool cleanups.
	* Massive Doxygen documentation additions.

2003-04-17 Lon Hohberger <lhh at redhat.com> 1.1.42
	* Makefile.top: Version 1.1.42
	* include/clu_lock.h: Removed cruft, added macros for config lock.
	* include/cm_api.h: Changed references to 'node' and 'node ID' to 
	'member' and 'member ID' or 'ID#' instead to help eliminate confusion.
	* src/api/*, src/clulib/*, src/daemons/*, src/locklib/clulock.c,
	src/utils/clustat.c: Changed to reflect updated API function names.
	* src/clulib/clucfg.c: Removed unused functions.
	* src/daemons/clusvcmgrd.c: Added lots of Doxygen comments.
	* src/daemons/clusvcmgrd_cfg.c: Added config db write locking.
	* src/utils/Makefile: Changed cluadmin -> clusvcadm.
	* src/utils/cluadmin.c: Removed
	* src/utils/clusvcadm.c: (Replacement for cluadmin.c - same func.).
	Fixed handling of '-v' from the start.
	* src/services/service, svclib_log: Updated to allow service names
	with multiple words.
	* src/services/svclib_device, svclib_filesystem: Removed crufty FS
	label hack.
	* src/services/svclib_svcdb: Added use of /sbin/findfs to determine
	device names given a LABEL= parameter.  FS labels should now work
	out-of-the-box!
	* src/xmllib/xmlwrap.c: Removed secondary write to local config
	file from CFG_Write().  CFG_Read/CFG_Write only deal with shared
	state now.

2003-04-16 Lon Hohberger <lhh at redhat.com> 1.1.40
	* Makefile: Changed 'make rpm|rpms|srpm' to not require root priv.
	* Makefile.top: Version 1.1.40
	* include/clusterdefs.h: Added swab_ServiceBlock macro.
	* include/sharedstate.h: Changed swab_SharedServiceBlock to reflect
	addition of swab_ServiceBlock macro.
	* include/svcmgr.h: Changed values around for a bit (until we can
	filter out the cruft in svc_db.c).
	* src/daemons/clusvcmgrd.c: Clarified start/stop flags.  Deprecated
	special-case handling of cluster alias IP address (this will become
	a full-fledged service).  Lots of spiffy Doxygen comments + function
	cleanups/shortenings.  Implemented cluster-wide, prioritized
	fail-over in the event of service failures (not member failures).
	* src/stonithlib/rps10.c: Addition of handling of 'all', NULL, or
	an empty string (strlen()==0) as the port name -> ALL ports.
	* various: Minor cleanups.

2003-04-11 Lon Hohberger <lhh at redhat.com> 1.1.39
	* Makefile.top: Version 1.1.39
	* include/clu_lock.h: Added LOCK_MASTER_QUERY to find out what member
	is the current lock master.  Added LOCK_DUMP so we can dump the lock
	contents out in the case we have a stuck lock.
	* include/quorumparams.h: Added RTP and fixed loglevel name.
	* include/sharedstate.h: Added program CRC & exe name (from
	/proc/<pid>/exe) to SharedLockBlock.  These fields will be used with
	the above LOCK_DUMP message for debugging.
	* src/Makefile: Don't build the test/ directory.
	* src/clulib/vf.c: Misc. cleanups.
	* src/daemons/clulockd.c: Changed to allow processing of
	LOCK_MASTER_QUERY operation.  Added more Doxygen comments.  Cleaned up
	obvious duplicate logic, and renamed lock_check_fix to lock_reclaim
	since that's what it does.  Moved LOCK_NOT_MASTER responses below
	where we check for sizes of the received buffer.
	* src/daemons/clumembd.c: Misc. cleanups.  Moved reading of smoothing
	parameter below tko_count parameter (since it depends on tko_count).
	Decreased the amount of time required to declare a node as 'UP' or
	'ONLINE'.  It is now (floor(tko_count/3)+1)*interval.
	* src/daemons/cluquorumd.c: Added reading of config. params, including
	real-time priority (perhaps will make clumembd and cluquorumd have the
	same rtp...)

2003-04-04 Lon Hohberger <lhh at redhat.com> 1.1.36
	* Makefile.top: Version 1.1.36
	* src/clulib/msgsimple.c: Fixed host-based authentication to work
	with msg_accept_timeout() calls.
	* src/daemons/clumembd.c: Cleaned up rude comments.
	* src/stonithlib/wti_nps.c: Fixed IPS/RPC code.  Tested with WTI
	IPS-15 with one satellite module - works flawlessly.
	* src/utils/clufence.c: Fixed segfault if no parameters were specified.

2003-04-03 Lon Hohberger <lhh at redhat.com> 1.1.35
	* Makefile.top: Version 1.1.35
	* src/api/clumq.c: Fixed 'Node/Node ID' references in log messages.
	* src/clulib/msgsimple.c: Implemented/added host-based authentication.
	Only cluster members may connect to cluster daemons.
	* src/clulib/netblock.c, stonith_fence.c, svc.c, svc_db.c, vf.c: Fixed
	'Node/Node ID' references in log messages.
	* src/daemons/clulockd.c, clumembd.c, clumembd_vf.c, cluquorumd.c, 
	clurmtabd.c, clusvcmgrd.c, clusvcmgrd_cfg.c, fo_domain.c: Fixed
	'Node/Node ID' references in log messages.
	* src/iolib/raw/diskutils.c: Fixed 'Node/Node ID' references in log
	messages.
	* src/locklib/clulock.c: Fixed 'Node/Node ID' references in log
	messages.
	* src/stonithlib/rps10.c: Fixed inability to use port '10' to cycle
	all ports in an RPS-10 Chain.
	* src/stonithlib/wti_nps.c: Added support for the RPC and IPS series
	switches.
	* src/utils/cluadmin.c, clufence.c, clustat.c: Fixed 'Node/Node ID'
	references in log messages.

2003-03-30 Lon Hohberger <lhh at redhat.com> 1.1.34
	* Makefile.top: Version 1.1.34
	* src/daemons/clusvcmgrd.c: Fixed SVC_RESTART handling.
	* src/utils/cluadmin.c: Fixed handling of -R (restart).

2003-03-28 Lon Hohberger <lhh at redhat.com> 1.1.32
	* Makefile.top: Version 1.1.32
	* src/daemons/clusvcmgrd.c: Enabled failover domain ordering on
	service enable.

2003-03-28 Lon Hohberger <lhh at redhat.com> 1.1.31
	* Makefile.top: Version 1.1.31
	* include/svcmgr.h: SVC_RESTART message.
	* src/clulib/findproc.c: Catches new thread models with .PID entries
	in /proc and ignores them.
	* src/daemons/clusvcmgrd.c: Handle a SVC_RESTART request.  Removed
	processing of SVC_ADD and SVC_REMOVE requests - handle_config_update()
	in fo_domain.c handles rewriting service blocks as necessary based on
	the current vs. past configuration.  Made signal handler seet a flag
	instead of performing the config update inline.
	* src/daemons/clusvcmgrd_cfg.c: Handle adding and removing of services.
	* src/utils/cluadmin.c: Add a 'restart' command line option.

2003-03-27 Lon Hohberger <lhh at redhat.com> 1.1.30
	* Makefile.top: Version 1.1.30
	* include/clusterdefs.h: Changed MAX_SERVICES back to 100
	* include/cm_api.h: Changed MAX_NODES to 16.
	* src/daemons/clulockd.c: Implementation of LOCK_NOT_MASTER reply.
	* src/daemons/clusvcmgrd.c: Implementation of taking into account F/O
	group when a relocate to an unspecified node is performed.
	* src/daemons/clusvcmgrd_cfg.c: Fixed storing of "newer" local config
	to shared state.  Uses MemBackup/MemRestore/MemBackupKill to save
	* src/xmllib/xmlwrap.c: Implementation of CFG_MemBackupKill to free
	a backup created with CFG_MemBackup.
	* src/xmllib/xmlwrap.h: Added function declaration for
	CFG_MemBackupKill

2003-03-27 Lon Hohberger <lhh at redhat.com> 1.1.29
	* Makefile.top: Version 1.1.29
	* doc/ReleaseNotes: Added.
	* src/daemons/clumembd.c: Fixed broadcast/multicast preference to be
	consistent: multicast -> MC Addr (or "0" or "no" to disable),
	broadcast -> "yes" or nonzero (or "no" or "0" to disable)

2003-03-26 Lon Hohberger <lhh at redhat.com> 1.1.28
	* Makefile.top: Version 1.1.28
	* src/daemons/clumembd.c: Fixed RTP flag.
	* src/api/Makefile: Changed to reflect lack of "Provides" in newer
	versions of RPM WRT to symlinks pointing to shared libraries.

2003-03-25 Lon Hohberger <lhh at redhat.com> 1.1.27
	* Makefile.top: Version 1.1.27
	* Makefiles: General cleanups, simplification, consistency updates.
	* src/daemons/cluquorumd.c: #defines for sharedstate%driver. Added
	simple_operation to config. file (so you can have it as a configuration
	option - thus negating the need to back up your script when an erratum
	of clumanager is released.  Added validation of shared state
	accessibility at quorum daemon startup.  Generally this can't be done,
	but until we have a shared-state driver requiring quorum, it's a good
	sanity check.  Changed arbitrator to tiebreaker_ip to be consistent
	with current config. spec.  Added handling so that an unclean exit
	from the service manager (due to loss of quorum) would not cause
	the remaining daemons to exit.
	* src/daemons/clusvcmgrd.c: Simplified exit path with msg_send_simple.
	Added a status flag so that the quorum daemon knows our exit status,
	and can deal with it appropriately.
	* src/daemons/fo_domain.c: Added tons of debugging information &
	updated to match current config spec.

2003-03-20 Lon Hohberger <lhh at redhat.com> 1.1.25
	* Makefile.top: Version 1.1.25
	* src/daemons/clumembd.c: Changed 'thread' default to ON.  Fixed 
	segmentation fault when broadcast was enabled and multicast wasn't.
	Fixed child thread receiving-signals proglem (it now blocks SIGHUP).
	Changed debug behavior to never reboot (so we can debug it) based on
	timing how long it takes to send a heartbeat.  Fixed watchdog bug
	where the watchdog was getting set for ping_interval instead of
	ping_interval*tko_count.
	* src/daemons/clusvcmgrd.c: Changed to handle signals as they're
	received rather than periodically call wait().  Fixed a not-unlocking
	bug when a service enters 'pending state'. 
	* src/daemons/clusvcmgrd_cfg.c: Changed boot behavior to write the
	new configuration to shared state if it has a newer version number.
	This might not be the 'right' thing to do, but it's hard to call it
	'wrong...'.
	* src/iolib/Makefile: Build with pthreads because of change in
	xmlwrap.c
	* src/utils/Makefile: Build with pthreads because of change in
	xmlwrap.c
	* src/xmllib/xmlwrap.c: Force use of pthreads.  And typo.

2003-03-18 Lon Hohberger <lhh at redhat.com> 1.1.24
	* Makefile.top: Version 1.1.24
	* include/quorum.h: Added QUORUM_CLEAN_EXIT message.  Removed now
	unused qv_exit_mask from quorum_view structure.
	* src/daemons/clumembd.c: Changed back to low-node for coordination.
	* src/daemons/cluquorumd.c: Changed coordinator to high-node.  Also
	fixed 'clean-exit' behavior so that it actually works - rather than
	being a part of quorum state, it's held individually - this way if
	multiple quorum changes occur at the same time, clean-exits aren't
	lost (this was a problem!!!).  Changed to force all nodes to recognize
	a clean shutdown instead of coordinator.  Added QUORUM_CLEAN_EXIT
	message handler + initiator (notify_exiting).

2003-03-13 Lon Hohberger <lhh at redhat.com> 1.1.23
	* Makefile.top: Version 1.1.23
	* init.d/clumanager: Fixed 'service clumanager status'.  Returns 1
	if all "status <daemon>" calls do not return the same value, as this
	is, in fact, an error condition requiring immediate attention.
	* src/daemons/clumembd.c: Changed membership coordinator to highest
	node online instead of lowest node online, since locks and STONITH
	are handled by lowest node.
	* src/daemons/clusvcmgrd.c, clusvcmgrd_cfg.c: Added a check to see
	if the configuration was really updated (ie, the view number changed).
	If it hasn't changed, we don't bother sending updates to other members.

2003-03-12 Lon Hohberger <lhh at redhat.com> 1.1.21
	* Makefile.top: Version 1.1.21 (bug: 1.1.22?!!)
	* include/msgsvc.h, src/clulib/msgsimple.c: Added a reconfigure option
	to msg_svc_init().
	* include/svcmgr.h: Added configuration update message type.
	* init.d/clumanager: Fixed 'service clumanager reload' to kill the
	service manager instead of the quorum daemon.
	* src/api/api.c: Since users are supposed to select(2) on the file 
	descriptors returned by cm_ev_register(), we need to timeout quickly
	if the file descriptor cm_ev_read() is erroneously called.
	* src/daemons/Makefile: Added clusvcmgrd_cfg.o to service manager.
	* src/daemons/clusvcmgrd_cfg.c: Added clusvcmgrd_cfg.c to pool.  This
	implements functions which synchronize & reread the configuration from
	disk so that the GUI tools can write /etc/cluster.xml, call 'service
	clumanager reload' and have the cluster configuration propogated to
	all (online) nodes.
	* src/daemons/clulockd.c: Added SIGHUP handler for reconfiguration.
	* src/daemons/clumembd.c: Fixed reconfiguration handler.  This was 
	calling CFG_Destroy(), then memb_read_params(), which caused it to
	get into all kinds of weird states - memb_read_params() reads from an
	empty database in this case!
	* src/daemons/cluquorumd.c: Fixed bug where the quorum daemon would
	not wait for the service manager if it existed, and wait forever if
	one did not exist and the quorum daemon wasn't running in simple mode.
	Fixed/implemented reconfiguration handler.
	* src/daemons/clusvcmgrd.c: Added/rebuilt SIGHUP handler.  The service
	manager handles configuration distribution, since it's one of the
	daemons which uses shared state.  Added glue code to clusvcmgrd_cfg.c.
	Service manager reads config from shared state and syncs it to the 
	local configuration on boot. Fixed a bug where, if we received SIGHUP,
	the select() call in main would return a -1/EINTR which wasn't handled,
	causing the service manager to call msg_accept_timeout() AND
	quorum_msg().  Added config file check: recreate /etc/cluster.xml if
	it disappears...
	* src/xmllib/xmlconfig.c: Fixed minor bugs which caused file
	descriptors to be left around in the case that that writing the config
	file failed.
	* src/xmllib/xmlwrap.c: Allow returning of errno to see why a config
	write failed.

2003-03-07 Lon Hohberger <lhh at redhat.com> 1.1.19
	* src/daemons/cluquorumd.c: Fixed 'service cluster stop' not working
	  if the node did not have the service manager running.  Added
	  lock daemon signalling.
	* src/services/svclib_globals: renamed networks to service_ipaddresses,
	  etc.

2003-03-06 Lon Hohberger <lhh at redhat.com> 1.1.18
	* src/daemons/cluquorumd.c: Fixed bug where nodes declared 'cleanly'
	  shut down were unable to rejoin the cluster.
	* src/utils/cluadmin.c: Fixed bug when enabling a service where
	  "(null)" was displayed instead of the local node name if no node
	  name was specified with the -n command line.

2003-03-03 Lon Hohberger <lhh at redhat.com> 1.1.17
	* src/daemons/cluquorumd.c, clusvcmgrd.c: Changed to allow for the
	  possibility of panic-state nodes: nodes which we don't really
	  know the status of because we failed to fence them when they
	  went down...  Pretty simple.
	* src/daemons/clumembd.c: Changed to support multiple clusters on
	  the same subnet and multicast address.
	* init.d/cluster -> clumanager: Renamed and changed to shut up
	  rpmlint.
	* clumanager.spec.in: Added 'Provides' line - newer RPM builds
	  need this, as they don't pick up 'librhcm.so' since it's a
	  symlink to librhcm.so.<version>.
	* General: Removed *A LOT* of unused code.

2003-02-28 Lon Hohberger <lhh at redhat.com> 1.1.15
	* Makefile(s): Temporary hack job to make shared libraries
	  for A1.
	* src/clulib/*.c: #ifndef __LIBRARY__ around stuff that
	  won't be in the shared (user-usable) API library.
	* src/api/*: Build shared and static API libraries for users!
	* src/daemons/fo_domain.c: Changed node tag in to
	  "failoverdomainnode" to be consistent with the GUI.

2003-02-27 Lon Hohberger <lhh at redhat.com> 1.1.14
	* Makefile: Fixed 'make rpm' and 'make rpmsetup'
	* clustat -x: XML output, including config + state from
	  clustat.
	* src/xmllib/*: CFG_WriteBuffer, fixes for CFG_Set.
	* src/utils: Removed obsolete files

2003-02-26 Lon Hohberger <lhh at redhat.com>
	* STONITH near completion - all modules ported; only the APC
	  MasterSwitch left to test.
	* RPM .spec stuff.
	* Fixed segfault in src/utils/cluadmin.c

2003-02-24 Lon Hohberger <lhh at redhat.com>
	* Initial entry.
