Subject: CVS commit: pkgsrc/sysutils
To: None <pkgsrc-changes@NetBSD.org>
From: Thomas Klausner <wiz@netbsd.org>
List: pkgsrc-changes
Date: 02/07/2007 00:03:28
Module Name:	pkgsrc
Committed By:	wiz
Date:		Wed Feb  7 00:03:28 UTC 2007
Modified Files:
	pkgsrc/sysutils/cfengine2: Makefile Makefile.common PLIST distinfo
	pkgsrc/sysutils/cfengine2-doc: Makefile
Removed Files:
	pkgsrc/sysutils/cfengine2/patches: patch-ad patch-ae patch-ah patch-aj
	    patch-al
Log Message:
Update to 2.1.22:
2.1.22
	IMPORTANT: cfshow output formatting changes
	           database internal format changes
	Rewritten the checksum subsystem to allow for future development
	and improvements and tidied the fragile Berkeley DB code. Cfservd
	no longer caches checksums, as this causes update issues. This could
	lead to additional load.
	The checksum code has been rewritten with a new database model, so all
	old data will be rebuilt. The checksum database has been renamed.
	ChecksumDatabase variable is not longer used.
	Package manager debian patch added to iterate over packages
	under installation.
	Package manager for AIX code added, courtesy of Anthony Rassin
	Package manager for Gentoo added, courtesy of Eric Searcy
	ShowState(rootprocs), ShowState(otherprocs) added for
	better process reporting
	General code reorganization for better separation of concerns, looking
	towards cfengine 3.
	cfconvert removed. Change of future strategy for cfengine 3 migration.
	Rationalization of internal instrumentation and better integration
	with cfenvd.
	Bug fixes to miscmounts. Editing was broken with respect to editfilesize variable.
	Option processing for miscmounts was also broken.
	Support for old Berkeley DB APIs abandoned.
	Encryption level added for full encryption of opendir traffic.
	Must set FullEncryption = ( true ) in control for compatability
	server=none now signals noop in method execution and copy.
        Varstring expansion bug for nested variables.
2.1.21
	copy action now supports this $(this) variable which is made equal to the
	current server. This allows separating files from multiple hosts when downloading.
	cfenvd LDT fixes
	Bugs in PeerLeader/Group functions fixed.
	Some buffer limits too small and hardcoded in item.c - fix
	PH support removed from cfenvd during code rationalization - never used
	Cfenvd code rationalization and channge in database format.
	THe first time cfenvd runs, it will convert the database into the new format,
	be aware that this could take some time as it is disk intensive.
	Matt Shibla (ARM) ReturnsZeroShell function added.
	Cfrun ignored port number, fix
2.1.20
	ipv6 structure compilation error for Tru64
	Tested for compilation with latest Berkeley4.4-NC
	New option in cfservd.conf "LogEncryptedTransfers" (true/false).
	If true, any file that is granted access and is marked "encrypt=true"
	will be logged in syslog. i.e. one can keep a record of sensitive
	transfers.
	Linkcopy fix in 2.1.19 broke copying of links that point
	nowhere. Fixed.
	Copy was missing from the multi-pass detection. Fixed
	Patch to debian package management. (bastiaans@sara.nl) fixed -
	debian package always returned eq/true without cmp/version
	statement" (checking if a package is installed, regardless of
	version, now works
	However the "Comparison result" is always "eq" (equal) somehow for
	me... "
	If you are experiencing problems with 2.1.19 please get 2.1.19a.
	One of the changes in 2.1.19 has had bizarre side effects in links
	and disks.
2.1.19
	cfagent will now exit and cease processing if any class in the defined
	control list
	 AbortClasses = ( class_name_1 class_name_2 ... )
	The singlecopy feature has been rewritten after reports of it not
	working, besides, the code was bizarre and the documentation was
	even worse.
	The autodefine code also patched and tested. In both these cases,
	there are lists of *patterns* or wildcards. The code and docs now
	agree
	ExecResult now runs its command in -n mode
	Error parsing strings (esp shellcommands) that contain the $
	symbol due to a bug in 2D-lists.
	VMWare ESX recognition.
	Bug in cfservd stat-mode on symbolic links not correctly
	evaluated.  Bug in linktype=copy for copy fixed.
	Bug in array expansion fixed - would truncate string after expansion
	Constant-cosmetics and length alterations. CF_SMALLBUF introduced,
	and MAXHOSTNAMELEN used
	PID file added for each daemin in WORKDIR == /var/cfengine
	Patch for function argument parsing
	Typo in docs. SelectPartitionGroup -> SelectPartitionNeighbours
	Inform=true support for packages
	HostRange bug - recoding not implemented properly from
	2.1.16. Caused seg fault.
	Joe Buehler's harmless patch to cfexecd to flag daemon and batch mode.
	Serious bug in binserver handling fixed. (Rarely used feature)
	home tidying did not set the "done flag" for multiple pass avoidance.
	Patches to setting unqualified and qualified names
	SuSE 10 detection patch
	Minor error fixes discovered by Joe Buehler and his wonderful
	software.
        Files is the "suspicious" list were marked "not sensible" so that
	follow-up rules e.g. to delete them would not be triggered This is
	now considered a confusion of roles. Suspicious files are no
	longer skipped.
	More memory leaks in cfservd
	Compilation fix for non-IPv6 savvy machines
2.1.18
	Error in FileExists() left over from 2.1.16 changes. Fixed
	elsedefine was not defined if a copy was requested of a non-existent file. Fixed.
	HostnameKeys (dynamic keys for dhcp clients) fix for cfservd.
	Error in stat'ing links that point to non-existent files in
	cfservd. Missing "else" caused this to be reported as an error in
	remote file copy.
	5 second timeout reduced to 10 in cfservd file change check.
	Error message returned by cfservd is non-specific and previously
	said authentication denied, regardless of failure. The daemon now replies
	"Unspecified refusal". Users should use -v or -d2 on both sides of a connection
	to diagnose the true cause of failure,
	Segmentation fault when in verbose mode fixed - editfiles pointer.
	Error in parsing quotes and escaped quotes in functions.
	Bug in implementation of tidy scheduling during dependent classes fixed.
	BeginGroupIfLineMatch
	BeginGroupIfMatch
	BeginGroupIfLineContaining operations added
	Function ExecShellResult similar to ExecResult, but a shell is used,
	cfservd some additional memory reclamation during file updates, could cause memory leaks..
2.1.17
		This is a minor bugfix release
	WARNING	- the handling of function arguments has been changed. You are recommended to
	use normal C/Perl quoting of argument strings., e.g.
	  result = ( ExecResult("/bin/sh -c \"${pf_cc} -V | head -1 | cut -d\  -f3\"") )
	not
  	  result = ( ExecResult(/bin/sh -c "${pf_cc} -V | head -1 | cut -d\  -f3") )
	IsWildItemIn now has reflexive check - some confusion in the code about whether
	the needle or the haystack is the wildcard.
	Templating in editfiles. A new editfiles directive "ExpandVariables"
	adds an "m4" like function to cfengine -- allowing predefined variable strings
	to be expanded into text.
	Patch contributed to expansvariables: Davor Ocelic <docelic@mail.inet.hr>
	Alerts patch - some alerts not installed, if classes not defined.
	Patch for missing variable expansion after function
	parameter rewrite in 2.1.16. Some functions were not fully ported.
	vicf eliminated from distribution
	PrepModule environment fix
	Compilation error C++ mixed into cfetool fix
	Chdir to / when ascting as a daemon for cfservd, cfexecd etc
2.1.16
	Bugfix release
	Moved method parameter setting to fix a bug where parameters would
	be set too late to be used in the parser
	action=warn in copy required inform=true to work, fixed.
	Function arg expansion bug and improvement fix
	Include directive added to cfrun.hosts (Olivier Fauchon)
	MOUNT_RO name collision fix
	SEG fault fixed when signalling cfenvd
	SkipIdentify partial fix
	Alf Wachsmann and Elizabeth Cassel's cfetool added, based on cfenvd.
	"cfetool makes a standalone tool out of cfenvd that accepts arbitrary
	periodic data. In addition, it has support for yearly periodic data.
	It's function and the user interface is in many aspects like rrdtool's.
	cfetoolgraph was added to work with the new features of cfetool.
	It works basically like cfenvgraph."
	Bug fix for multipass evaluation when resolving dependencies.
	Cfservd reread patch. Timeout on polling for linux,
	Default route code now uses "route" command exclusively for portability.
	EmailFrom patch to cfexecd / redundant code was paste error
	Increase pass depth in evaluation of action sequence.
	Skipident patch
	Size increase for interface buffer list
	HPUX,AIX ifconfig location fix
	Methods documentation improved.
	New control function for testing tcp services
          var = ReadTCP(host,port,"send string",maxbytes)
2.1.15
	-f removal in cfservd patch
	Segmentation fault in cfservd with RSA key exchange fixed.
	Disk freespace alerting bug - did not agree with manual specification. Message
	appears only in verbose. Fixed.
	Autodefine install patch.
	Abspath in shellcommands was not parsed and acted on...
	Warnall action was not respected in copy. Permissions were altered on destination file anyway.
	cfcolon added to special symbols.
2.1.14
	Alerts processed now in update context.
	More locking canonification fixes
	Exception for ReplaceALL convergence warning. Warning is not fatal
	if the operation is inside an editgroup.
	md5/sha1 message incorrect on new file found.
       Fixup Makefile.am and doc/Makefile.am.  Docs are now installed
       in the CFEngine "share" directory where they belong.
	Directory iteration fixed. New: owner=LastNode sets the owner of
	the directory to the name of the last node in the dir name. This allows
	the creation of homedirs.
	CentOS support added.
	Extra encryption stage added in C5 protocol. NOTE: This makes 2.1.14
	cfagent clients unable to talk to older servers. (Upgrade servers
	first, or at the same time.)
	Class "no_default_route" is now defined if a default route is not previously
	set, and a default route is defined for the current host.
	Added class functions IsGreaterThan, IsLessThan for numerical or string comparisons
	control:
  	 actionsequence = ( files )
	 a = ( 2.12 )
 	 b = ( 2.11 )
	classes:
	lt = ( LessThan(${a},${b}) )
   	gt = ( GreaterThan(${a},${b}) )
	alerts:
	  lt:: "$(a) LESS THAN $(b)"
	  gt:: "$(a) GREATER THAN $(b)"
	Bugfix for cfshow -c options (Nathan Hruby)
2.1.13
	Mistake in placement of update.conf runs fixed.
	Alteration to lock hashing to avoid conflicts
	Mandrake version type patch/repatched
	Error message in disable now
	underlines move to respository where defined.
	Locking patch to tidy. Did not release lock when tidying
	recursively with subdirectory deletions. (Eric Sorensen).
	Host range patched (again) (Bas VdV)
2.1.12
	cf.preconf can now cause an abort if the script prints out a string
	containing the substring "cfengine-preconf-abort".
	An exit code of 2 signals this failure
	Cfrun bug in placement of workdir initialization. Would try to open
	/inputs/cfrun.hosts instead of /var/cfengine/inputs/cfrun.hosts
	Moved mutex locks in address purging, to see if it prevents some
	segmentation faults.
	In image.c:
	/*      if (TRAVLINKS || ip->linktype == 'n') */
	Took out linktype reference. This appears to be erroneous.
	Patch to tidy: "Guolin Cheng" <guolin@alexa.com>
	Patch to -Q to prevent update.conf from being executed.
	Patch to rationalize choice of port number for new getaddrinfo
	interfaces. (ip.c)
	small patch to allow the use of PCRE if it is compiled with
	--with-pcre.  This is using the POSIX compatible API that PCRE provides,
	so the change necessary is to use pcreposix.h instead of regex.h and to
	link in pcreposix.so. cindy.marasco@pnl.gov)
2.1.11
	SUPPORT FOR POSIX ACLS IN LINUX IS NOT AS STRAIGHTFORWARD AS
	ORIGINALLY THOUGHT.  THE API DOES NOT MATCH EXISTING
	IMPLEMENTATIONS AND SEEMS SIGNIFICANTLY MORE COMPLEX. IN THE
	INTERESTS OF STABILITY THIS WILL HAVE TO BE DEFERRED TO A LATER
	RELEASE.
	Comma in function argument bug in FileExists etc, fixed
	Option -z (--schedule) now prints only the run schedule.  Option
	-Q (--query) added to print values of variables defined in
	configuration
	  cfagent -Q sysadm,domain,site,ipaddress
	in format  varname=value
	New variables can be used in cfagent.conf for cfexecd control:
	  EmailFrom = ( )
	  EmailTo   = ( )  - overrides sysadm if set
	White Box linux class recognition added
	When setting classes or variables by function call, the function
	evaluation is no longer performed if it is not in an active class.
	Cfexecd now calls cfagent with -D from_cfexecd to define the class
	"from_cfexecd::" when run from the executor
	WarnIfFileMissing added to editfiles and default is not to warn
	of non-existent files, except in inform/verbose modes.
	Check added for DefineInGroup, signals error if not in group
	Added copy type "any" for any matching criteria, date/sum etc.
	Respository variable was not expanded like a normal variable
	cfshow tool added for consulting the databases
	Better autodetection of Berkeley DB in some distros of Linux (SuSE) - has anyone heard of "standards"?
	Date format changed in cfexecd output files
	Errors if remote copy is not encrypted when server demands encryption. (patch)
	Renaming of directories is now allowed if dest= is set specifically.
	Check added for variables defined in terms of undefined variables.
	Patch for solaris package manager added (Louis Erickson - wwonko@rdwarf.com)
	file added as synonym til reg in filter
	Patch to HostRange (item.c) (rader@ginseng.hep.wisc.edu)
	Internal variable determining WORKDIR for non-privileged users.
	Various minor changes and cosmetics.
	Lock string must include server name in copy - added
	Method reply bundles fixed to work correctly with ipv6 addresses
	SIGPIPE and SIGCHLD added to signal handler (SIGCHILD ignored against posix, but
	how the hell do you sort this out?)
	srand -> srand48 typo in cfenvd
	Multiple method reply variables were incorrectly separated.
	Added options to disable LastSeen data recording feature.
	fclose used instead of pclose when calling ifconfig - resulted in zombies
To generate a diff of this commit:
cvs rdiff -r1.18 -r1.19 pkgsrc/sysutils/cfengine2/Makefile
cvs rdiff -r1.9 -r1.10 pkgsrc/sysutils/cfengine2/Makefile.common \
    pkgsrc/sysutils/cfengine2/PLIST
cvs rdiff -r1.7 -r1.8 pkgsrc/sysutils/cfengine2/distinfo
cvs rdiff -r1.8 -r1.9 pkgsrc/sysutils/cfengine2-doc/Makefile
cvs rdiff -r1.2 -r0 pkgsrc/sysutils/cfengine2/patches/patch-ad \
    pkgsrc/sysutils/cfengine2/patches/patch-ah
cvs rdiff -r1.1.1.1 -r0 pkgsrc/sysutils/cfengine2/patches/patch-ae
cvs rdiff -r1.3 -r0 pkgsrc/sysutils/cfengine2/patches/patch-aj
cvs rdiff -r1.1 -r0 pkgsrc/sysutils/cfengine2/patches/patch-al
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.