Skip to content

Releases: logrotate/logrotate

logrotate-3.21.0

13 Dec 17:34
3.21.0
Compare
Choose a tag to compare
  • add ignoreduplicates directive to allow duplicate file matches (#473)
  • add --wait-for-state-lock option to wait for lock on the state file (#457)
  • avoid failure when an anonymous non-privileged user runs logrotate (#463)
  • support home dir expansion in olddir (#454)
  • reduce unnecessary rename operations with start N where N > 1 (#450)
  • unify handling of log levels (#239 #449)
  • do not print error: when exit code is unaffected (#448)

logrotate-3.20.1

25 May 15:29
3.20.1
Compare
Choose a tag to compare
  • drop world-readable permission on state file even when ACLs are enabled (#446)

logrotate-3.20.0

25 May 07:12
3.20.0
Compare
Choose a tag to compare
  • fix potential DoS from unprivileged users via the state file (CVE-2022-1348)
  • fix a misleading debug message with copytruncate and rotate 0 (#443)
  • add support for unsigned time_t (#438)
  • do not lock state file /dev/null (#433)

logrotate-3.19.0

07 Jan 09:04
3.19.0
Compare
Choose a tag to compare
  • continue on EINTR in compressLogFile() (#430)
  • enforce stricter parsing of configuration files (#427, #431)
  • avoid confusing error message in debug mode (#426)
  • fix full_write() on incomplete write (#415)
  • do not use alloca() any more (#412)
  • do not rotate hard links unless allowhardlink is used (#407)
  • change directory after dropping privileges (#397)
  • add defence in depth when dropping privileges (#400)
  • remove invalid configuration on error (#408)
  • do not open symbolic link log files by accident (#399)
  • do not write state if state file is /dev/null (#395)

logrotate-3.18.1

21 May 13:39
3.18.1
Compare
Choose a tag to compare
  • fix memory leaks on error-handling paths (#383, #387)
  • make renamecopy and copytruncate override each other (#386)
  • improve error handling in the parser of configuration files (#383)
  • improve user experience for non-privileged users of logrotate (#372)

logrotate-3.18.0

08 Jan 07:35
3.18.0
Compare
Choose a tag to compare
  • allow UIDs and GIDs to be specified numerically (#217)
  • add support for Zstandard compressed files (#355)
  • make delaycompress not to fail with rotate 0 (#341)

logrotate-3.17.0

10 Jul 09:06
3.17.0
Compare
Choose a tag to compare
  • lock state file to prevent parallel execution of logrotate (#295, #297)
  • add .bak extension to default taboo list (#332)
  • allow to pass a home-relative path to include (#322, #326)
  • switch_user_permanently: skip switchback check if switched to root (#319)
  • logrotate.service: enable ProtectClock to restrict setting of clock (#306)
  • delete old logs hit by maxage regardless of dateext (#301)

logrotate-3.16.0

28 Feb 12:11
3.16.0
Compare
Choose a tag to compare
  • fix compilation with gcc-10, which defaults to -fno-common (#288)
  • reduce number of open() operations on state file (#282)
  • validate user/group given to the su directive early (#276)
  • add hardening options to systemd unit file in examples (#274, #291)
  • fix crash of logrotate on invalid configuration with include (#271)
  • fix heap buffer overflow on too long logfile extension (#270)

logrotate-3.15.1

30 Aug 13:32
3.15.1
Compare
Choose a tag to compare
  • use correct create mode in examples/btmp (#257)
  • fix several bugs found by fuzzing (#254)
  • do not abort globbing on a broken symlink (#251)
  • rearrange logrotate.8 man page to improve readability (#248)
  • encourage admins to use the su directive in logrotate.8 man page (#236)

logrotate-3.15.0

04 Dec 15:10
3.15.0
Compare
Choose a tag to compare
  • timer unit: change trigger fuzz from 12h to 1h (#230)
  • service unit: only run if /var/log is mounted (#230)
  • preserve fractional part of timestamps when compressing (#226)
  • re-indent source code using spaces only (#188)
  • minage: avoid rounding issue while comparing the amount of seconds (#36)
  • never remove old log files if rotate -1 is specified (#202)
  • return non-zero exit status if a config file contains an error (#199)
  • make copytruncate work with rotate 0 (#191)
  • warn user if both size and the time interval options are used (#192)
  • pass rotated log file name as the 2nd argument of the postrotate script when sharedscript is not enabled (#193)
  • rename logrotate-default to logrotate.conf (#187)