-DIST logrotate-3.8.8.tar.gz 72014 SHA256 46a1510ef4a1f4359edd5f361112cfd1523942e85ff28e6cbb0c81bad1829d0f SHA512 2b7b5fe587b3a5cbe98b8035a541b5e272e6e4c40669f65ff6c43d1524b686eca9abc0b93bc00c8eb6da4d189f14a9b79905fcc0fadb914276d884ad7493bb4b WHIRLPOOL b145d51cdcf0214e4f4b6a97aed7b9e1375c2848efecbc16181eaa6e1105ac8892c57248c89b92eb080d6cd6b23958085f39a894df7f5dce0bea6516e2d583c4
DIST logrotate-3.8.9.tar.gz 77408 SHA256 700ed7ce9072a1cca324779a74797dfaefdae37ac50a817134b947c4ded1dfa7 SHA512 342533f321a1d77c0ca389fd0a393377ba73f10654aae163cbd35f8d5df25673f1aa6e44d0af42be5419d152a7dae11024d9005076bce0a3b3dad1f0e12b9c0d WHIRLPOOL 005621b5dc7f6954e505876eece76e3adf03b9b89b724e5c28b845c8af3ebb8e978d20e3a82c8a503c32bfd8758517625207e23518d6d08068e237c22fe7212d
DIST logrotate-3.9.1.tar.gz 79061 SHA256 022769e3288c80981559a8421703c88e8438b447235e36dd3c8e97cd94c52545 SHA512 e6da7c7f067befaf2441e9c6ce77e53cf5ddb4f56cc3304c3e50873b6f20c68520f4a0e50ec466cbebcbed20bfd77bf6dfc489975a8131e9573fb19856c0fe28 WHIRLPOOL 9b3558bb03c6c95f8f386ea75ca09bfda802ae4c45b9ef8408692e3aa7a2ee57447cf15ce04d0289946b9cae2266acb5509d8151d15ac6ea0ad9113aeb32dc17
+++ /dev/null
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,7 +1,7 @@
- MAN = logrotate.8
- MAN5 = logrotate.conf.5
-
--AM_CFLAGS = -Wall -Werror
-+AM_CFLAGS = -Wall
- sbin_PROGRAMS = logrotate
- logrotate_SOURCES = logrotate.c log.c config.c basenames.c
-
+++ /dev/null
-diff -Nuar a/logrotate.c b/logrotate.c
---- a/logrotate.c 2014-10-16 13:12:35.000000000 +0200
-+++ b/logrotate.c 2014-11-04 20:26:46.080067315 +0100
-@@ -359,15 +359,20 @@
- int createOutputFile(char *fileName, int flags, struct stat *sb, acl_type acl, int force_mode)
- {
- int fd;
-- struct stat sb_create;
-- int acl_set = 0;
--
-- fd = open(fileName, (flags | O_EXCL | O_NOFOLLOW),
-- (S_IRUSR | S_IWUSR) & sb->st_mode);
-+ int acl_set = 0;
-+ struct stat sb_create;
-+ char template[PATH_MAX + 1];
-+ char *fname;
-+ mode_t umask_value;
-+ snprintf(template, PATH_MAX, "%s/logrotate_temp.XXXXXX", ourDirName(fileName));
-+ umask_value = umask(0000);
-+ fname = mktemp(template);
-+ fd = open(fname, (flags | O_EXCL | O_NOFOLLOW), (S_IRUSR | S_IWUSR) & sb->st_mode);
-+ umask(umask_value);
-
- if (fd < 0) {
-- message(MESS_ERROR, "error creating output file %s: %s\n",
-- fileName, strerror(errno));
-+ message(MESS_ERROR, "error creating unique temp file: %s\n",
-+ strerror(errno));
- return -1;
- }
- if (fchmod(fd, (S_IRUSR | S_IWUSR) & sb->st_mode)) {
-@@ -418,6 +423,13 @@
- }
- }
-
-+ if (rename(template, fileName)) {
-+ message(MESS_ERROR, "error renaming temp file to %s: %s\n",
-+ fileName, strerror(errno));
-+ close(fd);
-+ return -1;
-+ }
-+
- return fd;
- }
-
+++ /dev/null
-diff -Nuar a/config.c b/config.c
---- a/config.c 2014-10-16 13:12:35.000000000 +0200
-+++ b/config.c 2014-11-04 19:22:31.750055957 +0100
-@@ -1,6 +1,6 @@
- #include <sys/queue.h>
- /* Alloca is defined in stdlib.h in NetBSD */
--#ifndef __NetBSD__
-+#if !defined(__NetBSD__) && !defined(__FreeBSD__)
- #include <alloca.h>
- #endif
- #include <limits.h>
-@@ -24,6 +24,10 @@
- #include <fnmatch.h>
- #include <sys/mman.h>
-
-+#if !defined(PATH_MAX) && defined(__FreeBSD__)
-+#include <sys/param.h>
-+#endif
-+
- #include "basenames.h"
- #include "log.h"
- #include "logrotate.h"
-diff -Nuar a/logrotate.c b/logrotate.c
---- a/logrotate.c 2014-10-16 13:12:35.000000000 +0200
-+++ b/logrotate.c 2014-11-04 19:25:35.440056498 +0100
-@@ -1,6 +1,6 @@
- #include <sys/queue.h>
- /* alloca() is defined in stdlib.h in NetBSD */
--#ifndef __NetBSD__
-+#if !defined(__NetBSD__) && !defined(__FreeBSD__)
- #include <alloca.h>
- #endif
- #include <limits.h>
-@@ -25,6 +25,10 @@
- #include <limits.h>
- #endif
-
-+#if !defined(PATH_MAX) && defined(__FreeBSD__)
-+#include <sys/param.h>
-+#endif
-+
- #include "basenames.h"
- #include "log.h"
- #include "logrotate.h"
-diff -Nuar a/Makefile b/Makefile
---- a/Makefile 2014-10-16 13:12:35.000000000 +0200
-+++ b/Makefile 2014-11-04 19:26:07.850056594 +0100
-@@ -22,7 +22,9 @@
-
- ifeq ($(WITH_ACL),yes)
- CFLAGS += -DWITH_ACL
-+ifneq ($(OS_NAME),FreeBSD)
- LOADLIBES += -lacl
-+endif
- # See pretest
- TEST_ACL=1
- else
+++ /dev/null
-diff -Nuar a/config.c b/config.c
---- a/config.c 2014-10-16 13:12:35.000000000 +0200
-+++ b/config.c 2014-11-04 19:19:55.200055496 +0100
-@@ -255,7 +255,9 @@
- char *pattern;
-
- /* Check if fname is '.' or '..'; if so, return false */
-- if (fname[0] == '.' && (!fname[1] || (fname[1] == '.' && !fname[2])))
-+ /* Don't include 'hidden' files either; this breaks Gentoo
-+ portage config file management http://bugs.gentoo.org/87683 */
-+ if (fname[0] == '.')
- return 0;
-
- /* Check if fname is ending in a taboo-extension; if so, return false */
+++ /dev/null
-diff -Nuar a/config.c b/config.c
---- a/config.c 2014-10-16 13:12:35.000000000 +0200
-+++ b/config.c 2014-11-04 19:28:58.110057096 +0100
-@@ -45,39 +45,6 @@
- #include "asprintf.c"
- #endif
-
--#if !defined(asprintf) && !defined(_FORTIFY_SOURCE)
--#include <stdarg.h>
--
--int asprintf(char **string_ptr, const char *format, ...)
--{
-- va_list arg;
-- char *str;
-- int size;
-- int rv;
--
-- va_start(arg, format);
-- size = vsnprintf(NULL, 0, format, arg);
-- size++;
-- va_start(arg, format);
-- str = malloc(size);
-- if (str == NULL) {
-- va_end(arg);
-- /*
-- * Strictly speaking, GNU asprintf doesn't do this,
-- * but the caller isn't checking the return value.
-- */
-- fprintf(stderr, "failed to allocate memory\\n");
-- exit(1);
-- }
-- rv = vsnprintf(str, size, format, arg);
-- va_end(arg);
--
-- *string_ptr = str;
-- return (rv);
--}
--
--#endif
--
- #if !defined(strndup)
- char *strndup(const char *s, size_t n)
- {
-diff -Nuar a/logrotate.h b/logrotate.h
---- a/logrotate.h 2014-10-16 13:12:35.000000000 +0200
-+++ b/logrotate.h 2014-11-04 19:29:15.610057147 +0100
-@@ -75,8 +75,5 @@
- extern int debug;
-
- int readAllConfigPaths(const char **paths);
--#if !defined(asprintf) && !defined(_FORTIFY_SOURCE)
--int asprintf(char **string_ptr, const char *format, ...);
--#endif
-
- #endif
+++ /dev/null
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools eutils toolchain-funcs flag-o-matic
-
-DESCRIPTION="Rotates, compresses, and mails system logs"
-HOMEPAGE="https://fedorahosted.org/logrotate/"
-SRC_URI="https://fedorahosted.org/releases/l/o/logrotate/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ~ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
-IUSE="acl selinux"
-
-CDEPEND="
- >=dev-libs/popt-1.5
- selinux? (
- sys-libs/libselinux
- )
- acl? ( virtual/acl )"
-
-DEPEND="${CDEPEND}
- >=sys-apps/sed-4
-"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-logrotate )
-"
-
-src_prepare() {
- epatch \
- "${FILESDIR}"/${P}-ignore-hidden.patch \
- "${FILESDIR}"/${P}-fbsd.patch \
- "${FILESDIR}"/${P}-noasprintf.patch \
- "${FILESDIR}"/${P}-atomic-create.patch \
- "${FILESDIR}"/${P}-Werror.patch
- eautoreconf
-}
-
-src_compile() {
- local myconf
- myconf="CC=$(tc-getCC)"
- use selinux && myconf="${myconf} WITH_SELINUX=yes"
- use acl && myconf="${myconf} WITH_ACL=yes"
- emake ${myconf} RPM_OPT_FLAGS="${CFLAGS}"
-}
-
-src_install() {
- insinto /usr
- dosbin logrotate
- doman logrotate.8
- dodoc CHANGES examples/logrotate*
-
- exeinto /etc/cron.daily
- newexe "${S}"/examples/logrotate.cron "${PN}"
-
- insinto /etc
- doins "${FILESDIR}"/logrotate.conf
-
- keepdir /etc/logrotate.d
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]] ; then
- elog "If you wish to have logrotate e-mail you updates, please"
- elog "emerge virtual/mailx and configure logrotate in"
- elog "/etc/logrotate.conf appropriately"
- elog
- elog "Additionally, /etc/logrotate.conf may need to be modified"
- elog "for your particular needs. See man logrotate for details."
- fi
-}