diff options
author | rafan <rafan@FreeBSD.org> | 2007-07-29 23:25:25 +0800 |
---|---|---|
committer | rafan <rafan@FreeBSD.org> | 2007-07-29 23:25:25 +0800 |
commit | ed09c6a4f9df253382a9b1b5658494874a8ec045 (patch) | |
tree | 0cbe68081ed0833f72093fbf3ff364d52863af99 /sysutils | |
parent | a8c560590015a327c6c6890fc68d4fe75745fa0a (diff) | |
download | freebsd-ports-gnome-ed09c6a4f9df253382a9b1b5658494874a8ec045.tar.gz freebsd-ports-gnome-ed09c6a4f9df253382a9b1b5658494874a8ec045.tar.zst freebsd-ports-gnome-ed09c6a4f9df253382a9b1b5658494874a8ec045.zip |
- Update to 3.7.1 with Debian patch 3
- Fix path in config.h (/var/lib -> /var/log) to match our hier
- Include dateext patch. This is obtained from Fedora CVS:
http://www.redhat.com/archives/fedora-cvs-commits/2005-June/msg00761.html
PR: ports/114523
Submitted by: Tom Mueko <tmueko at kommunity.net>
Approved by: Balazs Nagy <js at iksz.hu> (maintaineR)
Diffstat (limited to 'sysutils')
-rw-r--r-- | sysutils/logrotate/Makefile | 5 | ||||
-rw-r--r-- | sysutils/logrotate/distinfo | 12 | ||||
-rw-r--r-- | sysutils/logrotate/files/patch-Makefile | 2 | ||||
-rw-r--r-- | sysutils/logrotate/files/patch-aa | 17 | ||||
-rw-r--r-- | sysutils/logrotate/files/patch-config.h | 4 | ||||
-rw-r--r-- | sysutils/logrotate/files/patch-dateext | 414 |
6 files changed, 429 insertions, 25 deletions
diff --git a/sysutils/logrotate/Makefile b/sysutils/logrotate/Makefile index f2e4c232d1a3..3441e0193413 100644 --- a/sysutils/logrotate/Makefile +++ b/sysutils/logrotate/Makefile @@ -6,8 +6,7 @@ # PORTNAME= logrotate -PORTVERSION= 3.7 -PORTREVISION= 5 +PORTVERSION= 3.7.1 CATEGORIES= sysutils MASTER_SITES= ${MASTER_SITE_DEBIAN_POOL} MASTER_SITE_SUBDIR= l/logrotate @@ -15,7 +14,7 @@ DISTNAME= ${PORTNAME}_${PORTVERSION}.orig PATCH_SITES= ${MASTER_SITES} PATCH_SITE_SUBDIR= ${MASTER_SITE_SUBDIR} -PATCHFILES= ${PORTNAME}_${PORTVERSION}-5.diff.gz +PATCHFILES= ${PORTNAME}_${PORTVERSION}-3.diff.gz MAINTAINER= js@iksz.hu COMMENT= Daemon to rotate, compress, remove and mail system log files diff --git a/sysutils/logrotate/distinfo b/sysutils/logrotate/distinfo index c81c34551d54..ae4cd90696a3 100644 --- a/sysutils/logrotate/distinfo +++ b/sysutils/logrotate/distinfo @@ -1,6 +1,6 @@ -MD5 (logrotate_3.7.orig.tar.gz) = bf0de3a495294300f32e71f136119c41 -SHA256 (logrotate_3.7.orig.tar.gz) = a0fba4f6214fb30cb1f61a51fffca9a7e2ec01aad8dbcf5d3ec157149b460e1b -SIZE (logrotate_3.7.orig.tar.gz) = 35737 -MD5 (logrotate_3.7-5.diff.gz) = 291d015a7fddd86ee2da4cb7bbb12b19 -SHA256 (logrotate_3.7-5.diff.gz) = dce1378ddafe98478eb0fa2d6064fae7ddbd4eab9e8cac794b333d586759bbf5 -SIZE (logrotate_3.7-5.diff.gz) = 15081 +MD5 (logrotate_3.7.1.orig.tar.gz) = 552639142e163745f6bcd4f1f3816d8a +SHA256 (logrotate_3.7.1.orig.tar.gz) = 7e79b03d65105541a5fdcc05087bee29ebc9e33149ac33d6563d0b20eddf79e0 +SIZE (logrotate_3.7.1.orig.tar.gz) = 36176 +MD5 (logrotate_3.7.1-3.diff.gz) = 7b0dd9835339bbf85f106d4adb25cf0c +SHA256 (logrotate_3.7.1-3.diff.gz) = 68b6ebd0cb8f78a8a0a1dcaa8a1a4486288967e9acc7f4c02bb8ee9ecde9cb6c +SIZE (logrotate_3.7.1-3.diff.gz) = 23547 diff --git a/sysutils/logrotate/files/patch-Makefile b/sysutils/logrotate/files/patch-Makefile index c7192e6f7fb0..f5cdf054549b 100644 --- a/sysutils/logrotate/files/patch-Makefile +++ b/sysutils/logrotate/files/patch-Makefile @@ -1,5 +1,5 @@ --- logrotate-3.7-orig/Makefile Wed Oct 20 19:07:27 2004 -+++ logrotate-3.7/Makefile Wed Oct 20 19:07:42 2004 ++++ logrotate-3.7.1/Makefile Wed Oct 20 19:07:42 2004 @@ -1,5 +1,4 @@ VERSION = $(shell awk '/Version:/ { print $$2 }' logrotate.spec) -CVSROOT = $(shell cat CVS/Root) diff --git a/sysutils/logrotate/files/patch-aa b/sysutils/logrotate/files/patch-aa index 2457e3576375..fd36cd706734 100644 --- a/sysutils/logrotate/files/patch-aa +++ b/sysutils/logrotate/files/patch-aa @@ -1,25 +1,16 @@ diff -ruN logrotate-3.7-orig/config.c logrotate-3.7/config.c ---- logrotate-3.7-orig/config.c Mon Sep 22 21:11:12 2003 -+++ logrotate-3.7/config.c Mon May 24 08:09:39 2004 +--- logrotate-3.7.1-orig/config.c Mon Sep 22 21:11:12 2003 ++++ logrotate-3.7.1/config.c Mon May 24 08:09:39 2004 @@ -1,4 +1,3 @@ -#include <alloca.h> #include <ctype.h> #include <dirent.h> #include <errno.h> diff -ruN logrotate-3.7-orig/logrotate.c logrotate-3.7/logrotate.c ---- logrotate-3.7-orig/logrotate.c Thu Feb 5 19:42:13 2004 -+++ logrotate-3.7/logrotate.c Tue Jun 15 17:35:48 2004 +--- logrotate-3.7.1-orig/logrotate.c Thu Feb 5 19:42:13 2004 ++++ logrotate-3.7.1/logrotate.c Tue Jun 15 17:35:48 2004 @@ -1,4 +1,3 @@ -#include <alloca.h> #include <ctype.h> #include <dirent.h> #include <errno.h> -@@ -110,7 +109,7 @@ - close(fd); - - if (!fork()) { -- execlp(filespec, logfn, NULL); -+ execlp(filespec, filespec, logfn, NULL); - exit(1); - } - diff --git a/sysutils/logrotate/files/patch-config.h b/sysutils/logrotate/files/patch-config.h index ad69a7affcb9..bca6ddbeb6d1 100644 --- a/sysutils/logrotate/files/patch-config.h +++ b/sysutils/logrotate/files/patch-config.h @@ -1,6 +1,6 @@ diff -ruN logrotate-3.7-orig/config.h logrotate-3.7/config.h --- logrotate-3.7-orig/config.h Mon Sep 22 21:11:12 2003 -+++ logrotate-3.7/config.h Mon May 24 08:05:29 2004 ++++ logrotate-3.7.1/config.h Mon May 24 08:05:29 2004 @@ -16,6 +16,13 @@ #define STATEFILE "/var/log/logrotate.status" #endif @@ -9,7 +9,7 @@ diff -ruN logrotate-3.7-orig/config.h logrotate-3.7/config.h + #define DEFAULT_MAIL_COMMAND "/usr/bin/mailx -s" + #define COMPRESS_COMMAND "/usr/bin/gzip" + #define UNCOMPRESS_COMMAND "/usr/bin/gunzip" -+ #define STATEFILE "/var/lib/logrotate.status" ++ #define STATEFILE "/var/log/logrotate.status" +#endif + /* diff --git a/sysutils/logrotate/files/patch-dateext b/sysutils/logrotate/files/patch-dateext new file mode 100644 index 000000000000..69d1dbdef51a --- /dev/null +++ b/sysutils/logrotate/files/patch-dateext @@ -0,0 +1,414 @@ +--- logrotate-3.7.1/logrotate.h.dateext 2003-08-07 13:13:14.000000000 +0200 ++++ logrotate-3.7.1/logrotate.h 2005-05-03 14:17:28.732914132 +0200 +@@ -15,6 +15,7 @@ + #define LOG_FLAG_MAILFIRST (1 << 6) + #define LOG_FLAG_SHAREDSCRIPTS (1 << 7) + #define LOG_FLAG_COPY (1 << 8) ++#define LOG_FLAG_DATEEXT (1 << 9) + + #define NO_FORCE_ROTATE 0 + #define FORCE_ROTATE 1 +--- logrotate-3.7.1/logrotate.c.dateext 2005-05-03 14:17:28.730914415 +0200 ++++ logrotate-3.7.1/logrotate.c 2005-05-03 14:31:29.916899912 +0200 +@@ -11,6 +11,7 @@ + #include <sys/wait.h> + #include <time.h> + #include <unistd.h> ++#include <glob.h> + + #ifdef WITH_SELINUX + #include <selinux/selinux.h> +@@ -23,6 +24,10 @@ + #include "log.h" + #include "logrotate.h" + ++#if !defined(GLOB_ABORTED) && defined(GLOB_ABEND) ++#define GLOB_ABORTED GLOB_ABEND ++#endif ++ + typedef struct { + char * fn; + struct tm lastRotated; /* only tm.mon, tm_mday, tm_year are good! */ +@@ -43,6 +48,14 @@ + char * mailCommand = DEFAULT_MAIL_COMMAND; + time_t nowSecs = 0; + ++static int globerr(const char * pathname, int theerr) { ++ message(MESS_ERROR, "error accessing %s: %s\n", pathname, ++ strerror(theerr)); ++ ++ /* We want the glob operation to continue, so return 0 */ ++ return 1; ++} ++ + static logState * findState(const char * fn, struct stateSet * sip) { + int i; + logState * states = sip->states; +@@ -93,6 +106,17 @@ + return rc; + } + ++static int removeLogFile(char * name) { ++ message(MESS_DEBUG, "removing old log %s\n", name); ++ ++ if (!debug && unlink(name)) { ++ message(MESS_ERROR, "Failed to remove old log %s: %s\n", ++ name, strerror(errno)); ++ return 1; ++ } ++ return 0; ++} ++ + static int compressLogFile(char * name, logInfo * log, struct stat *sb) { + char * compressedName; + const char ** fullCommand; +@@ -237,6 +261,25 @@ + return rc; + } + ++static int mailLogWrapper (char * mailFilename, char * mailCommand, int logNum, logInfo * log) { ++ /* if the log is compressed (and we're not mailing a ++ * file whose compression has been delayed), we need ++ * to uncompress it */ ++ if ((log->flags & LOG_FLAG_COMPRESS) && ++ !((log->flags & LOG_FLAG_DELAYCOMPRESS) && ++ (log->flags & LOG_FLAG_MAILFIRST))) { ++ if (mailLog(mailFilename, mailCommand, ++ log->uncompress_prog, log->logAddress, ++ log->files[logNum])) ++ return 1; ++ } else { ++ if (mailLog(mailFilename, mailCommand, NULL, ++ log->logAddress, mailFilename)) ++ return 1; ++ } ++ return 0; ++} ++ + static int copyTruncate(char * currLog, char * saveLog, struct stat * sb, int flags) { + char buf[BUFSIZ]; + int fdcurr = -1, fdsave = -1; +@@ -456,6 +499,9 @@ + char * baseName; + char * dirName; + char * firstRotated; ++ char * glob_pattern; ++ glob_t globResult; ++ int rc; + size_t alloc_size; + int rotateCount = log->rotateCount ? log->rotateCount : 1; + int logStart = (log->logStart == -1) ? 1 : log->logStart; +@@ -486,7 +532,7 @@ + + alloc_size = strlen(dirName) + strlen(baseName) + + strlen(log->files[logNum]) + strlen(fileext) + +- strlen(compext) + 10; ++ strlen(compext) + 18; + + oldName = alloca(alloc_size); + newName = alloca(alloc_size); +@@ -508,25 +554,106 @@ + /* First compress the previous log when necessary */ + if (log->flags & LOG_FLAG_COMPRESS && + log->flags & LOG_FLAG_DELAYCOMPRESS) { +- struct stat sbprev; +- +- sprintf(oldName, "%s/%s.%d%s", dirName, baseName, logStart, fileext); +- if (stat(oldName, &sbprev)) { +- message(MESS_DEBUG, "previous log %s does not exist\n", +- oldName); +- } else { +- hasErrors = compressLogFile(oldName, log, &sbprev); ++ if (log->flags & LOG_FLAG_DATEEXT) { ++ /* glob for uncompressed files with our pattern */ ++ glob_pattern = malloc(strlen(dirName) + strlen(baseName) ++ + strlen(fileext) + 44 ); ++ sprintf(glob_pattern, ++ "%s/%s-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]%s", ++ dirName, baseName, fileext); ++ rc = glob(glob_pattern, 0, globerr, &globResult); ++ if (!rc && globResult.gl_pathc > 0) { ++ for (i = 0; i < globResult.gl_pathc && !hasErrors; i++) { ++ struct stat sbprev; ++ ++ sprintf(oldName,"%s",(globResult.gl_pathv)[i]); ++ if (stat(oldName, &sbprev)) { ++ message(MESS_DEBUG, "previous log %s does not exist\n", ++ oldName); ++ } else { ++ hasErrors = compressLogFile(oldName, log, &sbprev); ++ } ++ } ++ } else { ++ message (MESS_DEBUG, "glob finding logs to compress failed\n"); ++ /* fallback to old behaviour */ ++ sprintf(oldName, "%s/%s.%d%s", dirName, baseName, logStart, fileext); ++ } ++ globfree(&globResult); ++ free(glob_pattern); ++ } else { ++ struct stat sbprev; ++ ++ sprintf(oldName, "%s/%s.%d%s", dirName, baseName, logStart, fileext); ++ if (stat(oldName, &sbprev)) { ++ message(MESS_DEBUG, "previous log %s does not exist\n", ++ oldName); ++ } else { ++ hasErrors = compressLogFile(oldName, log, &sbprev); ++ } + } + } + ++ firstRotated = alloca(strlen(dirName) + strlen(baseName) + ++ strlen(fileext) + strlen(compext) + 30); ++ ++ if(log->flags & LOG_FLAG_DATEEXT) { ++ /* glob for compressed files with our pattern ++ * and compress ext */ ++ glob_pattern = malloc(strlen(dirName)+strlen(baseName) ++ +strlen(fileext)+strlen(compext)+44); ++ sprintf(glob_pattern, ++ "%s/%s-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]%s%s", ++ dirName, baseName, fileext, compext); ++ rc = glob(glob_pattern, 0, globerr, &globResult); ++ if (!rc) { ++ /* search for files to drop, if we find one remember it, ++ * if we find another one mail and remove the first and ++ * remember the second and so on */ ++ struct stat fst_buf; ++ int mail_out = -1; ++ /* remove the first (n - rotateCount) matches ++ * no real rotation needed, since the files have ++ * the date in their name */ ++ for (i = 0; i < globResult.gl_pathc; i++) { ++ if( !stat((globResult.gl_pathv)[i],&fst_buf) ) { ++ if (i <= ((int)globResult.gl_pathc - rotateCount)) { ++ if ( mail_out != -1 ) { ++ if (!hasErrors && log->logAddress) { ++ char * mailFilename = (globResult.gl_pathv)[mail_out]; ++ hasErrors = mailLogWrapper(mailFilename, mailCommand, logNum, log); ++ if (!hasErrors) ++ hasErrors = removeLogFile(mailFilename); ++ } ++ } ++ mail_out = i; ++ } ++ } ++ } ++ if ( mail_out != -1 ) { ++ /* oldName is oldest Backup found (for unlink later) */ ++ sprintf(oldName, "%s", (globResult.gl_pathv)[mail_out]); ++ strcpy(disposeName, oldName); ++ } else ++ disposeName = NULL; ++ } else { ++ message (MESS_DEBUG, "glob finding old rotated logs failed\n"); ++ disposeName = NULL; ++ } ++ /* firstRotated is most recently created/compressed rotated log */ ++ sprintf(firstRotated, "%s/%s-%04d%02d%02d%s%s", ++ dirName, baseName, now.tm_year+1900, ++ now.tm_mon+1, now.tm_mday, fileext, compext); ++ globfree(&globResult); ++ free(glob_pattern); ++ } else { ++ + sprintf(oldName, "%s/%s.%d%s%s", dirName, baseName, + logStart + rotateCount, fileext, compext); + strcpy(newName, oldName); + + strcpy(disposeName, oldName); + +- firstRotated = alloca(strlen(dirName) + strlen(baseName) + +- strlen(fileext) + strlen(compext) + 30); + sprintf(firstRotated, "%s/%s.%d%s%s", dirName, baseName, + logStart, fileext, + (log->flags & LOG_FLAG_DELAYCOMPRESS) ? "" : compext); +@@ -582,12 +709,27 @@ + hasErrors = 1; + } + } +- } +- ++ } ++ } /* !LOG_FLAG_DATEEXT */ ++ + finalName = oldName; + +- /* note: the gzip extension is *not* used here! */ +- sprintf(finalName, "%s/%s.%d%s", dirName, baseName, logStart, fileext); ++ if(log->flags & LOG_FLAG_DATEEXT) { ++ char * destFile = alloca(strlen(dirName) + strlen(baseName) + ++ strlen(fileext) + strlen(compext) + 30); ++ struct stat fst_buf; ++ sprintf(finalName, "%s/%s-%04d%02d%02d%s", ++ dirName, baseName, now.tm_year+1900, ++ now.tm_mon+1, now.tm_mday, fileext); ++ sprintf(destFile, "%s%s", finalName, compext); ++ if(!stat(destFile,&fst_buf)) { ++ message (MESS_DEBUG, "destination %s already exists, skipping rotation\n", firstRotated); ++ hasErrors = 1; ++ } ++ } else { ++ /* note: the gzip extension is *not* used here! */ ++ sprintf(finalName, "%s/%s.%d%s", dirName, baseName, logStart, fileext); ++ } + + /* if the last rotation doesn't exist, that's okay */ + if (!debug && access(disposeName, F_OK)) { +@@ -596,9 +738,6 @@ + disposeName = NULL; + } + +- free(dirName); +- free(baseName); +- + if (!hasErrors) { + if (log->pre && !(log->flags & LOG_FLAG_SHAREDSCRIPTS)) { + message(MESS_DEBUG, "running prerotate script\n"); +@@ -744,6 +883,8 @@ + } + } + #endif ++ free(dirName); ++ free(baseName); + return hasErrors; + } + +--- logrotate-3.7.1/config.c.dateext 2003-08-07 13:13:14.000000000 +0200 ++++ logrotate-3.7.1/config.c 2005-05-03 14:17:28.734913850 +0200 +@@ -511,6 +511,14 @@ + newlog->flags &= ~LOG_FLAG_IFEMPTY; + + *endtag = oldchar, start = endtag; ++ } else if (!strcmp(start, "dateext")) { ++ newlog->flags |= LOG_FLAG_DATEEXT; ++ ++ *endtag = oldchar, start = endtag; ++ } else if (!strcmp(start, "nodateext")) { ++ newlog->flags &= ~LOG_FLAG_DATEEXT; ++ ++ *endtag = oldchar, start = endtag; + } else if (!strcmp(start, "noolddir")) { + newlog->oldDir = NULL; + +--- logrotate-3.7.1/logrotate.8.dateext 2005-05-03 14:17:28.722915545 +0200 ++++ logrotate-3.7.1/logrotate.8 2005-05-03 14:17:28.735913708 +0200 +@@ -205,6 +205,11 @@ + Log files are rotated every day. + + .TP ++\fBdateext\fR ++Archive old versions of log files adding a daily extension like YYYYMMDD ++instead of simply adding a number. ++ ++.TP + \fBdelaycompress\fR + Postpone compression of the previous log file to the next rotation cycle. + This has only effect when used in combination with \fBcompress\fR. + +logrotate-3.7.1-maxage.patch: + config.c | 15 +++++++++++++++ + logrotate.8 | 6 ++++++ + logrotate.c | 25 +++++++++++++++++++++++-- + logrotate.h | 1 + + 4 files changed, 45 insertions(+), 2 deletions(-) + +--- NEW FILE logrotate-3.7.1-maxage.patch --- +--- logrotate-3.7.1/logrotate.c.maxage 2005-05-03 14:46:08.154599467 +0200 ++++ logrotate-3.7.1/logrotate.c 2005-05-03 14:50:43.707983574 +0200 +@@ -617,7 +617,10 @@ + * the date in their name */ + for (i = 0; i < globResult.gl_pathc; i++) { + if( !stat((globResult.gl_pathv)[i],&fst_buf) ) { +- if (i <= ((int)globResult.gl_pathc - rotateCount)) { ++ if ((i <= ((int)globResult.gl_pathc - rotateCount)) ++ || ((log->rotateAge > 0) ++ && (((nowSecs - fst_buf.st_mtime)/60/60/24) ++ > log->rotateAge))) { + if ( mail_out != -1 ) { + if (!hasErrors && log->logAddress) { + char * mailFilename = (globResult.gl_pathv)[mail_out]; +@@ -647,6 +650,22 @@ + globfree(&globResult); + free(glob_pattern); + } else { ++ if ( log->rotateAge ) { ++ struct stat fst_buf; ++ for (i=1; i <= rotateCount; i++) { ++ sprintf(oldName, "%s/%s.%d%s%s", dirName, baseName, ++ rotateCount + 1, fileext, compext); ++ if(!stat(oldName,&fst_buf) ++ && (((nowSecs - fst_buf.st_mtime)/60/60/24) ++ > log->rotateAge)) { ++ char * mailFilename = (globResult.gl_pathv)[i]; ++ if (!hasErrors && log->logAddress) ++ hasErrors = mailLogWrapper(mailFilename, mailCommand, logNum, log); ++ if (!hasErrors) ++ hasErrors = removeLogFile(mailFilename); ++ } ++ } ++ } + + sprintf(oldName, "%s/%s.%d%s%s", dirName, baseName, + logStart + rotateCount, fileext, compext); +@@ -1171,7 +1190,9 @@ + + int main(int argc, const char ** argv) { + logInfo defConfig = { NULL, NULL, 0, NULL, ROT_SIZE, +- /* threshHold */ 1024 * 1024, 0, ++ /* threshHold */ 1024 * 1024, ++ /* rotateCount */ 0, ++ /* rotateAge */ 0, + /* log start */ -1, + /* pre, post */ NULL, NULL, + /* first, last */ NULL, NULL, +--- logrotate-3.7.1/logrotate.h.maxage 2005-05-03 14:51:33.207865757 +0200 ++++ logrotate-3.7.1/logrotate.h 2005-05-03 14:51:58.732195346 +0200 +@@ -35,6 +35,7 @@ + enum { ROT_DAYS, ROT_WEEKLY, ROT_MONTHLY, ROT_SIZE, ROT_FORCE } criterium; + unsigned int threshhold; + int rotateCount; ++ int rotateAge; + int logStart; + char * pre, * post, * first, * last; + char * logAddress; +--- logrotate-3.7.1/config.c.maxage 2005-05-03 14:39:35.690020183 +0200 ++++ logrotate-3.7.1/config.c 2005-05-03 14:40:33.429711948 +0200 +@@ -678,6 +678,21 @@ + } + *endtag = oldchar, start = endtag; + } ++ } else if (!strcmp(start, "maxage")) { ++ *endtag = oldchar, start = endtag; ++ ++ if (!isolateValue(configFile, lineNum, "maxage count", &start, ++ &endtag)) { ++ oldchar = *endtag, *endtag = '\0'; ++ ++ newlog->rotateAge = strtoul(start, &chptr, 0); ++ if (*chptr || newlog->rotateAge < 0) { ++ message(MESS_ERROR, "%s:%d bad maximum age '%s'\n", ++ configFile, lineNum, start); ++ return 1; ++ } ++ *endtag = oldchar, start = endtag; ++ } + } else if (!strcmp(start, "errors")) { + message(MESS_DEBUG, "%s: %d: the errors directive is deprecated and no longer used.\n", + configFile, lineNum); +--- logrotate-3.7.1/logrotate.8.maxage 2005-05-03 14:41:55.736877916 +0200 ++++ logrotate-3.7.1/logrotate.8 2005-05-03 14:45:33.464585908 +0200 +@@ -256,6 +256,12 @@ + instead of the just-rotated file (this is the default). + + .TP ++\fBmaxage\fR \fIcount\fR ++Remove rotated logs older than <count> days. The age is only checked ++if the logfile is to be rotated. The files are mailed to the ++configured address if \fBmaillast\fR and \fBmail\fR are configured. ++ ++.TP + \fBmissingok\fR + If the log file is missing, go on to the next one without issuing an error + message. See also \fBnomissingok\fR. |