fix #726980 - fixed ACL handling when acl_get_fd is supported,
bug acl_set_fd is not
This commit is contained in:
parent
a6b37c7f6b
commit
b900bcd7bc
97
logrotate-3.8.0-maxsize.patch
Normal file
97
logrotate-3.8.0-maxsize.patch
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
Index: logrotate.c
|
||||||
|
===================================================================
|
||||||
|
--- logrotate.c (revision 336)
|
||||||
|
+++ logrotate.c (working copy)
|
||||||
|
@@ -786,6 +786,8 @@
|
||||||
|
}
|
||||||
|
if (log->minsize && sb.st_size < log->minsize)
|
||||||
|
state->doRotate = 0;
|
||||||
|
+ if (log->maxsize && sb.st_size > log->maxsize)
|
||||||
|
+ state->doRotate = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The notifempty flag overrides the normal criteria */
|
||||||
|
@@ -1465,6 +1467,9 @@
|
||||||
|
if (log->minsize)
|
||||||
|
message(MESS_DEBUG, "only log files >= %llu bytes are rotated, ", log->minsize);
|
||||||
|
|
||||||
|
+ if (log->maxsize)
|
||||||
|
+ message(MESS_DEBUG, "log files >= %llu are rotated earlier, ", log->minsize);
|
||||||
|
+
|
||||||
|
if (log->logAddress) {
|
||||||
|
message(MESS_DEBUG, "old logs mailed to %s\n", log->logAddress);
|
||||||
|
} else {
|
||||||
|
Index: logrotate.h
|
||||||
|
===================================================================
|
||||||
|
--- logrotate.h (revision 336)
|
||||||
|
+++ logrotate.h (working copy)
|
||||||
|
@@ -36,6 +36,7 @@
|
||||||
|
enum { ROT_DAYS, ROT_WEEKLY, ROT_MONTHLY, ROT_YEARLY, ROT_SIZE,
|
||||||
|
ROT_FORCE } criterium;
|
||||||
|
unsigned long long threshhold;
|
||||||
|
+ unsigned long long maxsize;
|
||||||
|
unsigned long long minsize;
|
||||||
|
int rotateCount;
|
||||||
|
int rotateAge;
|
||||||
|
Index: config.c
|
||||||
|
===================================================================
|
||||||
|
--- config.c (revision 336)
|
||||||
|
+++ config.c (working copy)
|
||||||
|
@@ -290,6 +290,7 @@
|
||||||
|
to->criterium = from->criterium;
|
||||||
|
to->threshhold = from->threshhold;
|
||||||
|
to->minsize = from->minsize;
|
||||||
|
+ to->maxsize = from->maxsize;
|
||||||
|
to->rotateCount = from->rotateCount;
|
||||||
|
to->rotateAge = from->rotateAge;
|
||||||
|
to->logStart = from->logStart;
|
||||||
|
@@ -504,6 +505,7 @@
|
||||||
|
.criterium = ROT_SIZE,
|
||||||
|
.threshhold = 1024 * 1024,
|
||||||
|
.minsize = 0,
|
||||||
|
+ .maxsize = 0,
|
||||||
|
.rotateCount = 0,
|
||||||
|
.rotateAge = 0,
|
||||||
|
.logStart = -1,
|
||||||
|
@@ -885,7 +887,8 @@
|
||||||
|
newlog->flags |= LOG_FLAG_CREATE;
|
||||||
|
} else if (!strcmp(key, "nocreate")) {
|
||||||
|
newlog->flags &= ~LOG_FLAG_CREATE;
|
||||||
|
- } else if (!strcmp(key, "size") || !strcmp(key, "minsize")) {
|
||||||
|
+ } else if (!strcmp(key, "size") || !strcmp(key, "minsize") ||
|
||||||
|
+ !strcmp(key, "maxsize")) {
|
||||||
|
unsigned long long size = 0;
|
||||||
|
char *opt = key;
|
||||||
|
|
||||||
|
@@ -930,6 +933,8 @@
|
||||||
|
if (!strncmp(opt, "size", 4)) {
|
||||||
|
newlog->criterium = ROT_SIZE;
|
||||||
|
newlog->threshhold = size;
|
||||||
|
+ } else if (!strncmp(opt, "maxsize", 7)) {
|
||||||
|
+ newlog->maxsize = size;
|
||||||
|
} else {
|
||||||
|
newlog->minsize = size;
|
||||||
|
}
|
||||||
|
Index: logrotate.8
|
||||||
|
===================================================================
|
||||||
|
--- logrotate.8 (revision 336)
|
||||||
|
+++ logrotate.8 (working copy)
|
||||||
|
@@ -285,7 +285,17 @@
|
||||||
|
configured address if \fBmaillast\fR and \fBmail\fR are configured.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
-\fBminsize\fR \fIsize\fR
|
||||||
|
+\fBmaxsize\fR \fIsize\fR
|
||||||
|
+Log files are rotated when they grow bigger than \fIsize\fR bytes even
|
||||||
|
+before the additionally specified time interval (\fBdaily\fR, \fBweekly\fR,
|
||||||
|
+\fBmonthly\fR, or \fByearly\fR). The related \fBsize\fR option is similar
|
||||||
|
+except that it is mutually exclusive with the time interval options, and it
|
||||||
|
+causes log files to be rotated without regard for the last rotation time.
|
||||||
|
+When \fBmaxsize\fR is used, both the size and timestamp of a log file are
|
||||||
|
+considered.
|
||||||
|
+
|
||||||
|
+.TP
|
||||||
|
+\fBminsize\fR \fIsize\fR
|
||||||
|
Log files are rotated when they grow bigger than \fIsize\fR bytes, but not
|
||||||
|
before the additionally specified time interval (\fBdaily\fR, \fBweekly\fR,
|
||||||
|
\fBmonthly\fR, or \fByearly\fR). The related \fBsize\fR option is similar
|
@ -1,7 +1,7 @@
|
|||||||
Summary: Rotates, compresses, removes and mails system log files
|
Summary: Rotates, compresses, removes and mails system log files
|
||||||
Name: logrotate
|
Name: logrotate
|
||||||
Version: 3.8.0
|
Version: 3.8.0
|
||||||
Release: 4%{?dist}
|
Release: 5%{?dist}
|
||||||
License: GPL+
|
License: GPL+
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
Url: https://fedorahosted.org/logrotate/
|
Url: https://fedorahosted.org/logrotate/
|
||||||
@ -9,6 +9,7 @@ Source: https://fedorahosted.org/releases/l/o/logrotate/logrotate-%{version}.tar
|
|||||||
Patch0: logrotate-3.8.0-no-cron-redirection.patch
|
Patch0: logrotate-3.8.0-no-cron-redirection.patch
|
||||||
Patch1: logrotate-3.8.0-rot-size.patch
|
Patch1: logrotate-3.8.0-rot-size.patch
|
||||||
Patch2: logrotate-3.8.0-handle-acl-not-supported.patch
|
Patch2: logrotate-3.8.0-handle-acl-not-supported.patch
|
||||||
|
Patch3: logrotate-3.8.0-maxsize.patch
|
||||||
|
|
||||||
Requires: coreutils >= 5.92 libsepol libselinux popt libacl
|
Requires: coreutils >= 5.92 libsepol libselinux popt libacl
|
||||||
BuildRequires: libselinux-devel popt-devel libacl-devel
|
BuildRequires: libselinux-devel popt-devel libacl-devel
|
||||||
@ -31,6 +32,7 @@ log files on your system.
|
|||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
%patch2
|
%patch2
|
||||||
|
%patch3
|
||||||
|
|
||||||
%build
|
%build
|
||||||
make %{?_smp_mflags} RPM_OPT_FLAGS="$RPM_OPT_FLAGS" WITH_SELINUX=yes WITH_ACL=yes
|
make %{?_smp_mflags} RPM_OPT_FLAGS="$RPM_OPT_FLAGS" WITH_SELINUX=yes WITH_ACL=yes
|
||||||
@ -61,6 +63,9 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%attr(0644, root, root) %verify(not size md5 mtime) %config(noreplace) %{_localstatedir}/lib/logrotate.status
|
%attr(0644, root, root) %verify(not size md5 mtime) %config(noreplace) %{_localstatedir}/lib/logrotate.status
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Aug 08 2011 Jan Kaluza <jkaluza@redhat.com> 3.8.0-5
|
||||||
|
- fix #723797 - added maxsize option
|
||||||
|
|
||||||
* Wed Aug 01 2011 Jan Kaluza <jkaluza@redhat.com> 3.8.0-4
|
* Wed Aug 01 2011 Jan Kaluza <jkaluza@redhat.com> 3.8.0-4
|
||||||
- fix #726980 - work properly when acl_get_fd is supported,
|
- fix #726980 - work properly when acl_get_fd is supported,
|
||||||
but acl_set_fd is not
|
but acl_set_fd is not
|
||||||
|
Loading…
Reference in New Issue
Block a user