-SUBDIRS = src man .
+SUBDIRS = src man
-pam_DATA = crond.pam
+if PAM
+pamdir = $(sysconfdir)/pam.d
+dist_pam_DATA = crond.pam
+endif
#config_DATA = crond.sysconfig
#init_SCRIPTS = cronie.init
-EXTRA_DIST =${_localstatedir}/spool/cron
+EXTRA_DIST = cronie.init crond.sysconfig
+++ /dev/null
-/* config.h. Generated from config.h.in by configure. */
-/* config.h.in. Generated from configure.ac by autoheader. */
-
-/* if you have a tm_gmtoff member in struct tm */
-#define CAPITALIZE_FOR_PS 0
-
-/* Code will be built with debug info. */
-#define DEBUGGING 1
-
-/* Define to 1 if you have the <dirent.h> header file. */
-#define HAVE_DIRENT_H 1
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H 1
-
-/* Define to 1 if you have the <getopt.h> header file. */
-#define HAVE_GETOPT_H 1
-
-/* Define to 1 if you have the `getseuserbyname' function. */
-/* #undef HAVE_GETSEUSERBYNAME */
-
-/* Define to 1 if you have the `get_default_context_with_level' function. */
-/* #undef HAVE_GET_DEFAULT_CONTEXT_WITH_LEVEL */
-
-/* Define to 1 if you have the <glob.h> header file. */
-#define HAVE_GLOB_H 1
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H 1
-
-/* Define to 1 if you have the `dl' library (-ldl). */
-/* #undef HAVE_LIBDL */
-
-/* Define to 1 if you have the `pam' library (-lpam). */
-/* #undef HAVE_LIBPAM */
-
-/* Define to 1 if you have the <limits.h> header file. */
-#define HAVE_LIMITS_H 1
-
-/* Define to 1 if you have the <memory.h> header file. */
-#define HAVE_MEMORY_H 1
-
-/* Define to 1 if you have the `pam_getenvlist' function. */
-/* #undef HAVE_PAM_GETENVLIST */
-
-/* Define to 1 if you have the <pam/pam_appl.h> header file. */
-/* #undef HAVE_PAM_PAM_APPL_H */
-
-/* Define to 1 if you have the `pam_putenv' function. */
-/* #undef HAVE_PAM_PUTENV */
-
-/* Define to 1 if you have the <paths.h> header file. */
-#define HAVE_PATHS_H 1
-
-/* Define to 1 if you have the <pty.h> header file. */
-#define HAVE_PTY_H 1
-
-/* Define to 1 if you have the <security/pam_appl.h> header file. */
-#define HAVE_SECURITY_PAM_APPL_H 1
-
-/* Define to 1 if you have the <selinux/selinux.h> header file. */
-#define HAVE_SELINUX_SELINUX_H 1
-
-/* Define to 1 if you have the <stddef.h> header file. */
-#define HAVE_STDDEF_H 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#define HAVE_STDINT_H 1
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the <strings.h> header file. */
-#define HAVE_STRINGS_H 1
-
-/* Define to 1 if you have the <string.h> header file. */
-#define HAVE_STRING_H 1
-
-/* Define to 1 if you have the <sys/audit.h> header file. */
-/* #undef HAVE_SYS_AUDIT_H */
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/stream.h> header file. */
-/* #undef HAVE_SYS_STREAM_H */
-
-/* Define to 1 if you have the <sys/stropts.h> header file. */
-#define HAVE_SYS_STROPTS_H 1
-
-/* Define to 1 if you have the <sys/timers.h> header file. */
-/* #undef HAVE_SYS_TIMERS_H */
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#define HAVE_SYS_TIME_H 1
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <time.h> header file. */
-#define HAVE_TIME_H 1
-
-/* if your OS supports a BSD-style login.conf fil */
-#define HAVE_TM_GMTOFF 0
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H 1
-
-/* Define to 1 if you have the <util.h> header file. */
-/* #undef HAVE_UTIL_H */
-
-/* Define to 1 if you have the <utime.h> header file. */
-#define HAVE_UTIME_H 1
-
-/* There will be path to sendmail. */
-#define MAILARG "/usr/sbin/sendmail"
-
-/* -i = don't terminate on "." by itself -Fx = Set full-name of sender -odi =
- Option Deliverymode Interactive -oem = Option Errors Mailedtosender -oi =
- Ignore "." alone on a line -t = Get recipient from headers -d =
- undocumented but common flag. */
-#define MAILFMT "%s -FCronDaemon -i -odi -oem -oi -t"
-
-/* Name of package */
-#define PACKAGE "cronie"
-
-/* Define to the address where bug reports for this package should be sent. */
-#define PACKAGE_BUGREPORT "mmaslano@redhat.com"
-
-/* Define to the full name of this package. */
-#define PACKAGE_NAME "cronie"
-
-/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "cronie 1.0"
-
-/* Define to the one symbol short name of this package. */
-#define PACKAGE_TARNAME "cronie"
-
-/* Define to the version of this package. */
-#define PACKAGE_VERSION "1.0"
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#define RETSIGTYPE void
-
-/* Define to 1 if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Using syslog for log messages. */
-#define SYSLOG 1
-
-/* Define to 1 if your <sys/time.h> declares `struct tm'. */
-/* #undef TM_IN_SYS_TIME */
-
-/* Version number of package */
-#define VERSION "1.0"
-
-/* Define if you want Audit trails. */
-/* #undef WITH_AUDIT */
-
-/* Define if you want to enable PAM support */
-/* #undef WITH_PAM */
-
-/* Define if you want SELinux support. */
-/* #undef WITH_SELINUX */
-
-/* Define to empty if `const' does not conform to ANSI C. */
-/* #undef const */
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-/* #undef gid_t */
-
-/* Define to `int' if <sys/types.h> does not define. */
-/* #undef mode_t */
-
-/* Define to `long int' if <sys/types.h> does not define. */
-/* #undef off_t */
-
-/* Define to `int' if <sys/types.h> does not define. */
-/* #undef pid_t */
-
-/* Define to `unsigned int' if <sys/types.h> does not define. */
-/* #undef size_t */
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-/* #undef uid_t */
+++ /dev/null
-/* config.h.in. Generated from configure.ac by autoheader. */
-
-/* if you have a tm_gmtoff member in struct tm */
-#undef CAPITALIZE_FOR_PS
-
-/* Code will be built with debug info. */
-#undef DEBUGGING
-
-/* Define to 1 if you have the <dirent.h> header file. */
-#undef HAVE_DIRENT_H
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#undef HAVE_FCNTL_H
-
-/* Define to 1 if you have the <getopt.h> header file. */
-#undef HAVE_GETOPT_H
-
-/* Define to 1 if you have the `getseuserbyname' function. */
-#undef HAVE_GETSEUSERBYNAME
-
-/* Define to 1 if you have the `get_default_context_with_level' function. */
-#undef HAVE_GET_DEFAULT_CONTEXT_WITH_LEVEL
-
-/* Define to 1 if you have the <glob.h> header file. */
-#undef HAVE_GLOB_H
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define to 1 if you have the `dl' library (-ldl). */
-#undef HAVE_LIBDL
-
-/* Define to 1 if you have the `pam' library (-lpam). */
-#undef HAVE_LIBPAM
-
-/* Define to 1 if you have the <limits.h> header file. */
-#undef HAVE_LIMITS_H
-
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
-/* Define to 1 if you have the `pam_getenvlist' function. */
-#undef HAVE_PAM_GETENVLIST
-
-/* Define to 1 if you have the <pam/pam_appl.h> header file. */
-#undef HAVE_PAM_PAM_APPL_H
-
-/* Define to 1 if you have the `pam_putenv' function. */
-#undef HAVE_PAM_PUTENV
-
-/* Define to 1 if you have the <paths.h> header file. */
-#undef HAVE_PATHS_H
-
-/* Define to 1 if you have the <pty.h> header file. */
-#undef HAVE_PTY_H
-
-/* Define to 1 if you have the <security/pam_appl.h> header file. */
-#undef HAVE_SECURITY_PAM_APPL_H
-
-/* Define to 1 if you have the <selinux/selinux.h> header file. */
-#undef HAVE_SELINUX_SELINUX_H
-
-/* Define to 1 if you have the <stddef.h> header file. */
-#undef HAVE_STDDEF_H
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H
-
-/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define to 1 if you have the <sys/audit.h> header file. */
-#undef HAVE_SYS_AUDIT_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define to 1 if you have the <sys/stream.h> header file. */
-#undef HAVE_SYS_STREAM_H
-
-/* Define to 1 if you have the <sys/stropts.h> header file. */
-#undef HAVE_SYS_STROPTS_H
-
-/* Define to 1 if you have the <sys/timers.h> header file. */
-#undef HAVE_SYS_TIMERS_H
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H
-
-/* Define to 1 if you have the <time.h> header file. */
-#undef HAVE_TIME_H
-
-/* if your OS supports a BSD-style login.conf fil */
-#undef HAVE_TM_GMTOFF
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Define to 1 if you have the <util.h> header file. */
-#undef HAVE_UTIL_H
-
-/* Define to 1 if you have the <utime.h> header file. */
-#undef HAVE_UTIME_H
-
-/* There will be path to sendmail. */
-#undef MAILARG
-
-/* -i = don't terminate on "." by itself -Fx = Set full-name of sender -odi =
- Option Deliverymode Interactive -oem = Option Errors Mailedtosender -oi =
- Ignore "." alone on a line -t = Get recipient from headers -d =
- undocumented but common flag. */
-#undef MAILFMT
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#undef RETSIGTYPE
-
-/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Using syslog for log messages. */
-#undef SYSLOG
-
-/* Define to 1 if your <sys/time.h> declares `struct tm'. */
-#undef TM_IN_SYS_TIME
-
-/* Version number of package */
-#undef VERSION
-
-/* Define if you want Audit trails. */
-#undef WITH_AUDIT
-
-/* Define if you want to enable PAM support */
-#undef WITH_PAM
-
-/* Define if you want SELinux support. */
-#undef WITH_SELINUX
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#undef const
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-#undef gid_t
-
-/* Define to `int' if <sys/types.h> does not define. */
-#undef mode_t
-
-/* Define to `long int' if <sys/types.h> does not define. */
-#undef off_t
-
-/* Define to `int' if <sys/types.h> does not define. */
-#undef pid_t
-
-/* Define to `unsigned int' if <sys/types.h> does not define. */
-#undef size_t
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-#undef uid_t
AC_INIT([cronie],[1.0],[mmaslano@redhat.com])
AC_CONFIG_HEADER([config.h])
-AC_PREREQ(2.7)
+AC_PREREQ(2.59)
-VERSION="1.0"
-
-AM_INIT_AUTOMAKE(foreign)
+AM_INIT_AUTOMAKE
AC_CANONICAL_HOST
getopt.h \
glob.h \
limits.h \
- pam/pam_appl.h \
paths.h \
pty.h \
- security/pam_appl.h \
selinux/selinux.h \
stddef.h \
stdint.h \
AC_MSG_CHECKING(sysconfdir)
AC_ARG_WITH(sysconfdir,
-[ --with-sysconfdir=PATH Directory containing permission files (default /etc).],
+[AS_HELP_STRING([--with-sysconfdir=PATH], [Directory containing permission files (default /etc).])],
[ case "$withval" in
no)
AC_MSG_ERROR(Need SYSCONFDIR.)
AC_MSG_CHECKING(username to run under)
AC_ARG_WITH(daemon_username,
-[ --with-daemon_username=DAEMON_USERNAME Username to run under (default daemon) ],
+[AS_HELP_STRING([--with-daemon_username=DAEMON_USERNAME], [Username to run under (default daemon) ])],
[ case "$withval" in
no)
AC_MSG_ERROR(Need DAEMON_USERNAME.)
AC_MSG_CHECKING(groupname to run under)
AC_ARG_WITH(daemon_groupname,
-[ --with-daemon_groupname=DAEMON_GROUPNAME Groupname to run under (default daemon) ],
+[AS_HELP_STRING([--with-daemon_groupname=DAEMON_GROUPNAME], [Groupname to run under (default daemon) ])],
[ case "$withval" in
no)
AC_MSG_ERROR(Need DAEMON_GROUPNAME.)
# Check whether user wants sysconfig file
#AC_ARG_WITH(config,
-# [ --with-sysconf Enable sysconfig file],
+# [AS_HELP_STRING([--with-sysconf], [Enable sysconfig file])],
# [ if test "x$withval" != "xno" ; then
# configdir=${sysconfdir}/sysconfig/
# AC_SUBST(configdir)
# Check whether user wants init file
#AC_ARG_WITH(init,
-# [ --with-initfile Enable init file],
+# [AS_HELP_STRING([--with-initfile], [Enable init file])],
# [ if test "x$withval" != "xno" ; then
# initdir=${initrddir}
# AC_SUBST(initdir)
SELINUX_MSG="no"
LIBSELINUX=""
AC_ARG_WITH(selinux,
- [ --with-selinux Enable SELinux support],
+ [AS_HELP_STRING([--with-selinux], [Enable SELinux support])],
[ if test "x$withval" != "xno" ; then
saved_LIBS="$LIBS"
AC_DEFINE(WITH_SELINUX,1,[Define if you want SELinux support.])
fi ]
)
-# Check whether user wants PAM support
-AC_ARG_WITH(pam,
- [ --with-pam Enable PAM support ],
- [ if test "x$withval" != "xno" ; then
- if test "x$ac_cv_header_security_pam_appl_h" != "xyes" && \
- test "x$ac_cv_header_pam_pam_appl_h" != "xyes" ; then
- AC_MSG_ERROR([PAM headers not found])
- fi
-
- saved_LIBS="$LIBS"
- AC_CHECK_LIB(dl, dlopen, , )
- AC_CHECK_LIB(pam, pam_set_item, , AC_MSG_ERROR([*** libpam missing]))
- AC_CHECK_FUNCS(pam_getenvlist)
- AC_CHECK_FUNCS(pam_putenv)
- LIBS="$saved_LIBS"
-
- PAM_MSG="yes"
-
- LIBPAM="-lpam -lpam_misc"
- AC_DEFINE(WITH_PAM,1,
- [Define if you want to enable PAM support])
- if test $ac_cv_lib_dl_dlopen = yes; then
- case "$LIBS" in
- *-ldl*)
- # libdl already in LIBS
- ;;
- *)
- LIBPAM="$LIBPAM -ldl"
- ;;
- esac
- fi
- AC_SUBST(LIBPAM)
- fi
- pamdir=${sysconfdir}/pam.d/
- AC_SUBST(pamdir)
- ]
-)
+AC_ARG_WITH(pam, [AS_HELP_STRING([--with-pam], [Enable PAM support])])
+AM_CONDITIONAL([PAM], [test "$enable_pam" != no])
+
+if test "$enable_pam" != no; then
+ AC_DEFINE(WITH_PAM, 1, [Define if you want to enable PAM support])
+ pam_appl_h_found=no
+ AC_CHECK_HEADERS([pam/pam_appl.h security/pam_appl.h],
+ [pam_appl_h_found=yes])
+ test "$pam_appl_h_found" = yes ||
+ AC_MSG_ERROR([PAM headers not found])
+
+ saved_LIBS="$LIBS"
+ AC_CHECK_LIB([dl], [dlopen], [libdl_found=yes], [libdl_found=no])
+ AC_CHECK_LIB(pam, pam_set_item, , AC_MSG_ERROR([*** libpam missing]))
+ AC_CHECK_FUNCS([pam_getenvlist pam_putenv])
+ LIBS="$saved_LIBS"
+
+ case $libdl_found:" $LIBS " in #(
+ *" -ldl "*) LIBPAM= ;; #(
+ yes:*) LIBPAM=-ldl ;; # libdl found, but is not in $LIBS
+ esac
+ AC_SUBST([LIBPAM], ["-lpam -lpam_misc $LIBPAM"])
+fi
AC_DEFINE(DEBUGGING,1,[Code will be built with debug info.])
AC_DEFINE(SYSLOG,1,[Using syslog for log messages.])
-AC_DEFINE(CAPITALIZE_FOR_PS,0,[if you have a tm_gmtoff member in struct tm])
+AC_DEFINE(CAPITALIZE_FOR_PS, 1, [if you have a tm_gmtoff member in struct tm])
-AC_DEFINE(HAVE_TM_GMTOFF,0,[if your OS supports a BSD-style login.conf fil])
+AC_DEFINE(HAVE_TM_GMTOFF, 1, [if your OS supports a BSD-style login.conf fil])
-##AC_DEFINE(LOGIN_CAP,0,[if your OS supports BSD authentication])
+##AC_DEFINE(LOGIN_CAP, 1, [if your OS supports BSD authentication])
##AC_DEFINE(CRON_GROUP,"crontab",[crontab])
# Check whether user wants Linux audit support
AC_ARG_WITH(audit,
- [ --with-audit Enable audit trails],
+ [AS_HELP_STRING([--with-audit], [Enable audit trails])],
[ if test "x$withval" != "xno" ; then
saved_LIBS="$LIBS"
AC_DEFINE(WITH_AUDIT,1,[Define if you want Audit trails.])
fi ]
)
-AC_ARG_ENABLE(debug,
- [ --enable-debug Turn on debugging],
- [case "${enableval}" in
- yes) debug=true ;;
- no) debug=false ;;
- *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
- esac],[debug=false])
-AM_CONDITIONAL(DEBUG, test x$debug = xtrue)
-
-docdir=${datadir}/doc/cron/
-AC_SUBST(docdir)
-
-AC_CONFIG_FILES(Makefile src/Makefile man/Makefile \
- man/bitstring.3 man/cron.8 man/crontab.1 man/crontab.5)
-AC_CONFIG_SUBDIRS([src])
+dnl AC_ARG_ENABLE(debug, [AS_HELP_STRING([--enable-debug], [Turn on debugging])])
+dnl AM_CONDITIONAL(DEBUG, test "$enable_debug" = true)
+
+AC_CONFIG_FILES([Makefile src/Makefile man/Makefile])
AC_OUTPUT
-man1_MANS = crontab.1
-man5_MANS = crontab.5
-man8_MANS = cron.8 crond.8
+dist_man_MANS = crontab.1 crontab.5 cron.8 crond.8
+noinst_MANS = bitstring.3
+++ /dev/null
-.\" Copyright (c) 1989, 1991, 1993
-.\" The Regents of the University of California. All rights reserved.
-.\"
-.\" This code is derived from software contributed to Berkeley by
-.\" Paul Vixie.
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgement:
-.\" This product includes software developed by the University of
-.\" California, Berkeley and its contributors.
-.\" 4. Neither the name of the University nor the names of its contributors
-.\" may be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" @(#)bitstring.3 8.1 (Berkeley) 7/19/93
-.\"
-.TH BITSTRING 3 "July 19, 1993"
-.SH NAME
-\fBbit_alloc\fP,
-\fBbit_clear\fP,
-\fBbit_decl\fP,
-\fBbit_ffs\fP,
-\fBbit_nclear\fP,
-\fBbit_nset,\fP
-\fBbit_set\fP,
-\fBbitstr_size\fP,
-\fBbit_test\fP
-\- bit-string manipulation macros
-.SH SYNOPSIS
-.nf
-\fB#include <bitstring.h>\fP
-
-\f2bitstr_t\f1 \f2*\f1
-\fBbit_alloc\fP(\f2int\f1 \f2nbits\f1);
-
-\fBbit_decl\fP(\f2bit_str\f1 \f2name\f1, \f2int\f1 \f2nbits\f1);
-
-\fBbit_clear\fP(\f2bit_str\f1 \f2name\f1, \f2int\f1 \f2bit\f1);
-
-\fBbit_ffc\fP(\f2bit_str\f1 \f2name\f1, \f2int\f1 \f2nbits\f1, \f2int\f1 \f2*value\f1);
-
-\fBbit_ffs\fP(\f2bit_str\f1 \f2name\f1, \f2int\f1 \f2nbits\f1, \f2int\f1 \f2*value\f1);
-
-\fBbit_nclear\fP(\f2bit_str\f1 \f2name\f1, \f2int\f1 \f2start\f1, \f2int\f1 \f2stop\f1);
-
-\fBbit_nset\fP(\f2bit_str\f1 \f2name\f1, \f2int\f1 \f2start\f1, \f2int\f1 \f2stop\f1);
-
-\fBbit_set\fP(\f2bit_str\f1 \f2name\f1, \f2int\f1 \f2bit\f1);
-
-\fBbitstr_size\fP(\f2int\f1 \f2nbits\f1);
-
-\fBbit_test\fP(\f2bit_str\f1 \f2name\f1, \f2int\f1 \f2bit\f1);
-.fi
-.SH DESCRIPTION
-These macros operate on strings of bits.
-.PP
-The macro \fBbit_alloc\fP() returns a pointer of type
-``\f2bitstr_t\f1 \f2*\f1'' to sufficient space to store
-.I nbits
-bits, or NULL if no space is available.
-.PP
-The macro \fBbit_decl\fP() allocates sufficient space to store
-.I nbits
-bits on the stack.
-.PP
-The macro \fBbitstr_size\fP() returns the number of elements of type
-.I bitstr_t
-necessary to store
-.I nbits
-bits.
-This is useful for copying bit strings.
-.PP
-The macros
-\fBbit_clear\fP()
-and
-\fBbit_set\fP()
-clear or set the zero-based numbered bit
-.IR bit ,
-in the bit string
-.IR name .
-.PP
-The
-\fBbit_nset\fP()
-and
-\fBbit_nclear\fP()
-macros set or clear the zero-based numbered bits from
-.I start
-to
-.I stop
-in the bit string
-.IR name .
-.PP
-The
-\fBbit_test\fP() macro evaluates to non-zero if the zero-based numbered bit
-.I bit
-of bit string
-.I name
-is set, and zero otherwise.
-.PP
-The \fBbit_ffs\fP() macro stores in the location referenced by
-.I value
-the zero-based number of the first bit set in the array of
-.I nbits
-bits referenced by
-.IR name .
-If no bits are set, the location referenced by
-.I value
-is set to \-1.
-.PP
-The macro \fBbit_ffc\fP() stores in the location referenced by
-.I value
-the zero-based number of the first bit not set in the array of
-.I nbits
-bits referenced by
-.IR name .
-If all bits are set, the location referenced by
-.I value
-is set to \-1.
-.PP
-The arguments to these macros are evaluated only once and may safely
-have side effects.
-.SH EXAMPLE
-.nf
-.in +5
-#include <limits.h>
-#include <bitstring.h>
-
-#define LPR_BUSY_BIT 0
-#define LPR_FORMAT_BIT 1
-#define LPR_DOWNLOAD_BIT 2
-#define LPR_AVAILABLE_BIT 9
-#define LPR_MAX_BITS 10
-
-make_lpr_available()
-{
- bitstr_t bit_decl(bitlist, LPR_MAX_BITS);
- ...
- bit_nclear(bitlist, 0, LPR_MAX_BITS - 1);
- ...
- if (!bit_test(bitlist, LPR_BUSY_BIT)) {
- bit_clear(bitlist, LPR_FORMAT_BIT);
- bit_clear(bitlist, LPR_DOWNLOAD_BIT);
- bit_set(bitlist, LPR_AVAILABLE_BIT);
- }
-}
-.fi
-.SH SEE ALSO
-malloc(3)
+++ /dev/null
-.\"/* Copyright 1988,1990,1993,1996 by Paul Vixie
-.\" * All rights reserved
-.\" */
-.\"
-.\" Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
-.\" Copyright (c) 1997,2000 by Internet Software Consortium, Inc.
-.\"
-.\" Permission to use, copy, modify, and distribute this software for any
-.\" purpose with or without fee is hereby granted, provided that the above
-.\" copyright notice and this permission notice appear in all copies.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
-.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR
-.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
-.\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.\" $Id: cron.8,v 1.8 2004/01/23 19:03:32 vixie Exp $
-.\"
-.TH CRON "8" "10 January 2007" "Linux Programmer's Manual"
-.UC 4
-.SH NAME
-cron \- daemon to execute scheduled commands (ISC Cron V4.1)
-.SH SYNOPSIS
-.B cron
-.RB [ -n " | " -p " | " -m \fP\fI<mail command>\fP\fB ]
-.br
-.B cron
-.B -x
-.RB [ext,sch,proc,pars,load,misc,test,bit]
-.br
-.SH DESCRIPTION
-.I Cron
-should be started from
-.I /etc/rc.d/init.d
-or
-.I /etc/init.d
-. It will return immediately, so you don't need to start it with '&'.
-.PP
-.I Cron
-searches
-.I /var/spool/cron
-for crontab files which are named after accounts in
-.I/etc/passwd;
-crontabs found are loaded into memory.
-.I Cron
-also searches for
-.I /etc/crontab
-and the files in the
-.I/etc/cron.d
-directory, which are in a different format (see
-.BR crontab (5)
-).
-.I Cron
-then wakes up every minute, examining all stored crontabs, checking each
-command to see if it should be run in the current minute. When executing
-commands, any output is mailed to the owner of the crontab (or to the user
-named in the MAILTO environment variable in the crontab, if such exists).
-.PP
-Additionally,
-.I cron
-checks each minute to see if its spool directory's modtime (or the modtime
-on
-.IR /etc/crontab )
-has changed, and if it has,
-.I cron
-will then examine the modtime on all crontabs and reload those which have
-changed. Thus
-.I cron
-need not be restarted whenever a crontab file is modified. Note that the
-.BR crontab (1)
-command updates the modtime of the spool directory whenever it changes a
-crontab.
-.PP
-.SS Daylight Saving Time and other time changes
-Local time changes of less than three hours, such as those caused
-by the start or end of Daylight Saving Time, are handled specially.
-This only applies to jobs that run at a specific time and jobs that
-are run with a granularity greater than one hour. Jobs that run
-more frequently are scheduled normally.
-.PP
-If time has moved forward, those jobs that would have run in the
-interval that has been skipped will be run immediately.
-Conversely, if time has moved backward, care is taken to avoid running
-jobs twice.
-.PP
-Time changes of more than 3 hours are considered to be corrections to
-the clock or timezone, and the new time is used immediately.
-.PP
-It's possible to use different time zones for cron tables. More could
-be found in
-.IR crontab (5).
-.SS PAM Access Control
-On Red Hat systems, crond now supports access control with PAM - see
-.IR pam (8).
-A PAM configuration file for crond is installed in /etc/pam.d/crond.
-crond loads the PAM environment from the pam_env module, but these
-can be overriden by settings in the crontab file.
-.SH "OPTIONS"
-.TP
-.B "\-m"
-This option allows you to specify a shell command string to use for sending cron mail
-output instead of
-.BR sendmail (8).
-This command must accept a fully formatted mail message (with headers) on stdin and send it
-as a mail message to the recipients specified in the mail headers.
-.TP
-.B "\-n"
-This option changes default behavior causing it to run crond in the foreground. This can be
-useful when starting it out of init.
-.TP
-.B "\-p"
-Cron permit any crontab, which user set.
-.TP
-.B "\-x"
-With this option is possible to set debug flags.
-.SH SIGNALS
-On receipt of a \s-2SIGHUP\s+2, the cron daemon will close and reopen its
-log file. This is useful in scripts which rotate and age log files.
-Naturally this is not relevant if cron was built to use
-.IR syslog (3).
-.SH CAVEATS
-In this version of
-.BR cron
-, without the \fB-p\fP option,
-.I /etc/crontab
-must not be writable by any user other than root,
-no crontab files may be links, or linked to by any other file,
-and no crontab files may be executable, or be writable by any
-user other than their owner.
-.SH "SEE ALSO"
-.IR crontab (1),
-.IR crontab (5),
-.IR pam (8)
-.SH AUTHOR
-.nf
-Paul Vixie <vixie@isc.org>
+++ /dev/null
-.so man8/cron.8
+++ /dev/null
-.\"/* Copyright 1988,1990,1993 by Paul Vixie
-.\" * All rights reserved
-.\" */
-.\"
-.\" Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
-.\" Copyright (c) 1997,2000 by Internet Software Consortium, Inc.
-.\"
-.\" Permission to use, copy, modify, and distribute this software for any
-.\" purpose with or without fee is hereby granted, provided that the above
-.\" copyright notice and this permission notice appear in all copies.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
-.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR
-.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
-.\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.\" $Id: crontab.1,v 1.7 2004/01/23 19:03:32 vixie Exp $
-.\"
-.TH CRONTAB 1 "27 July 2007"
-.UC 4
-.SH NAME
-crontab \- maintain crontab files for individual users (ISC Cron V4.1)
-.SH SYNOPSIS
-.B crontab
-.RB [ -u
-.IR user ] " file"
-.br
-.B crontab
-.RB [ -u
-.IR user ]
-.RB [ -l " | " -r " | " -e ]\ [ -i ]
-.RB [ -s ]
-.SH DESCRIPTION
-.I Crontab
-is the program used to install, deinstall or list the tables
-used to drive the
-.BR cron (8)
-daemon in ISC Cron. Each user can have their own crontab, and though these are files in
-.I /var/spool/
-, they are not intended to be edited directly. For SELinux in mls mode can be even
-more crontabs - for each range. For more see
-.BR selinux (8).
-.PP
-The cron jobs could be allow or disallow for different users. For classical
-crontab there exists
-.I cron.allow
-and
-.I cron.deny
-files.
-If
-.I cron.allow
-file exists, then you must be listed therein in order to be allowed to use
-this command. If the
-.I cron.allow
-file does not exist but the
-.I cron.deny
-file does exist, then you must \fInot\fR be listed in the
-.I cron.deny
-file in order to use this command. If neither of these files exists,
-only the super user will be allowed to use this command.
-The second option is using PAM authentication, where you set up users,
-which could or couldn't use
-.I crontab
-and \fBalso\fR system cron jobs from
-/etc/cron.d/.
-.PP
-.SH "OPTIONS"
-.TP
-.B "\-u"
-Append the name of the user whose crontab is to be tweaked. If this option
-is not given,
-.I crontab
-examines "your" crontab, i.e., the crontab of the person executing the
-command. Note that
-.BR su (8)
-can confuse
-.I crontab
-and that if you are running inside of
-.BR su (8)
-you should always use the
-.B -u
-option for safety's sake.
-The first form of this command is used to install a new crontab from some
-named file or standard input if the pseudo-filename "-" is given.
-.TP
-.B "\-l"
-The current crontab will be displayed on standard output.
-.TP
-.B "\-r"
-The current crontab will be be removed.
-.TP
-.B "\-e"
-This option is used to edit the current crontab using the editor specified by
-the \s-1VISUAL\s+1 or \s-1EDITOR\s+1 environment variables. After you exit
-from the editor, the modified crontab will be installed automatically.
-.TP
-.B "\-i"
-This option modifies the
-.B "\-r"
-option to prompt the user for a 'y/Y' response
-before actually removing the crontab.
-.TP
-.B "\-s"
-It will append the current SELinux security context string as an
-MLS_LEVEL setting to the crontab file before editing / replacement
-occurs - see the documentation of MLS_LEVEL in
-.BR crontab(5)\.
-.SH "SEE ALSO"
-crontab(5), cron(8)
-.SH FILES
-.nf
-/etc/cron.allow
-/etc/cron.deny
-.fi
-.SH STANDARDS
-The
-.I crontab
-command conforms to IEEE Std1003.2-1992 (``POSIX''). This new command syntax
-differs from previous versions of Vixie Cron, as well as from the classic
-SVR3 syntax.
-.SH DIAGNOSTICS
-A fairly informative usage message appears if you run it with a bad command
-line.
-.SH AUTHOR
-.nf
-Paul Vixie <vixie@isc.org>
+++ /dev/null
-.\"/* Copyright 1988,1990,1993,1994 by Paul Vixie
-.\" * All rights reserved
-.\" */
-.\"
-.\" Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
-.\" Copyright (c) 1997,2000 by Internet Software Consortium, Inc.
-.\"
-.\" Permission to use, copy, modify, and distribute this software for any
-.\" purpose with or without fee is hereby granted, provided that the above
-.\" copyright notice and this permission notice appear in all copies.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
-.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR
-.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
-.\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.\" $Id: crontab.5,v 1.6 2004/01/23 19:03:33 vixie Exp $
-.\"
-.TH CRONTAB 5 "27 July 2007"
-.UC 4
-.SH NAME
-crontab \- tables for driving cron (ISC Cron V4.1)
-.SH DESCRIPTION
-A
-.I crontab
-file contains instructions to the
-.BR cron (8)
-daemon of the general form: "run this command at this time on this date".
-Each user has their own crontab, and commands in any given crontab will be
-executed as the user who owns the crontab. Uucp and News will usually have
-their own crontabs, eliminating the need for explicitly running
-.BR su (1)
-as part of a cron command.
-.PP
-Blank lines and leading spaces and tabs are ignored. Lines whose first
-non-space character is a pound-sign (#) are comments, and are ignored.
-Note that comments are not allowed on the same line as cron commands, since
-they will be taken to be part of the command. Similarly, comments are not
-allowed on the same line as environment variable settings.
-.PP
-An active line in a crontab will be either an environment setting or a cron
-command. An environment setting is of the form,
-.PP
- name = value
-.PP
-where the spaces around the equal-sign (=) are optional, and any subsequent
-non-leading spaces in
-.I value
-will be part of the value assigned to
-.IR name .
-The
-.I value
-string may be placed in quotes (single or double, but matching) to preserve
-leading or trailing blanks.
-.PP
-Several environment variables are set up
-automatically by the
-.BR cron (8)
-daemon.
-SHELL is set to /bin/sh, and LOGNAME and HOME are set from the /etc/passwd
-line of the crontab\'s owner.
-HOME and SHELL may be overridden by settings in the crontab; LOGNAME may not.
-.PP
-(Another note: the LOGNAME variable is sometimes called USER on BSD systems...
-on these systems, USER will be set also.)
-.PP
-In addition to LOGNAME, HOME, and SHELL,
-.BR cron (8)
-will look at MAILTO if it has any reason to send mail as a result of running
-commands in "this" crontab. If MAILTO is defined (and non-empty), mail is
-sent to the user so named. If MAILTO is defined but empty (MAILTO=""), no
-mail will be sent. Otherwise mail is sent to the owner of the crontab. This
-option is useful if you decide on /bin/mail instead of /usr/lib/sendmail as
-your mailer when you install cron -- /bin/mail doesn\'t do aliasing, and UUCP
-usually doesn\'t read its mail.
-.PP
-By default, cron will send mail using the mail 'Content-Type:' header of 'text/plain'
-with the 'charset=' parameter set to the charmap / codeset of the locale in which
-.BR crond (8)
-is started up - ie. either the default system locale, if no LC_* environment
-variables are set, or the locale specified by the LC_* environment variables
-(see
-.BR locale (7)).
-You can use different character encodings for mailed cron job output by
-setting the CONTENT_TYPE and CONTENT_TRANSFER_ENCODING variables in crontabs,
-to the correct values of the mail headers of those names.
-.PP
-The CRON_TZ specifies the time zone specific for the cron table. User type into
-the chosen table times in the time of the specified time zone. The time into log
-is taken from local time zone, where is the daemon running.
-.PP
-The MLS_LEVEL environment variable provides support for multiple per-job
-SELinux security contexts in the same crontab.
-By default, cron jobs execute with the default SELinux security context of the
-user that created the crontab file.
-When using multiple security levels and roles, this may not be sufficient, because
-the same user may be running in a different role or at a different security level.
-For more about roles and SELinux MLS/MCS see
-.BR selinux (8)
-and undermentioned crontab example.
-You can set MLS_LEVEL to the SELinux security context string specifying
-the SELinux security context in which you want the job to run, and crond will set
-the execution context of the or jobs to which the setting applies to the specified
-context.
-See also the
-.BR crontab(1)\ -s\ option.
-.PP
-The format of a cron command is very much the V7 standard, with a number of
-upward-compatible extensions. Each line has five time and date fields,
-followed by a user name if this is the system crontab file,
-followed by a command. Commands are executed by
-.BR cron (8)
-when the minute, hour, and month of year fields match the current time,
-.I and
-at least one of the two day fields (day of month, or day of week)
-match the current time (see "Note" below).
-Note that this means that non-existent times, such as "missing hours"
-during daylight savings conversion, will never match, causing jobs
-scheduled during the "missing times" not to be run. Similarly, times
-that occur more than once (again, during daylight savings conversion)
-will cause matching jobs to be run twice.
-.PP
-.BR cron (8)
-examines cron entries once every minute.
-.PP
-The time and date fields are:
-.IP
-.ta 1.5i
-field allowed values
-.br
------ --------------
-.br
-minute 0-59
-.br
-hour 0-23
-.br
-day of month 1-31
-.br
-month 1-12 (or names, see below)
-.br
-day of week 0-7 (0 or 7 is Sun, or use names)
-.br
-.PP
-A field may be an asterisk (*), which always stands for "first\-last".
-.PP
-Ranges of numbers are allowed. Ranges are two numbers separated
-with a hyphen. The specified range is inclusive. For example,
-8-11 for an "hours" entry specifies execution at hours 8, 9, 10
-and 11.
-.PP
-Lists are allowed. A list is a set of numbers (or ranges)
-separated by commas. Examples: "1,2,5,9", "0-4,8-12".
-.PP
-Step values can be used in conjunction with ranges. Following
-a range with "<number>" specifies skips of the number's value
-through the range. For example, "0-23/2" can be used in the hours
-field to specify command execution every other hour (the alternative
-in the V7 standard is "0,2,4,6,8,10,12,14,16,18,20,22"). Steps are
-also permitted after an asterisk, so if you want to say "every two
-hours", just use "*/2".
-.PP
-Names can also be used for the "month" and "day of week"
-fields. Use the first three letters of the particular
-day or month (case doesn't matter). Ranges or
-lists of names are not allowed.
-.PP
-The "sixth" field (the rest of the line) specifies the command to be
-run.
-The entire command portion of the line, up to a newline or %
-character, will be executed by /bin/sh or by the shell
-specified in the SHELL variable of the cronfile.
-Percent-signs (%) in the command, unless escaped with backslash
-(\\), will be changed into newline characters, and all data
-after the first % will be sent to the command as standard
-input.
-.PP
-Note: The day of a command's execution can be specified by two
-fields \(em day of month, and day of week. If both fields are
-restricted (ie, aren't *), the command will be run when
-.I either
-field matches the current time. For example,
-.br
-"30 4 1,15 * 5"
-would cause a command to be run at 4:30 am on the 1st and 15th of each
-month, plus every Friday.
-.SH EXAMPLE CRON FILE
-.nf
-# use /bin/sh to run commands, no matter what /etc/passwd says
-SHELL=/bin/sh
-# mail any output to `paul', no matter whose crontab this is
-MAILTO=paul
-#
-CRON_TZ=Japan
-# run five minutes after midnight, every day
-5 0 * * * $HOME/bin/daily.job >> $HOME/tmp/out 2>&1
-# run at 2:15pm on the first of every month -- output mailed to paul
-15 14 1 * * $HOME/bin/monthly
-# run at 10 pm on weekdays, annoy Joe
-0 22 * * 1-5 mail -s "It's 10pm" joe%Joe,%%Where are your kids?%
-23 0-23/2 * * * echo "run 23 minutes after midn, 2am, 4am ..., everyday"
-5 4 * * sun echo "run at 5 after 4 every sunday"
-.fi
-.SH Jobs in /etc/cron.d/
-The jobs in cron.d are system jobs, which are used usually for more than
-one user. That's the reason why is name of the user needed. MAILTO on the first line
-is optional.
-.SH EXAMPLE FOR JOB IN /etc/cron.d/job
-.nf
-#login as root
-#create job with preferred editor (e.g. vim)
-MAILTO=root
-* * * * * root touch /tmp/file
-.fi
-.SH SELinux with multi level security (MLS)
-In crontab is important specified security level by \fIcrontab\ -s\fR or specifying
-the required level on the first line of the crontab. Each level is specified
-in \fI/etc/selinux/targeted/seusers\fR. For using crontab in MLS mode is really important:
-.br
-- check/change actual role,
-.br
-- set correct \fIrole for directory\fR, which is used for input/output.
-.SH EXAMPLE FOR SELINUX MLS
-.nf
-# login as root
-newrole -r sysadm_r
-mkdir /tmp/SystemHigh
-chcon -l SystemHigh /tmp/SystemHigh
-crontab -e
-# write in crontab file
-MLS_LEVEL=SystemHigh
-0-59 * * * * id -Z > /tmp/SystemHigh/crontest
-When I log in as a normal user, it can't work, because \fI/tmp/SystemHigh\fR is
-higher than my level.
-.fi
-.SH FILES
-.I /etc/crontab
-system crontab file
-.SH "SEE ALSO"
-.BR cron (8),
-.BR crontab (1)
-.SH EXTENSIONS
-When specifying day of week, both day 0 and day 7 will be considered Sunday.
-BSD and ATT seem to disagree about this.
-.PP
-Lists and ranges are allowed to co-exist in the same field. "1-3,7-9" would
-be rejected by ATT or BSD cron -- they want to see "1-3" or "7,8,9" ONLY.
-.PP
-Ranges can include "steps", so "1-9/2" is the same as "1,3,5,7,9".
-.PP
-Names of months or days of the week can be specified by name.
-.PP
-Environment variables can be set in the crontab. In BSD or ATT, the
-environment handed to child processes is basically the one from /etc/rc.
-.PP
-Command output is mailed to the crontab owner (BSD can't do this), can be
-mailed to a person other than the crontab owner (SysV can't do this), or the
-feature can be turned off and no mail will be sent at all (SysV can't do this
-either).
-.PP
-These special time specification "nicknames" are supported, which replace
-the 5 initial time and date fields, and are prefixed by the '@' character:
-.nf
-@reboot : Run once, at startup.
-@yearly : Run once a year, ie. "0 0 1 1 *".
-@annually : Run once a year, ie. "0 0 1 1 *".
-@monthly : Run once a month, ie. "0 0 1 * *".
-@weekly : Run once a week, ie. "0 0 * * 0".
-@daily : Run once a day, ie. "0 0 * * *".
-@hourly : Run once an hour, ie. "0 * * * *".
-.fi
-.SH CAVEATS
-In this version of
-.I cron
-,
-.I /etc/crontab
-must not be writable by any user other than root.
-No crontab files may be links, or linked to by any other file.
-No crontab files may be executable, or be writable by any user
-other than their owner.
-.SH AUTHOR
-.nf
-Paul Vixie <vixie@isc.org>
bin_PROGRAMS = crontab
crond_SOURCES = \
- cron.c database.c user.c entry.c job.c do_command.c \
- misc.c env.c popen.c pw_dup.c security.c
+ cron.c database.c user.c job.c do_command.c popen.c \
+ $(common_src)
+crontab_SOURCES = crontab.c $(common_src)
+common_src = entry.c env.c misc.c pw_dup.c security.c cron.h \
+ externs.h funcs.h globals.h macros.h pathnames.h structs.h \
+ bitstring.h
-crontab_SOURCES = \
- crontab.c misc.c entry.c env.c pw_dup.c security.c
-crontab_LDADD = \
- $(LIBSELINUX) $(LIBPAM) $(LIBAUDIT)
+LDADD = $(LIBSELINUX) $(LIBPAM) $(LIBAUDIT)
-crond_LDADD = \
- $(LIBSELINUX) $(LIBPAM) $(LIBAUDIT)
-
-if DEBUG
-DBG = debug
-else
-DBG =
-endif
-noinst_PROGRAMS = $(DBG)
+## if DEBUG
+## noinst_PROGRAMS = debug
+## endif
#define MAIN_PROGRAM
-#include "cron.h"
+#include <cron.h>
enum timejump { negative, small, medium, large };
#define MAIN_PROGRAM
-#include "cron.h"
+#include <cron.h>
#ifdef WITH_SELINUX
#include <selinux/selinux.h>
#include <selinux/context.h>
/* vix 26jan87 [RCS has the log]
*/
-#include "cron.h"
+#include <cron.h>
#define TMAX(a,b) ((a)>(b)?(a):(b))
static char rcsid[] = "$Id: do_command.c,v 1.9 2004/01/23 18:56:42 vixie Exp $";
#endif
-#include "cron.h"
+#include <cron.h>
static void child_process(entry *, user *);
static int safe_p(const char *, const char *);
* vix 30dec86 [written]
*/
-#include "cron.h"
+#include <cron.h>
typedef enum ecode {
e_none, e_minute, e_hour, e_dom, e_month, e_dow,
static char rcsid[] = "$Id: env.c,v 1.10 2004/01/23 18:56:42 vixie Exp $";
#endif
-#include "cron.h"
+#include <cron.h>
char **
env_init(void) {
static char rcsid[] = "$Id: job.c,v 1.6 2004/01/23 18:56:43 vixie Exp $";
#endif
-#include "cron.h"
+#include <cron.h>
typedef struct _job {
struct _job *next;
* vix 30dec86 [written]
*/
-#include "cron.h"
+#include <cron.h>
#include <limits.h>
#ifdef WITH_AUDIT
#include <libaudit.h>
#endif
#endif /* not lint */
-#include "cron.h"
+#include <cron.h>
#include <signal.h>
/*
static char rcsid[] = "$Id: pw_dup.c,v 1.2 2004/01/23 18:56:43 vixie Exp $";
#endif
+#include <config.h>
#include <sys/param.h>
#if !defined(OpenBSD) || OpenBSD < 200105
#include <stdio.h>
#include <string.h>
-#include "../config.h"
-
struct passwd *
pw_dup(const struct passwd *pw) {
char *cp;
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
-#include "cron.h"
+#include <cron.h>
#ifdef WITH_SELINUX
#include <selinux/selinux.h>
/* vix 26jan87 [log is in RCS file]
*/
-#include "cron.h"
+#include <cron.h>
static const char *FileName;
+++ /dev/null
-timestamp for config.h