Projects
openEuler:Mainline
logrotate
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 3
View file
_service:tar_scm:logrotate.spec
Changed
@@ -2,13 +2,15 @@ Name: logrotate Version: 3.20.1 -Release: 1 +Release: 2 Summary: simplify the administration of log files License: GPLv2+ Url: https://github.com/logrotate/logrotate Source0: https://github.com/logrotate/logrotate/releases/download/%{version}/logrotate-%{version}.tar.xz # lockState: do not print `error:` when exit code is unaffected Patch0: 0001-logrotate-3.20.1-lock-state-msg.patch +Patch6001: backport-do-not-rotate-old-logs-on-prerotate-failure.patch + BuildRequires: acl gcc automake libacl-devel libselinux-devel popt-devel Requires: coreutils @@ -75,6 +77,9 @@ %{_mandir}/man5/logrotate.conf.5* %changelog +* Mon Jun 5 2023 hanhuihui <hanhuihui5@huawei.com> - 3.20.1-2 +- do not rotate old logs on prerotate failure + * Fri Jun 10 2022 duyiwei <duyiwei@kylinos.cn> - 3.20.1-1 - upgrade version to 3.20.1 and fix CVE-2022-1348
View file
_service:tar_scm:backport-do-not-rotate-old-logs-on-prerotate-failure.patch
Added
@@ -0,0 +1,45 @@ +From 5f24239f282b8c6291cf35ea5f871ed0ca6b2672 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= <cgzones@googlemail.com> +Date: Tue, 4 Apr 2023 17:49:06 +0200 +Subject: PATCH do not rotate old logs on prerotate failure + +Ensures old logs are preserved and not rotated out for logs with a +failing prerotate script. + +Alternative to #502 +--- + logrotate.c | 14 ++++++++++---- + 1 files changed, 10 insertions(+), 4 deletions(-) + +diff --git a/logrotate.c b/logrotate.c +index f44b3851..d3ccb447 100644 +--- a/logrotate.c ++++ b/logrotate.c +@@ -2476,10 +2476,6 @@ static int rotateLogSet(const struct logInfo *log, int force) + return 1; + } + memset(rotNamesi, 0, sizeof(struct logNames)); +- +- logHasErrorsi |= +- prerotateSingleLog(log, i, statei, rotNamesi); +- hasErrors |= logHasErrorsi; + } + + if (log->pre +@@ -2509,6 +2505,16 @@ static int rotateLogSet(const struct logInfo *log, int force) + } + } + ++ for (i = j; ++ ((log->flags & LOG_FLAG_SHAREDSCRIPTS) && i < log->numFiles) ++ || (!(log->flags & LOG_FLAG_SHAREDSCRIPTS) && i == j); i++) { ++ if (! ( (logHasErrorsi && !(log->flags & LOG_FLAG_SHAREDSCRIPTS)) ++ || (hasErrors && (log->flags & LOG_FLAG_SHAREDSCRIPTS)) ) ) { ++ logHasErrorsi |= prerotateSingleLog(log, i, statei, rotNamesi); ++ hasErrors |= logHasErrorsi; ++ } ++ } ++ + for (i = j; + ((log->flags & LOG_FLAG_SHAREDSCRIPTS) && i < log->numFiles) + || (!(log->flags & LOG_FLAG_SHAREDSCRIPTS) && i == j); i++) {
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2