summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2006-03-10 00:37:37 +0000
committerMike Frysinger <vapier@gentoo.org>2006-03-10 00:37:37 +0000
commit8891bf91bf7eb1fe0f508c24fc4933c3d4b41734 (patch)
tree049d23b1d94396c1a2f0723832fbed221bfc04ba /app-arch/zoo
parentMark 1.4.0 stable on ia64 (diff)
downloadgentoo-2-8891bf91bf7eb1fe0f508c24fc4933c3d4b41734.tar.gz
gentoo-2-8891bf91bf7eb1fe0f508c24fc4933c3d4b41734.tar.bz2
gentoo-2-8891bf91bf7eb1fe0f508c24fc4933c3d4b41734.zip
Grab a bunch of patches from Fedora and cleanup the sources more.
(Portage version: 2.1_pre5-r4)
Diffstat (limited to 'app-arch/zoo')
-rw-r--r--app-arch/zoo/ChangeLog11
-rw-r--r--app-arch/zoo/files/digest-zoo-2.10-r26
-rw-r--r--app-arch/zoo/files/zoo-2.10-CAN-2005-2349.patch36
-rw-r--r--app-arch/zoo/files/zoo-2.10-febz-183426.patch16
-rw-r--r--app-arch/zoo/files/zoo-2.10-security_pathsize.patch23
-rw-r--r--app-arch/zoo/zoo-2.10-r2.ebuild34
6 files changed, 124 insertions, 2 deletions
diff --git a/app-arch/zoo/ChangeLog b/app-arch/zoo/ChangeLog
index 87e18dba475f..4448b11777af 100644
--- a/app-arch/zoo/ChangeLog
+++ b/app-arch/zoo/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for app-arch/zoo
-# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-arch/zoo/ChangeLog,v 1.21 2006/02/27 19:28:55 blubb Exp $
+# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/zoo/ChangeLog,v 1.22 2006/03/10 00:37:36 vapier Exp $
+
+*zoo-2.10-r2 (10 Mar 2006)
+
+ 10 Mar 2006; Mike Frysinger <vapier@gentoo.org>
+ +files/zoo-2.10-CAN-2005-2349.patch, +files/zoo-2.10-febz-183426.patch,
+ +files/zoo-2.10-security_pathsize.patch, +zoo-2.10-r2.ebuild:
+ Grab a bunch of patches from Fedora and cleanup the sources more.
27 Feb 2006; Simon Stelling <blubb@gentoo.org> zoo-2.10-r1.ebuild:
stable on amd64 wrt bug 123782
diff --git a/app-arch/zoo/files/digest-zoo-2.10-r2 b/app-arch/zoo/files/digest-zoo-2.10-r2
new file mode 100644
index 000000000000..f0934af7ed78
--- /dev/null
+++ b/app-arch/zoo/files/digest-zoo-2.10-r2
@@ -0,0 +1,6 @@
+MD5 5de8e6d16ab168ef2f4e8db412068054 zoo-2.10-gcc-issues-fix.patch 19467
+RMD160 c58595ae3d5744b0d8dc38b6b0e1c66c370dd086 zoo-2.10-gcc-issues-fix.patch 19467
+SHA256 0215efd7aa218048f5f8bc085810f89cad6a9f710234f0d0e93be959a02f582b zoo-2.10-gcc-issues-fix.patch 19467
+MD5 70a0a785ecc8f7f747be1421e495d837 zoo-2.10pl1.tar.gz 172096
+RMD160 971d388b8cb29def1e4e31011463563e91c3d700 zoo-2.10pl1.tar.gz 172096
+SHA256 ad8d8fee5e524aca0e1e9a1e431c21cd59943d8373d5dffe4edca03a7e4284f4 zoo-2.10pl1.tar.gz 172096
diff --git a/app-arch/zoo/files/zoo-2.10-CAN-2005-2349.patch b/app-arch/zoo/files/zoo-2.10-CAN-2005-2349.patch
new file mode 100644
index 000000000000..3752728c8e5a
--- /dev/null
+++ b/app-arch/zoo/files/zoo-2.10-CAN-2005-2349.patch
@@ -0,0 +1,36 @@
+Taken from Fedora
+
+--- portable.c
++++ portable.c
+@@ -364,6 +364,31 @@
+ show_dir(direntry);
+ }
+ #endif
++ char *p;
++ /* take off '../' */
++ while ((p = strstr( direntry->dirname, "../" )) != NULL) {
++ while (*(p+3) != '\0') {
++ *p = *(p + 3);
++ p++;
++ }
++ *p = *(p+3); /* move last null */
++ //printf("zoo: skipped \"../\" path component in '%s'\n", direntry->dirname);
++ }
++ /* take off '/' */
++ if ( direntry->dirname[0] == '/' ) {
++ p = direntry->dirname;
++ while (*p != '\0') {
++ *p = *(p + 1);
++ p++;
++ }
++ *p = *(p+1); /* move last null */
++ //printf("zoo: skipped \"/\" path component in '%s'\n", direntry->dirname);
++ }
++ /* take off '..' */
++ if(!strcmp(direntry->dirname, ".."))
++ direntry->dirname[0] = '\0';
++ /* direntry->dirlen = strlen(direntry->dirname); */
++
+ return (0);
+ }
+
diff --git a/app-arch/zoo/files/zoo-2.10-febz-183426.patch b/app-arch/zoo/files/zoo-2.10-febz-183426.patch
new file mode 100644
index 000000000000..d8e34d628094
--- /dev/null
+++ b/app-arch/zoo/files/zoo-2.10-febz-183426.patch
@@ -0,0 +1,16 @@
+Taken from Fedora
+
+https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=183426
+http://bugs.gentoo.org/125622
+
+--- zoo/parse.c
++++ zoo/parse.c
+@@ -39,7 +39,7 @@
+ char *namep; /* points to relevant part of tempname */
+
+ char *p;
+- strcpy (tempname, fname);
++ strncpy(tempname, fname, LFNAMESIZE);
+
+ #ifdef DEBUG
+ printf ("parse: supplied name is [%s].\n", tempname);
diff --git a/app-arch/zoo/files/zoo-2.10-security_pathsize.patch b/app-arch/zoo/files/zoo-2.10-security_pathsize.patch
new file mode 100644
index 000000000000..4f89530f43e7
--- /dev/null
+++ b/app-arch/zoo/files/zoo-2.10-security_pathsize.patch
@@ -0,0 +1,23 @@
+Taken from Fedora
+
+--- misc.c
++++ misc.c
+@@ -135,11 +135,17 @@
+ char *fullpath (direntry)
+ struct direntry *direntry;
+ {
+- static char result[PATHSIZE];
++ static char result[PATHSIZE+LFNAMESIZE+12]; /* Room for enough space.*/
+ combine (result,
+ direntry->dirlen != 0 ? direntry->dirname : "",
+ (direntry->namlen != 0) ? direntry->lfname : direntry->fname
+ );
++
++ if (strlen (result) >= PATHSIZE) {
++ prterror ('f', "Combined dirname and filename too long!\n");
++ *result = '\0';
++ }
++
+ return (result);
+ }
+
diff --git a/app-arch/zoo/zoo-2.10-r2.ebuild b/app-arch/zoo/zoo-2.10-r2.ebuild
new file mode 100644
index 000000000000..c5450dd8da71
--- /dev/null
+++ b/app-arch/zoo/zoo-2.10-r2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/zoo/zoo-2.10-r2.ebuild,v 1.1 2006/03/10 00:37:36 vapier Exp $
+
+inherit eutils
+
+DESCRIPTION="Manipulate archives of files in compressed form."
+HOMEPAGE="ftp://ftp.kiarchive.ru/pub/unix/arcers"
+SRC_URI="ftp://ftp.kiarchive.ru/pub/unix/arcers/${P}pl1.tar.gz
+ mirror://gentoo/${P}-gcc-issues-fix.patch"
+
+LICENSE="zoo"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+S=${WORKDIR}
+
+src_unpack() {
+ unpack ${P}pl1.tar.gz
+ epatch "${DISTDIR}"/${P}-gcc-issues-fix.patch
+ epatch "${FILESDIR}"/${P}-CAN-2005-2349.patch
+ epatch "${FILESDIR}"/${P}-febz-183426.patch
+ epatch "${FILESDIR}"/${P}-security_pathsize.patch
+}
+
+src_compile() {
+ emake linux || die
+}
+
+src_install() {
+ dobin zoo fiz || die
+ doman zoo.1 fiz.1
+}