summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Gryniewicz <dang@gentoo.org>2011-07-18 17:57:34 +0000
committerDaniel Gryniewicz <dang@gentoo.org>2011-07-18 17:57:34 +0000
commit9d07249f333b58dc07961092ae4a0cda362cde6e (patch)
tree0da087d39aa97fe4cdb82aba479a6af45f89611b /app-admin
parentsys-kernel/dracut: Version bump to 011. (diff)
downloadgentoo-2-9d07249f333b58dc07961092ae4a0cda362cde6e.tar.gz
gentoo-2-9d07249f333b58dc07961092ae4a0cda362cde6e.tar.bz2
gentoo-2-9d07249f333b58dc07961092ae4a0cda362cde6e.zip
Fix bug #374407 and bug #374869
(Portage version: 2.2.0_alpha41/cvs/Linux x86_64)
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/logrotate/ChangeLog7
-rw-r--r--app-admin/logrotate/files/logrotate-3.8.0-atomic-create.patch8
-rw-r--r--app-admin/logrotate/files/logrotate-3.8.0-noasprintf.patch55
-rw-r--r--app-admin/logrotate/logrotate-3.8.0.ebuild5
4 files changed, 69 insertions, 6 deletions
diff --git a/app-admin/logrotate/ChangeLog b/app-admin/logrotate/ChangeLog
index 3ed0123067ce..5bb671bd74c5 100644
--- a/app-admin/logrotate/ChangeLog
+++ b/app-admin/logrotate/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for app-admin/logrotate
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-admin/logrotate/ChangeLog,v 1.101 2011/07/08 10:15:59 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-admin/logrotate/ChangeLog,v 1.102 2011/07/18 17:57:34 dang Exp $
+
+ 18 Jul 2011; Daniel Gryniewicz <dang@gentoo.org> logrotate-3.8.0.ebuild,
+ files/logrotate-3.8.0-atomic-create.patch,
+ +files/logrotate-3.8.0-noasprintf.patch:
+ Fix bug #374407 and bug #374869
08 Jul 2011; Samuli Suominen <ssuominen@gentoo.org> logrotate-3.7.8.ebuild,
logrotate-3.7.9.ebuild, logrotate-3.7.9-r1.ebuild, logrotate-3.7.9-r2.ebuild,
diff --git a/app-admin/logrotate/files/logrotate-3.8.0-atomic-create.patch b/app-admin/logrotate/files/logrotate-3.8.0-atomic-create.patch
index 7c61929eb46d..35f409c5d81a 100644
--- a/app-admin/logrotate/files/logrotate-3.8.0-atomic-create.patch
+++ b/app-admin/logrotate/files/logrotate-3.8.0-atomic-create.patch
@@ -1,18 +1,20 @@
diff '--exclude-from=/home/dang/.scripts/diffrc' -up -ruN logrotate-3.8.0.orig/logrotate.c logrotate-3.8.0/logrotate.c
--- logrotate-3.8.0.orig/logrotate.c 2011-06-21 04:12:02.000000000 -0400
-+++ logrotate-3.8.0/logrotate.c 2011-07-06 15:07:28.869307029 -0400
-@@ -260,33 +260,48 @@ static int runScript(char *logfn, char *
++++ logrotate-3.8.0/logrotate.c 2011-07-18 11:40:48.775713520 -0400
+@@ -260,33 +260,50 @@ static int runScript(char *logfn, char *
int createOutputFile(char *fileName, int flags, struct stat *sb)
{
int fd;
+ char template[PATH_MAX + 1];
++ char *fname;
+ mode_t umask_value;
+ snprintf(template, PATH_MAX, "%s/logrotate_temp.XXXXXX", ourDirName(fileName));
- fd = open(fileName, (flags | O_EXCL | O_NOFOLLOW),
- (S_IRUSR | S_IWUSR) & sb->st_mode);
+ umask_value = umask(0000);
-+ fd = mkostemp(template, (flags | O_EXCL | O_NOFOLLOW));
++ fname = mktemp(template);
++ fd = open(fname, (flags | O_EXCL | O_NOFOLLOW), (S_IRUSR | S_IWUSR) & sb->st_mode);
+ umask(umask_value);
- if (fd < 0) {
diff --git a/app-admin/logrotate/files/logrotate-3.8.0-noasprintf.patch b/app-admin/logrotate/files/logrotate-3.8.0-noasprintf.patch
new file mode 100644
index 000000000000..b9464e23084a
--- /dev/null
+++ b/app-admin/logrotate/files/logrotate-3.8.0-noasprintf.patch
@@ -0,0 +1,55 @@
+diff '--exclude-from=/home/dang/.scripts/diffrc' -up -ruN logrotate-3.8.0.orig/config.c logrotate-3.8.0/config.c
+--- logrotate-3.8.0.orig/config.c 2011-06-21 04:12:02.000000000 -0400
++++ logrotate-3.8.0/config.c 2011-07-12 13:47:36.274319050 -0400
+@@ -41,39 +41,6 @@
+ #endif
+ #endif
+
+-#if !defined(asprintf)
+-#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
+-
+ enum {
+ STATE_DEFAULT = 2,
+ STATE_SKIP_LINE = 4,
+diff '--exclude-from=/home/dang/.scripts/diffrc' -up -ruN logrotate-3.8.0.orig/logrotate.h logrotate-3.8.0/logrotate.h
+--- logrotate-3.8.0.orig/logrotate.h 2011-06-21 04:12:02.000000000 -0400
++++ logrotate-3.8.0/logrotate.h 2011-07-12 13:47:38.949285608 -0400
+@@ -66,8 +66,5 @@ extern int numLogs;
+ extern int debug;
+
+ int readAllConfigPaths(const char **paths);
+-#if !defined(asprintf)
+-int asprintf(char **string_ptr, const char *format, ...);
+-#endif
+
+ #endif
diff --git a/app-admin/logrotate/logrotate-3.8.0.ebuild b/app-admin/logrotate/logrotate-3.8.0.ebuild
index e7867c39ee68..1e06598066ec 100644
--- a/app-admin/logrotate/logrotate-3.8.0.ebuild
+++ b/app-admin/logrotate/logrotate-3.8.0.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-admin/logrotate/logrotate-3.8.0.ebuild,v 1.2 2011/07/08 10:15:59 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-admin/logrotate/logrotate-3.8.0.ebuild,v 1.3 2011/07/18 17:57:34 dang Exp $
EAPI="2"
@@ -33,7 +33,8 @@ src_prepare() {
"${FILESDIR}"/${PN}-3.7.7-datehack.patch \
"${FILESDIR}"/${PN}-3.8.0-ignore-hidden.patch \
"${FILESDIR}"/${PN}-3.8.0-fbsd.patch \
- "${FILESDIR}"/${PN}-3.8.0-atomic-create.patch
+ "${FILESDIR}"/${PN}-3.8.0-atomic-create.patch \
+ "${FILESDIR}"/${PN}-3.8.0-noasprintf.patch
}
src_configure() {