SOURCES: vixie-cron-crond.patch - updated
prism
prism at pld-linux.org
Mon Jul 25 12:39:00 CEST 2005
Author: prism Date: Mon Jul 25 10:39:00 2005 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- updated
---- Files affected:
SOURCES:
vixie-cron-crond.patch (1.6 -> 1.7)
---- Diffs:
================================================================
Index: SOURCES/vixie-cron-crond.patch
diff -u SOURCES/vixie-cron-crond.patch:1.6 SOURCES/vixie-cron-crond.patch:1.7
--- SOURCES/vixie-cron-crond.patch:1.6 Sun Aug 31 12:46:22 2003
+++ SOURCES/vixie-cron-crond.patch Mon Jul 25 12:38:54 2005
@@ -1,14 +1,29 @@
---- vixie-cron-3.0.1/database.c.crond Wed Apr 14 18:44:15 1999
-+++ vixie-cron-3.0.1/database.c Wed Apr 14 18:44:15 1999
-@@ -44,6 +44,7 @@
- DIR *dir;
- struct stat statbuf;
- struct stat syscron_stat;
-+ struct stat crond_stat;
- DIR_T *dp;
- cron_db new_db;
- user *u, *nu;
-@@ -59,6 +60,11 @@
+diff -uNr vixie-cron-4.1.p7/cron.8 vixie-cron-4.1/cron.8
+--- vixie-cron-4.1.p7/cron.8 2005-07-24 00:11:24.000000000 +0200
++++ vixie-cron-4.1/cron.8 2005-07-24 22:34:43.000000000 +0200
+@@ -39,7 +39,8 @@
+ searches /var/spool/cron for crontab files which are named after accounts in
+ /etc/passwd; crontabs found are loaded into memory.
+ .I Cron
+-also searches for /etc/crontab which is in a different format (see
++also searches for /etc/cron.d/crontab and the files in the /etc/cron.d/ directory,
++which are in a different format (see
+ .IR crontab (5)).
+ .I Cron
+ then wakes up every minute, examining all stored crontabs, checking each
+diff -uNr vixie-cron-4.1.p7/database.c vixie-cron-4.1/database.c
+--- vixie-cron-4.1.p7/database.c 2005-07-23 12:40:31.000000000 +0200
++++ vixie-cron-4.1/database.c 2005-07-24 22:39:30.000000000 +0200
+@@ -36,7 +36,7 @@
+
+ void
+ load_database(cron_db *old_db) {
+- struct stat statbuf, syscron_stat;
++ struct stat statbuf, syscron_stat, crond_stat;
+ cron_db new_db;
+ DIR_T *dp;
+ DIR *dir;
+@@ -53,6 +53,11 @@
(void) exit(ERROR_EXIT);
}
@@ -16,35 +31,33 @@
+ log_it("CRON", getpid(), "STAT FAILED", "/etc/cron.d");
+ (void) exit(ERROR_EXIT);
+ }
-+
++
/* track system crontab file
*/
if (stat(SYSCRONTAB, &syscron_stat) < OK)
-@@ -71,7 +77,8 @@
+@@ -65,7 +70,8 @@
* so is guaranteed to be different than the stat() mtime the first
* time this function is called.
*/
- if (old_db->mtime == TMAX(statbuf.st_mtime, syscron_stat.st_mtime)) {
+ if (old_db->mtime == TMAX(crond_stat.st_mtime,
-+ TMAX(statbuf.st_mtime, syscron_stat.st_mtime))) {
- Debug(DLOAD, ("[%d] spool dir mtime unch, no load needed.\n",
- getpid()))
++ TMAX(statbuf.st_mtime, syscron_stat.st_mtime))) {
+ Debug(DLOAD, ("[%ld] spool dir mtime unch, no load needed.\n",
+ (long)getpid()))
return;
-@@ -82,7 +89,8 @@
+@@ -76,13 +82,50 @@
* actually changed. Whatever is left in the old database when
* we're done is chaff -- crontabs that disappeared.
*/
- new_db.mtime = TMAX(statbuf.st_mtime, syscron_stat.st_mtime);
+ new_db.mtime = TMAX(crond_stat.st_mtime,
-+ TMAX(statbuf.st_mtime, syscron_stat.st_mtime));
++ TMAX(statbuf.st_mtime, syscron_stat.st_mtime));
new_db.head = new_db.tail = NULL;
- if (syscron_stat.st_mtime) {
-@@ -90,6 +98,42 @@
- SYSCRONTAB, &syscron_stat,
+ if (syscron_stat.st_mtime)
+ process_crontab("root", NULL, SYSCRONTAB, &syscron_stat,
&new_db, old_db);
- }
-+
+
+ if (!(dir = opendir("/etc/cron.d"))) {
+ log_it("CRON", getpid(), "OPENDIR FAILED", "/etc/cron.d");
+ (void) exit(ERROR_EXIT);
@@ -80,23 +93,13 @@
+ &crond_stat, &new_db, old_db);
+ }
+ closedir(dir);
-
++
/* we used to keep this dir open all the time, for the sake of
* efficiency. however, we need to close it in every fork, and
---- vixie-cron-3.0.1/cron.8.crond Wed Apr 14 18:45:03 1999
-+++ vixie-cron-3.0.1/cron.8 Wed Apr 14 18:46:27 1999
-@@ -32,7 +32,8 @@
- searches /var/spool/cron for crontab files which are named after accounts in
- /etc/passwd; crontabs found are loaded into memory.
- .I Cron
--also searches for /etc/crontab which is in a different format (see
-+also searches for /etc/cron.d/crontab and the files in the /etc/cron.d/ directory,
-+which are in a different format (see
- .IR crontab(5)).
- .I Cron
- then wakes up every minute, examining all stored crontabs, checking each
---- vixie-cron-3.0.1/FEATURES.crond Wed Apr 14 18:51:49 1999
-+++ vixie-cron-3.0.1/FEATURES Wed Apr 14 18:53:09 1999
+ * we fork a lot more often than the mtime of the dir changes.
+diff -uNr vixie-cron-4.1.p7/FEATURES vixie-cron-4.1/FEATURES
+--- vixie-cron-4.1.p7/FEATURES 2005-07-23 12:40:30.000000000 +0200
++++ vixie-cron-4.1/FEATURES 2005-07-24 22:35:17.000000000 +0200
@@ -82,3 +82,8 @@
act this way and do the more reasonable thing, which is (IMHO) to "or"
the various field-matches together. In that sense this cron may not
================================================================
---- CVS-web:
http://cvs.pld-linux.org/SOURCES/vixie-cron-crond.patch?r1=1.6&r2=1.7&f=u
More information about the pld-cvs-commit
mailing list