v4.4 17-Jan-2010 * Finished mailjobs were being left as zombie processes. Fixed. * When using crond with logging-to-file, user jobs could only log some events if they had write access to the log. Fixed this by having crond keep a file descriptor open to the log; also added a SIGHUP handler to make crond re-open the logfile. The sample logrotate script now sends that signal. * More sensible command-line parsing by crontab. * Add prune-cronstamps to extra; document extra/*; general improvement of README and manpages. * Portability improvements, and defs.h now has fuller comments about requirements. * Makefile improvements: `make` now caches variables for `make install`; don't stomp CFLAGS environment variable, and added BINDIR,SBINDIR,MANDIR. * Thanks to Juergen Daubert for testing and suggestions. v4.3 11-Jan-2010 * Internal refactoring to make buffer overflow checks clearer and portability issues more explicit. * Made file argument to -L mandatory; optional args to getopt needs GNU extensions. * Makefile tweaks. Added CRONTAB_GROUP for `make install`. Renamed TIMESTAMPS -> CRONSTAMPS. v4.2 11-Jan-2010 * Makefile tweaks; moved more constants to #defines. v4.1 10-Jan-2010 * Fixed bug in parsing some numeric fields in crontabs. (Terminus of range wasn't being modded.) * Updated Makefile to make it easier to customize timestamps at configure time. Also, if LC_TIME is defined when crond runs, we use that instead of compiled-in default (for logging to files, to customize syslog output use syslog-ng's 'template' command). * Fixed Makefile permissions on crond and crontab binaries. v4.0 6-Jan-2010 * Jim Pryor took over development; folded in changes from his fork "yacron" * Applied "Daniel's patch" from dcron 3.x tarballs to enable logging to syslog or files. Added further logging improvements. * Added -m user@host and -M mailer options * Various crontab syntax extensions, including "2nd Monday of every month", @reboot, @daily, and finer-grained frequency specifiers. * Jobs can wait until AFTER other jobs have finished. * Enhanced parsing of cron.update file, to make it possible for scripts to interact with a running crond in limited ways. * Various internal changes * Updated Makefile, manpage buildchain, and docs v3.2 Fixed a minor bug, remove the newline terminating a line only if there is a newline to remove. v3.1 Add support for root-run crontab files in /etc/cron.d and rewrite a good chunk of the crontab file management code. By VMiklos and Matt Dillon. v3.0 Fix /tmp race and misc cleanups from Emiel Kollof v2.9 Modernize the code, remove strcpy() and sprintf() in favor of snprintf(). (Supplied by Christine Jamison ) v2.8 Fixed bug found by Christian HOFFMANN. newline removal was broken for lines that began with whitespace, causing crontab lines to be chopped off. v2.7 Committed changes suggested by Ragnar Hojland Espinosa Fixed a few printfs, removed strdup() function ( strdup() is now standard in all major clib's ) v2.4-2.6 ( changes lost ) v2.3 dillon: Fixed bug in job.c -- if ChangeUser() fails, would return from child fork rather then exit! Oops. v2.2 dillon: Initial release