Compare commits
30 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bc1ce99562 | ||
|
|
89cb7c17c9 | ||
|
|
c684c1163e | ||
|
|
8a3fc308bb | ||
|
|
8a736b2eb1 | ||
|
|
483a8bad02 | ||
|
|
b633ca9231 | ||
|
|
9871122470 | ||
|
|
1e6c8f2359 | ||
|
|
17ed917047 | ||
|
|
e76c227507 | ||
|
|
967a35b81e | ||
|
|
3c1b0922d9 | ||
|
|
0a0d307a39 | ||
|
|
2fbe527339 | ||
|
|
026329cd1f | ||
|
|
4e2effc666 | ||
|
|
776f818eb0 | ||
|
|
cee41ed7e1 | ||
|
|
5c8d131bb7 | ||
|
|
f18e3e8e83 | ||
|
|
e7fd054254 | ||
|
|
7d3cf7fb69 | ||
|
|
f770fe7452 | ||
|
|
7156cbaee2 | ||
|
|
af83b5e4cf | ||
|
|
62e44a61d2 | ||
|
|
2efbfa90e3 | ||
|
|
021b66a3d8 | ||
|
|
f939ee9475 |
13 changed files with 1 additions and 2440 deletions
|
|
@ -1,2 +0,0 @@
|
|||
anacron_2.3.orig.tar.gz
|
||||
anacron.init
|
||||
21
Makefile
21
Makefile
|
|
@ -1,21 +0,0 @@
|
|||
# Makefile for source rpm: anacron
|
||||
# $Id: Makefile,v 1.1 2004/09/09 02:58:39 cvsdist Exp $
|
||||
NAME := anacron
|
||||
SPECFILE = $(firstword $(wildcard *.spec))
|
||||
|
||||
define find-makefile-common
|
||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||
|
||||
ifeq ($(MAKEFILE_COMMON),)
|
||||
# attempt a checkout
|
||||
define checkout-makefile-common
|
||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||
endif
|
||||
|
||||
include $(MAKEFILE_COMMON)
|
||||
|
|
@ -1,107 +0,0 @@
|
|||
diff -uNr anacron-2.3-orig/global.h anacron-2.3/global.h
|
||||
--- anacron-2.3-orig/global.h 2000-06-23 01:00:14.000000000 +0100
|
||||
+++ anacron-2.3/global.h 2006-03-20 15:31:28.000000000 +0000
|
||||
@@ -60,6 +60,7 @@
|
||||
int tab_line;
|
||||
int arg_num;
|
||||
int timestamp_fd;
|
||||
+ int input_fd;
|
||||
int output_fd;
|
||||
int mail_header_size;
|
||||
pid_t job_pid;
|
||||
diff -uNr anacron-2.3-orig/runjob.c anacron-2.3/runjob.c
|
||||
--- anacron-2.3-orig/runjob.c 2006-02-21 14:05:08.000000000 +0000
|
||||
+++ anacron-2.3/runjob.c 2006-03-20 15:32:32.000000000 +0000
|
||||
@@ -38,12 +38,12 @@
|
||||
#include <langinfo.h>
|
||||
|
||||
static int
|
||||
-temp_file()
|
||||
+temp_file(job_rec *jr)
|
||||
/* Open a temporary file and return its file descriptor */
|
||||
{
|
||||
const int max_retries = 50;
|
||||
char *name;
|
||||
- int fd, i;
|
||||
+ int fdin, fdout, i;
|
||||
|
||||
i = 0;
|
||||
name = NULL;
|
||||
@@ -53,16 +53,24 @@
|
||||
free(name);
|
||||
name = tempnam(NULL, NULL);
|
||||
if (name == NULL) die("Can't find a unique temporary filename");
|
||||
- fd = open(name, O_RDWR | O_CREAT | O_EXCL | O_APPEND,
|
||||
- S_IRUSR | S_IWUSR);
|
||||
+ fdout = open(name, O_WRONLY | O_CREAT | O_EXCL | O_APPEND,
|
||||
+ S_IRUSR | S_IWUSR);
|
||||
+ if ( fdout != -1 )
|
||||
+ fdin = open(name, O_RDONLY, S_IRUSR | S_IWUSR);
|
||||
/* I'm not sure we actually need to be so persistent here */
|
||||
- } while (fd == -1 && errno == EEXIST && i < max_retries);
|
||||
+ } while (fdout == -1 && errno == EEXIST && i < max_retries);
|
||||
|
||||
- if (fd == -1) die_e("Can't open temporary file");
|
||||
+ if (fdout == -1) die_e("Can't open temporary file for writing");
|
||||
+ if (fdin == -1) die_e("Can't open temporary file for reading");
|
||||
if (unlink(name)) die_e("Can't unlink temporary file");
|
||||
free(name);
|
||||
- fcntl(fd, F_SETFD, 1); /* set close-on-exec flag */
|
||||
- return fd;
|
||||
+ fcntl(fdout, F_SETFD, 1); /* set close-on-exec flag */
|
||||
+ fcntl(fdin, F_SETFD, 1); /* set close-on-exec flag */
|
||||
+
|
||||
+ jr->input_fd = fdin;
|
||||
+ jr->output_fd = fdout;
|
||||
+
|
||||
+ return fdout;
|
||||
}
|
||||
|
||||
static off_t
|
||||
@@ -170,17 +178,28 @@
|
||||
pid = xfork();
|
||||
if (pid == 0)
|
||||
{
|
||||
+ long fdflags;
|
||||
+
|
||||
/* child */
|
||||
in_background = 1;
|
||||
/* set stdin to the job's output */
|
||||
xclose(0);
|
||||
- if (dup2(jr->output_fd, 0) != 0) die_e("Can't dup2()");
|
||||
+ if (dup2(jr->input_fd, 0) != 0) die_e("Can't dup2()");
|
||||
if (lseek(0, 0, SEEK_SET) != 0) die_e("Can't lseek()");
|
||||
umask(old_umask);
|
||||
if (sigprocmask(SIG_SETMASK, &old_sigmask, NULL))
|
||||
die_e("sigprocmask error");
|
||||
xcloselog();
|
||||
|
||||
+ /* Ensure stdout/stderr are sane before exec-ing sendmail */
|
||||
+ xclose(1); xopen(1, "/dev/null", O_WRONLY);
|
||||
+ xclose(2); xopen(2, "/dev/null", O_WRONLY);
|
||||
+ xclose(jr->output_fd);
|
||||
+
|
||||
+ /* Ensure stdin is not appendable ... ? */
|
||||
+ /* fdflags = fcntl(0, F_GETFL); fdflags &= ~O_APPEND; */
|
||||
+ /* fcntl(0, F_SETFL, fdflags ); */
|
||||
+
|
||||
/* Here, I basically mirrored the way /usr/sbin/sendmail is called
|
||||
* by cron on a Debian system, except for the "-oem" and "-or0s"
|
||||
* options, which don't seem to be appropriate here.
|
||||
@@ -225,7 +244,7 @@
|
||||
setup_env(jr);
|
||||
|
||||
/* create temporary file for stdout and stderr of the job */
|
||||
- fd = jr->output_fd = temp_file();
|
||||
+ temp_file(jr); fd = jr->output_fd;
|
||||
/* write mail header */
|
||||
xwrite(fd, "From: ");
|
||||
xwrite(fd, username());
|
||||
@@ -283,6 +302,7 @@
|
||||
running_jobs--;
|
||||
if (mail_output) launch_mailer(jr);
|
||||
xclose(jr->output_fd);
|
||||
+ xclose(jr->input_fd);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
diff -u anacron-2.3/runjob.c~ anacron-2.3/runjob.c
|
||||
--- anacron-2.3/runjob.c~ 2003-07-10 15:25:44.000000000 +0900
|
||||
+++ anacron-2.3/runjob.c 2003-07-10 15:25:44.000000000 +0900
|
||||
@@ -35,6 +35,8 @@
|
||||
#include <string.h>
|
||||
#include "global.h"
|
||||
|
||||
+#include <langinfo.h>
|
||||
+
|
||||
static int
|
||||
temp_file()
|
||||
/* Open a temporary file and return its file descriptor */
|
||||
@@ -217,6 +219,9 @@
|
||||
xwrite(fd, "To: ");
|
||||
xwrite(fd, username());
|
||||
xwrite(fd, "\n");
|
||||
+ xwrite(fd, "Content-Type: text/plain; charset=\"");
|
||||
+ xwrite(fd, nl_langinfo(CODESET));
|
||||
+ xwrite(fd, "\"\n");
|
||||
xwrite(fd, "Subject: Anacron job '");
|
||||
xwrite(fd, jr->ident);
|
||||
xwrite(fd, "'\n\n");
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
--- anacron-2.3/gregor.c.mem 2007-08-08 10:02:58.000000000 +0200
|
||||
+++ anacron-2.3/gregor.c 2007-08-08 10:10:55.000000000 +0200
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <time.h>
|
||||
#include "gregor.h"
|
||||
|
||||
-const static int
|
||||
+static const int
|
||||
days_in_month[] = {
|
||||
31, /* Jan */
|
||||
28, /* Feb (non-leap) */
|
||||
--- anacron-2.3/log.c.mem 2007-08-08 10:02:58.000000000 +0200
|
||||
+++ anacron-2.3/log.c 2007-08-08 10:13:03.000000000 +0200
|
||||
@@ -83,7 +83,7 @@
|
||||
}
|
||||
|
||||
static void
|
||||
-log(int priority, const char *fmt, va_list args)
|
||||
+slog(int priority, const char *fmt, va_list args)
|
||||
/* Log a message, described by "fmt" and "args", with the specified
|
||||
* "priority". */
|
||||
{
|
||||
@@ -101,7 +101,7 @@
|
||||
|
||||
static void
|
||||
log_e(int priority, const char *fmt, va_list args)
|
||||
-/* Same as log(), but also appends an error description corresponding
|
||||
+/* Same as slog(), but also appends an error description corresponding
|
||||
* to "errno". */
|
||||
{
|
||||
int saved_errno;
|
||||
@@ -127,7 +127,7 @@
|
||||
va_list args;
|
||||
|
||||
va_start(args, fmt);
|
||||
- log(EXPLAIN_LEVEL, fmt, args);
|
||||
+ slog(EXPLAIN_LEVEL, fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
@@ -149,7 +149,7 @@
|
||||
va_list args;
|
||||
|
||||
va_start(args, fmt);
|
||||
- log(COMPLAIN_LEVEL, fmt, args);
|
||||
+ slog(COMPLAIN_LEVEL, fmt, args);
|
||||
va_end(args);
|
||||
|
||||
complaints += 1;
|
||||
@@ -175,7 +175,7 @@
|
||||
va_list args;
|
||||
|
||||
va_start(args, fmt);
|
||||
- log(COMPLAIN_LEVEL, fmt, args);
|
||||
+ slog(COMPLAIN_LEVEL, fmt, args);
|
||||
va_end(args);
|
||||
if (getpid() == primary_pid) complain("Aborted");
|
||||
|
||||
@@ -207,7 +207,7 @@
|
||||
va_list args;
|
||||
|
||||
va_start(args, fmt);
|
||||
- log(DEBUG_LEVEL, fmt, args);
|
||||
+ slog(DEBUG_LEVEL, fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
--- anacron-2.3/global.h.mem 2007-08-08 10:02:58.000000000 +0200
|
||||
+++ anacron-2.3/global.h 2007-08-08 10:10:21.000000000 +0200
|
||||
@@ -105,18 +105,25 @@
|
||||
/* main.c */
|
||||
int xopen(int fd, const char *file_name, int flags);
|
||||
void xclose(int fd);
|
||||
-pid_t xfork();
|
||||
+pid_t xfork(void);
|
||||
+
|
||||
+#ifdef __GNUC__
|
||||
+#define PRINTF_FORMAT(n, m) \
|
||||
+ __attribute__ ((format (printf, n, m)))
|
||||
+#else
|
||||
+#define PRINTF_FORMAT(n, m)
|
||||
+#endif
|
||||
|
||||
/* log.c */
|
||||
-void explain(const char *fmt, ...);
|
||||
-void explain_e(const char *fmt, ...);
|
||||
-void complain(const char *fmt, ...);
|
||||
-void complain_e(const char *fmt, ...);
|
||||
-void die(const char *fmt, ...);
|
||||
-void die_e(const char *fmt, ...);
|
||||
-void xdebug(const char *fmt, ...);
|
||||
-void xdebug_e(const char *fmt, ...);
|
||||
-void xcloselog();
|
||||
+void explain(const char *fmt, ...)PRINTF_FORMAT(1,2);
|
||||
+void explain_e(const char *fmt, ...)PRINTF_FORMAT(1,2);
|
||||
+void complain(const char *fmt, ...)PRINTF_FORMAT(1,2);
|
||||
+void complain_e(const char *fmt, ...)PRINTF_FORMAT(1,2);
|
||||
+void die(const char *fmt, ...)PRINTF_FORMAT(1,2);
|
||||
+void die_e(const char *fmt, ...)PRINTF_FORMAT(1,2);
|
||||
+void xdebug(const char *fmt, ...)PRINTF_FORMAT(1,2);
|
||||
+void xdebug_e(const char *fmt, ...)PRINTF_FORMAT(1,2);
|
||||
+void xcloselog(void);
|
||||
|
||||
#ifdef DEBUG
|
||||
#define Debug(args) xdebug args
|
||||
@@ -128,7 +135,7 @@
|
||||
|
||||
/* readtab.c */
|
||||
void read_tab(int cwd);
|
||||
-void arrange_jobs();
|
||||
+void arrange_jobs(void);
|
||||
|
||||
/* lock.c */
|
||||
int consider_job(job_rec *jr);
|
||||
--- anacron-2.3/runjob.c.mem 2007-08-08 10:02:58.000000000 +0200
|
||||
+++ anacron-2.3/runjob.c 2007-08-08 10:17:44.000000000 +0200
|
||||
@@ -64,8 +64,8 @@
|
||||
if (fdin == -1) die_e("Can't open temporary file for reading");
|
||||
if (unlink(name)) die_e("Can't unlink temporary file");
|
||||
free(name);
|
||||
- fcntl(fdout, F_SETFD, 1); /* set close-on-exec flag */
|
||||
- fcntl(fdin, F_SETFD, 1); /* set close-on-exec flag */
|
||||
+ fcntl(fdout, F_SETFD, FD_CLOEXEC); /* set close-on-exec flag */
|
||||
+ fcntl(fdin, F_SETFD, FD_CLOEXEC); /* set close-on-exec flag */
|
||||
|
||||
jr->input_fd = fdin;
|
||||
jr->output_fd = fdout;
|
||||
@@ -175,8 +175,6 @@
|
||||
pid = xfork();
|
||||
if (pid == 0)
|
||||
{
|
||||
- long fdflags;
|
||||
-
|
||||
/* child */
|
||||
in_background = 1;
|
||||
/* set stdin to the job's output */
|
||||
--- anacron-2.3/matchrx.c.mem 2000-06-21 01:12:18.000000000 +0200
|
||||
+++ anacron-2.3/matchrx.c 2007-08-08 10:16:54.000000000 +0200
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <regex.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
+#include <string.h>
|
||||
#include "matchrx.h"
|
||||
|
||||
int
|
||||
@@ -49,11 +50,20 @@
|
||||
sub_offsets = malloc(sizeof(regmatch_t) * (n_sub + 1));
|
||||
memset(sub_offsets, 0, sizeof(regmatch_t) * (n_sub + 1));
|
||||
|
||||
- if (regcomp(&crx, rx, REG_EXTENDED)) return - 1;
|
||||
+ if (regcomp(&crx, rx, REG_EXTENDED)) {
|
||||
+ free(sub_offsets);
|
||||
+ return - 1;
|
||||
+ }
|
||||
r = regexec(&crx, string, n_sub + 1, sub_offsets, 0);
|
||||
- if (r != 0 && r != REG_NOMATCH) return - 1;
|
||||
+ if (r != 0 && r != REG_NOMATCH) {
|
||||
+ free(sub_offsets);
|
||||
+ return - 1;
|
||||
+ }
|
||||
regfree(&crx);
|
||||
- if (r == REG_NOMATCH) return 0;
|
||||
+ if (r == REG_NOMATCH) {
|
||||
+ free(sub_offsets);
|
||||
+ return 0;
|
||||
+ }
|
||||
|
||||
va_start(va, n_sub);
|
||||
n = 1;
|
||||
@@ -62,7 +72,10 @@
|
||||
substring = va_arg(va, char**);
|
||||
if (substring != NULL)
|
||||
{
|
||||
- if (sub_offsets[n].rm_so == -1) return - 1;
|
||||
+ if (sub_offsets[n].rm_so == -1) {
|
||||
+ free(sub_offsets);
|
||||
+ return - 1;
|
||||
+ }
|
||||
*substring = string + sub_offsets[n].rm_so;
|
||||
*(string + sub_offsets[n].rm_eo) = 0;
|
||||
}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
--- anacron-2.3/Makefile.piee 2006-10-17 12:39:39.000000000 +0200
|
||||
+++ anacron-2.3/Makefile 2006-10-17 12:39:39.000000000 +0200
|
||||
@@ -22,7 +22,8 @@
|
||||
PREFIX =
|
||||
BINDIR = $(PREFIX)/usr/sbin
|
||||
MANDIR = $(PREFIX)/usr/man
|
||||
-CFLAGS = -Wall -pedantic -O2
|
||||
+LDFLAGS = -fpie -Wl,-z,relro
|
||||
+CFLAGS = -Wall -pedantic -W -Wundef -fpie
|
||||
#CFLAGS = -Wall -O2 -g -DDEBUG
|
||||
|
||||
# If you change these, please update the man-pages too
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
--- anacron-2.3/debian/0anacron.daily.script 2007-08-15 09:21:14.000000000 +0200
|
||||
+++ anacron-2.3/debian/0anacron.daily 2007-08-15 09:30:15.000000000 +0200
|
||||
@@ -9,4 +9,8 @@
|
||||
# _before_ all other scripts.
|
||||
|
||||
test -x /usr/sbin/anacron || exit 0
|
||||
-anacron -u cron.daily
|
||||
+AUX1=`cat /var/spool/anacron/cron.daily`
|
||||
+AUX2=`date +%Y%m%d`
|
||||
+if [ "$AUX1" != $AUX2 ]; then
|
||||
+ anacron -u cron.daily
|
||||
+fi
|
||||
93
anacron.init
93
anacron.init
|
|
@ -1,93 +0,0 @@
|
|||
#!/bin/sh
|
||||
# Startup script for anacron
|
||||
#
|
||||
# chkconfig: 2345 99 05
|
||||
# description: Run cron jobs that were left out due to downtime
|
||||
# pidfile: /var/run/anacron.pid
|
||||
#
|
||||
# Source function library.
|
||||
. /etc/rc.d/init.d/functions
|
||||
|
||||
[ -f /usr/sbin/anacron ] || exit 0
|
||||
|
||||
prog="anacron"
|
||||
PIDFILE=/var/spool/anacron/cron.daily
|
||||
LOCKFILE=/var/lock/subsys/$prog
|
||||
#
|
||||
# NOTE: anacron exits after it has determined it has no more work to do.
|
||||
# Hence, its initscript cannot do normal lock file management.
|
||||
# The anacron binary now creates its own timestamps in files
|
||||
# /var/spool/anacron/cron.{daily,monthly,weekly}
|
||||
# and /var/lock/subsys lock files.
|
||||
#
|
||||
|
||||
start() {
|
||||
echo -n $"Starting $prog: "
|
||||
# on_ac_power doesn't exist, on_ac_power returns 0 (ac power being used)
|
||||
if test -x /usr/bin/on_ac_power
|
||||
then
|
||||
/usr/bin/on_ac_power > /dev/null
|
||||
if test $? -eq 1
|
||||
then
|
||||
echo "deferred while on battery power."
|
||||
RETVAL=0
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
daemon +19 anacron -s
|
||||
RETVAL=$?
|
||||
if [ $RETVAL -ne 0 ]; then
|
||||
failure;
|
||||
fi;
|
||||
echo
|
||||
}
|
||||
|
||||
stop() {
|
||||
echo -n $"Stopping $prog: "
|
||||
if [ -f $PIDFILE ]; then
|
||||
killproc anacron
|
||||
RETVAL=$?
|
||||
if [ $RETVAL -ne 0 ]; then
|
||||
failure;
|
||||
fi;
|
||||
else
|
||||
failure;
|
||||
fi
|
||||
echo
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
|
||||
status)
|
||||
## hard to say - anacron is up only when cron wake him
|
||||
status $prog
|
||||
RETVAL=$?
|
||||
;;
|
||||
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
;;
|
||||
|
||||
condrestart)
|
||||
if [ -f /var/lock/subsys/anacron ]; then
|
||||
stop
|
||||
sleep 2
|
||||
start
|
||||
fi
|
||||
;;
|
||||
|
||||
*)
|
||||
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
|
||||
RETVAL=3
|
||||
|
||||
esac
|
||||
|
||||
exit $RETVAL
|
||||
346
anacron.spec
346
anacron.spec
|
|
@ -1,346 +0,0 @@
|
|||
Summary: A cron-like program that can run jobs lost during downtime
|
||||
Name: anacron
|
||||
Version: 2.3
|
||||
Release: 56%{?dist}
|
||||
License: GPLv2+
|
||||
Group: System Environment/Base
|
||||
URL: http://packages.debian.org/stable/source/anacron
|
||||
Source: http://ftp.debian.org/debian/pool/main/a/anacron/%{name}_%{version}.orig.tar.gz
|
||||
Source1: anacrontab
|
||||
Source2: anacron.init
|
||||
Patch0: anacron_2.3-13.patch
|
||||
Patch1: anacron-2.3-mail-content-type-77108.patch
|
||||
Patch2: anacron-2.3-fdclose.patch
|
||||
Patch3: anacron-2.3-pic.patch
|
||||
Patch4: anacron-2.3-memleaking.patch
|
||||
|
||||
Requires: crontabs
|
||||
Requires: initscripts
|
||||
Requires(post): /sbin/chkconfig
|
||||
Requires(preun): /sbin/chkconfig
|
||||
Requires(postun): /sbin/service
|
||||
Requires(preun): /sbin/service
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
|
||||
|
||||
%description
|
||||
Anacron (like `anac(h)ronistic') is a periodic command scheduler.
|
||||
It executes commands at intervals specified in days. Unlike cron, it
|
||||
does not assume that the system is running continuously. It can
|
||||
therefore be used to control the execution of daily, weekly and
|
||||
monthly jobs (or anything with a period of n days), on systems that
|
||||
don't run 24 hours a day. When installed and configured properly,
|
||||
Anacron will make sure that the commands are run at the specified
|
||||
intervals as closely as machine-uptime permits.
|
||||
|
||||
This package is pre-configured to execute the daily jobs of the Red
|
||||
Hat Linux (or Fedora) system. You should install this program if your
|
||||
system isn't powered on 24 hours a day to make sure the maintenance
|
||||
jobs of other Red Hat Linux (or Fedora) packages are executed each day.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1 -b .try
|
||||
%patch1 -p1 -b .charset
|
||||
%patch2 -p1 -b .fdclose
|
||||
%patch3 -p1 -b .pic
|
||||
%patch4 -p1 -b .memleaking
|
||||
|
||||
%build
|
||||
make CFLAGS="$RPM_OPT_FLAGS" %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p $RPM_BUILD_ROOT/{etc/,usr/sbin/,%{_mandir}/man5,%{_mandir}/man8/}
|
||||
mkdir -p $RPM_BUILD_ROOT/var/spool/anacron/
|
||||
|
||||
#
|
||||
cp anacron $RPM_BUILD_ROOT/usr/sbin
|
||||
cp anacron.8 $RPM_BUILD_ROOT/%{_mandir}/man8/
|
||||
cp anacrontab.5 $RPM_BUILD_ROOT/%{_mandir}/man5/
|
||||
cp %SOURCE1 $RPM_BUILD_ROOT/etc
|
||||
|
||||
for i in cron.daily cron.weekly cron.monthly;do
|
||||
mkdir -p $RPM_BUILD_ROOT/etc/$i/
|
||||
done
|
||||
|
||||
cp debian/0anacron.daily $RPM_BUILD_ROOT/etc/cron.daily/0anacron
|
||||
cp debian/0anacron.monthly $RPM_BUILD_ROOT/etc/cron.monthly/0anacron
|
||||
cp debian/0anacron.weekly $RPM_BUILD_ROOT/etc/cron.weekly/0anacron
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d/
|
||||
install -c -m755 %SOURCE2 $RPM_BUILD_ROOT/etc/rc.d/init.d/anacron
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%post
|
||||
/sbin/chkconfig --add anacron
|
||||
if [ "$1" -ge 1 ]; then
|
||||
/sbin/chkconfig --level 2345 anacron resetpriorities
|
||||
fi
|
||||
|
||||
%preun
|
||||
if [ "$1" = "0" ]; then
|
||||
service anacron stop >/dev/null 2>&1 ||:
|
||||
/sbin/chkconfig --del anacron
|
||||
fi
|
||||
|
||||
%postun
|
||||
if [ "$1" -ge "1" ]; then
|
||||
service anacron condrestart >/dev/null 2>&1 ||:
|
||||
fi
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,0755)
|
||||
%doc COPYING README
|
||||
%config(noreplace) /etc/anacrontab
|
||||
%dir /var/spool/anacron/
|
||||
%dir /etc/rc.d/init.d/*
|
||||
/%{_mandir}/man5/*
|
||||
/%{_mandir}/man8/*
|
||||
/usr/sbin/anacron
|
||||
%attr(755,root,root) %dir /etc/cron.daily/0anacron
|
||||
%attr(755,root,root) %dir /etc/cron.monthly/0anacron
|
||||
%attr(755,root,root) %dir /etc/cron.weekly/0anacron
|
||||
|
||||
%changelog
|
||||
* Tue Sep 25 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-56
|
||||
- cron.{hourly,daily} work correct -> remove checking whether
|
||||
cron.daily has been run
|
||||
- persist: run pc between midnight and 4:02 -> cron.daily run twice.
|
||||
- rhbz#296741
|
||||
|
||||
* Fri Aug 31 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-55
|
||||
- change chkconfig --add, because it wasn't running after
|
||||
fresh install #267801
|
||||
|
||||
* Thu Aug 30 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-54
|
||||
- change chkconfig levels in post part
|
||||
|
||||
* Wed Aug 17 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-53
|
||||
- rebuild with changed post - starting value must be removed
|
||||
- Resolves: 252166, 252255, 252254
|
||||
|
||||
* Tue Aug 14 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-51
|
||||
- rebuild with correct init script
|
||||
|
||||
* Mon Aug 13 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-50
|
||||
- rewrite typo in init script
|
||||
- Resolves: rhbz#251757
|
||||
|
||||
* Wed Aug 08 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-49
|
||||
- adopt some patches from upstream for better locking
|
||||
- add own changes, which resolve problem with two or more run of
|
||||
cron.daily per day.
|
||||
- Resolves: #157448
|
||||
|
||||
* Wed Jul 11 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-48
|
||||
- changes in init script (not build)
|
||||
|
||||
* Tue Feb 6 2007 Marcela Maslanova <mmaslano@redhat.com> 2.3-47
|
||||
- thanks for review from Jef Spaleta
|
||||
- rhbz#225247, rhbz#211309
|
||||
|
||||
* Mon Dec 04 2006 Marcela Maslanova <mmaslano@redhat.com> 2.3-45
|
||||
- rebuilt with pie insted pic
|
||||
|
||||
* Tue Oct 10 2006 Marcela Maslanova <mmaslano@redhat.com> 2.3-44
|
||||
- fix memory leaking (both #210020)
|
||||
- PIE(PIC) executable
|
||||
|
||||
* Tue Oct 2 2006 Marcela Maslanova <mmaslano@redhat.com> 2.3-42
|
||||
- hostname added to mail (#208914)
|
||||
|
||||
* Fri Sep 29 2006 Marcela Maslanova <mmaslano@redhat.com> 2.3-41
|
||||
- change spec file - patch from Orion Poplawski (#191410)
|
||||
|
||||
* Mon Sep 11 2006 Dan Walsh <dwalsh@redhat.com> 2.3-40
|
||||
- Grab the fdclose patch from FC4
|
||||
- fix bug 185973: allow use of sendmail under selinux-policy-strict:
|
||||
apply patch contributed by Ted Rule<ejtr@layer3.co.uk>
|
||||
|
||||
* Wed Aug 30 2006 Jitka Kudrnacova <jkudrnac@redhat.com> - 2.3-39
|
||||
- modified PATH in /etc/anacrontab file to make the same as in /etc/crontab (#61891)
|
||||
|
||||
* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 2.3-38.FC6.1
|
||||
- rebuild
|
||||
|
||||
* Thu Apr 13 2006 Jason Vas Dias <jvdias@redhat.com> - 2.3-38.1
|
||||
- fix bug 188403: anacron SysVinit locking:
|
||||
Since anacron just exits when it has no more work to do, the
|
||||
initscript cannot do normal /var/lock/subsys/anacron lock file
|
||||
creation, else messages such as 'anacron dead but subsys locked'
|
||||
will appear when changing init levels.
|
||||
|
||||
Now, the anacron process itself creates its own
|
||||
/var/lock/subsys/anacron SysVinit lock file and
|
||||
/var/run/anacron.pid pid file to co-operate more
|
||||
gracefully with the initscript system.
|
||||
|
||||
* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 2.3-36.1
|
||||
- bump again for double-long bug on ppc(64)
|
||||
|
||||
* Tue Feb 07 2006 Jason Vas Dias <jvdias@redhat.com> - 2.3-36
|
||||
- rebuild for new gcc, glibc, glibc-kernheaders
|
||||
|
||||
* Wed Jan 11 2006 Peter Jones <pjones@redhat.com> 2.3-35
|
||||
- Fix initscript so changing runlevel shuts it down correctly
|
||||
|
||||
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
|
||||
- rebuilt
|
||||
|
||||
* Wed Mar 16 2005 Jason Vas Dias <jvdias@redhat.com> 2.3-34
|
||||
- Rebuild with gcc4 in FC4.
|
||||
|
||||
* Mon Feb 21 2005 Jason Vas Dias <jvdias@redhat.com> 2.3-33
|
||||
- Rebuild for FC4 .
|
||||
|
||||
* Tue Sep 28 2004 Rik van Riel <riel@redhat.com> 2.3-32
|
||||
- add MAILTO option, like vixie cron has (bz#127924)
|
||||
|
||||
* Fri Jul 2 2004 Elliot Lee <sopwith@redhat.com>
|
||||
- rebuilt
|
||||
- Add noconst patch to fix invalid C
|
||||
|
||||
* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
|
||||
- rebuilt
|
||||
|
||||
* Thu Jul 10 2003 Jens Petersen <petersen@redhat.com> - 2.3-29
|
||||
- don't require vixie-cron (#21176) [reported by Gerald Teschl]
|
||||
- in init script don't remove /var/lock/subsys/anacron when stopping (#58462)
|
||||
- exit init script with actual exit status (#44600) [reported by Enrico Scholz]
|
||||
|
||||
* Thu Jul 10 2003 Jens Petersen <petersen@redhat.com> - 2.3-28
|
||||
- add a Content-Type header to mails giving the charset encoding (#77108)
|
||||
|
||||
* Thu Jul 10 2003 Jens Petersen <petersen@redhat.com> - 2.3-27
|
||||
- in init script do not touch /var/lock/subsys/anacron when starting (#58462)
|
||||
- require crontabs (#21176)
|
||||
- update source url
|
||||
|
||||
* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
|
||||
- rebuilt
|
||||
|
||||
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
|
||||
- rebuilt
|
||||
|
||||
* Wed Dec 11 2002 Tim Powers <timp@redhat.com> 2.3-24
|
||||
- rebuild on all arches
|
||||
|
||||
* Fri Aug 23 2002 Jens Petersen <petersen@redhat.com> 2.3-23
|
||||
- delay the start of anacron by 60min to make startup more pleasant (#68304)
|
||||
- at startup run jobs serially and nice 19 to reduce load (#65870, #68304)
|
||||
- spec file now in utf-8
|
||||
- dont install non-existant NEWS file
|
||||
- silence make include warnings
|
||||
|
||||
* Fri Jul 19 2002 Akira TAGOH <tagoh@redhat.com> 2.3-22
|
||||
- fix the stripped binary issue.
|
||||
|
||||
* Mon Jul 08 2002 Bill Huang <bhuang@redhat.com>
|
||||
- Update "Copyright" to "License" in spec file
|
||||
|
||||
* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
|
||||
- automated rebuild
|
||||
|
||||
* Thu May 23 2002 Tim Powers <timp@redhat.com>
|
||||
- automated rebuild
|
||||
|
||||
* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
|
||||
- automated rebuild
|
||||
|
||||
* Sun Jun 24 2001 Elliot Lee <sopwith@redhat.com>
|
||||
- Bump release + rebuild.
|
||||
|
||||
* Tue Apr 3 2001 Crutcher Dunnavant <crutcher@redhat.com>
|
||||
- add dependancy to vixie-cron (for /usr/bin/run-parts)
|
||||
|
||||
* Tue Feb 13 2001 Tim Waugh <twaugh@redhat.com>
|
||||
- killproc is a shell function and can't be passed as a parameter
|
||||
(bug #27150).
|
||||
|
||||
* Mon Feb 5 2001 Bernhard Rosenkraenzer <bero@redhat.com>
|
||||
- Fix i18n in initscript ("Stopping anacron" wasn't translated)
|
||||
(#26076)
|
||||
|
||||
* Fri Feb 2 2001 Trond Eivind Glomsrød <teg@redhat.com>
|
||||
- i18nize initscript
|
||||
|
||||
* Thu Dec 7 2000 Crutcher Dunnavant <crutcher@redhat.com>
|
||||
- rebuild in rebuild cycle.
|
||||
|
||||
* Mon Oct 30 2000 Matt Wilson <msw@redhat.com>
|
||||
- touch /var/lock/subsys/anacron to prevent excess startage during
|
||||
init level change
|
||||
|
||||
* Wed Aug 30 2000 Bernhard Rosenkraenzer <bero@redhat.com>
|
||||
- Shut down earlier to prevent NFS mounted /usr filesystems from causing
|
||||
problems (Bug #16257)
|
||||
|
||||
* Fri Aug 4 2000 Bernhard Rosenkraenzer <bero@redhat.com>
|
||||
- Start it later so services some cron scripts may depend on are running
|
||||
(Bug #15335)
|
||||
|
||||
* Thu Aug 3 2000 Bernhard Rosenkraenzer <bero@redhat.com>
|
||||
- Fix up initscript (Bug #15123 and an unreported bug)
|
||||
|
||||
* Sat Jul 15 2000 Bill Nottingham <notting@redhat.com>
|
||||
- move initscript back
|
||||
|
||||
* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
|
||||
- automatic rebuild
|
||||
|
||||
* Mon Jul 10 2000 Bernhard Rosenkraenzer <bero@redhat.com>
|
||||
- Fix up initscripts (Bug #13625)
|
||||
|
||||
* Tue Jul 4 2000 Matt Wilson <msw@redhat.com>
|
||||
- Prereq: /sbin/chkconfig
|
||||
|
||||
* Mon Jun 26 2000 Preston Brown <pbrown@redhat.com>
|
||||
- move initscript to /etc/init.d, fix up post/preun/postun scripts.
|
||||
|
||||
* Sun Jun 26 2000 Bernhard Rosenkraenzer <bero@redhat.com>
|
||||
- 2.3
|
||||
|
||||
* Sun Jun 18 2000 Matt Wilson <msw@redhat.com>
|
||||
- use %%{_mandir}
|
||||
|
||||
* Fri Mar 03 2000 Tim Powers <timp@redhat.com>
|
||||
- fixed startup script so that it doesn't put stuff in /var/lock/subsys.
|
||||
Complains since anacronda turns itself off when it is run, and the file in
|
||||
/var/lock/subsys isn't removed.
|
||||
|
||||
* Mon Feb 28 2000 Tim Powers <timp@redhat.com>
|
||||
- fixed startup script, now it actually stops, gives status and restarts.
|
||||
Fixes bug #9835
|
||||
|
||||
* Mon Feb 7 2000 Bill Nottingham <notting@redhat.com>
|
||||
- handle compressed manpages
|
||||
|
||||
* Fri Feb 4 2000 Bernhard Rosenkraenzer <bero@redhat.com>
|
||||
- rebuild to get compressed man pages
|
||||
- mark /etc/cron.daily/... as config files
|
||||
|
||||
* Wed Feb 02 2000 Cristian Gafton <gafton@redhat.com>
|
||||
- fix annoying defines
|
||||
- rebuild to update description and group
|
||||
|
||||
* Thu Jan 6 2000 Bernhard Rosenkränzer <bero@redhat.com>
|
||||
- initial Red Hat package
|
||||
|
||||
* Wed Dec 29 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
|
||||
- Remove cron.hourly check (unusefull).
|
||||
|
||||
* Wed Nov 10 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
|
||||
- 2.1 from debian.
|
||||
- Fix typo in initscripts.
|
||||
|
||||
* Thu Jul 22 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
|
||||
- Fix wrong entries in anacrontab.
|
||||
- Add a /etc/rc.sysinit/ script
|
||||
|
||||
* Tue Apr 27 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
|
||||
- Fix bug with /var/spool/anacron/
|
||||
|
||||
* Sat Apr 10 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
|
||||
- First version mainly inspired from the Debian package.
|
||||
1630
anacron_2.3-13.patch
1630
anacron_2.3-13.patch
File diff suppressed because it is too large
Load diff
11
anacrontab
11
anacrontab
|
|
@ -1,11 +0,0 @@
|
|||
# /etc/anacrontab: configuration file for anacron
|
||||
|
||||
# See anacron(8) and anacrontab(5) for details.
|
||||
|
||||
SHELL=/bin/sh
|
||||
PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
MAILTO=root
|
||||
|
||||
1 65 cron.daily nice run-parts /etc/cron.daily
|
||||
7 70 cron.weekly nice run-parts /etc/cron.weekly
|
||||
@monthly 75 cron.monthly nice run-parts /etc/cron.monthly
|
||||
1
dead.package
Normal file
1
dead.package
Normal file
|
|
@ -0,0 +1 @@
|
|||
Obsoleted by cronie-anacron as of F-12.
|
||||
2
sources
2
sources
|
|
@ -1,2 +0,0 @@
|
|||
9fdfc50f5741643332722a9145146278 anacron_2.3.orig.tar.gz
|
||||
094af5e05723d2c4924d60f73d738509 anacron.init
|
||||
Reference in a new issue