Tested by various people on various platforms, I'm willing to fix any
breakage this causes.
ok niels@ deraadt@ and mickey@ (after his comments were applied)
Job names are now "runtime.queue" where runtime is when the job will run
in Unix time format. This is what SysV at does and allows us to nuke
the .SEQ file.
Historic BSD options for atq and atrm are now implemented;
atq and atrm get their own man pages.
At no longer does anything with the -v flag. We print the execution
time when jobs are submitted so there is no need.
Most *scanf() usage is gone (one remains in atrun).
Better sanity checks in atrun.
Random style/cleanup.
With these changes we have the best of both worlds; POSIX compliance with
the traditional BSD features.
make -> ${MAKE}
add phony targets
remove unnecessary subshells
install kernel in a separate target from building.
some SUDO.
okay deraadt@
(checked bootstrap on i386, should be safe elsewhere, and trivial to fix
anyways)
These changes were modelled after the Owl version of vixie-cron,
but developed independently.
Our crontab used to send cron SIGUSR1 to tell cron to reread the
spool dir. Now that crontab is not setuid root this doesn't work.
Instead, crontab pokes cron via a Unix domain socket located in the
tabs dir.
Please note, after these changes, the owner on user crontab files
will have to be changed manually from root to the uid of the
corresponding user for crontab to be usable. cron itself will accept
tab files owned by either root or the user.
Also, any /var/cron/{allow,deny} files must be readable by group crontab.