summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Volkov <pva@gentoo.org>2011-06-20 08:11:49 +0000
committerPeter Volkov <pva@gentoo.org>2011-06-20 08:11:49 +0000
commita81618db3b5d11aea805ca29996252c34fff5ab1 (patch)
tree8993155bcf2b872e662a0f3e659787c3e0ff9582 /app-arch
parentStable on amd64 wrt bug #372303 (diff)
downloadhistorical-a81618db3b5d11aea805ca29996252c34fff5ab1.tar.gz
historical-a81618db3b5d11aea805ca29996252c34fff5ab1.tar.bz2
historical-a81618db3b5d11aea805ca29996252c34fff5ab1.zip
Fix poor programming practices bug 370637 by Hans de Graaff.
Package-Manager: portage-2.1.10.3/cvs/Linux x86_64
Diffstat (limited to 'app-arch')
-rw-r--r--app-arch/dump/ChangeLog9
-rw-r--r--app-arch/dump/Manifest5
-rw-r--r--app-arch/dump/dump-0.4.44-r1.ebuild64
-rw-r--r--app-arch/dump/files/dump-0.4.44-fix-pointers-aliasing.patch126
-rw-r--r--app-arch/dump/files/dump-0.4.44-rl_completion_matches-detection.patch24
5 files changed, 226 insertions, 2 deletions
diff --git a/app-arch/dump/ChangeLog b/app-arch/dump/ChangeLog
index e10b69d93777..d32b1ee9ecb3 100644
--- a/app-arch/dump/ChangeLog
+++ b/app-arch/dump/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for app-arch/dump
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-arch/dump/ChangeLog,v 1.63 2011/06/16 09:54:35 pva Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-arch/dump/ChangeLog,v 1.64 2011/06/20 08:11:49 pva Exp $
+
+*dump-0.4.44-r1 (20 Jun 2011)
+
+ 20 Jun 2011; Peter Volkov <pva@gentoo.org> +dump-0.4.44-r1.ebuild,
+ +files/dump-0.4.44-fix-pointers-aliasing.patch,
+ +files/dump-0.4.44-rl_completion_matches-detection.patch:
+ Fix poor programming practices bug 370637 by Hans de Graaff.
16 Jun 2011; Peter Volkov <pva@gentoo.org> dump-0.4.44.ebuild,
+files/dump-0.4.44-underlinking.patch:
diff --git a/app-arch/dump/Manifest b/app-arch/dump/Manifest
index cb540e7b1477..0ad93f3cd24c 100644
--- a/app-arch/dump/Manifest
+++ b/app-arch/dump/Manifest
@@ -1,3 +1,5 @@
+AUX dump-0.4.44-fix-pointers-aliasing.patch 3887 RMD160 e0dc6478dd7a5a58aa3d1b17f09b8ff085d8bdbc SHA1 72e1581f90c71c63f79f71e620c35679e5726fa2 SHA256 1343ac702165ba52a047002605b9153dae2af26721f229e92eac20bc42b24ebb
+AUX dump-0.4.44-rl_completion_matches-detection.patch 992 RMD160 6fa03045d6bced0c64b7a1a67ec24e111af2302a SHA1 807ba7fb0df4ae6806ca822fae32eb874b11d869 SHA256 68202abc167ad786ff31e7bfcc0646cb68bd6c0a177a94cb5c52ebf7e8b1c9fe
AUX dump-0.4.44-underlinking.patch 1259 RMD160 84741cb856d74ea9d281119bcadd821c241cc6b4 SHA1 d162ff275e6aebe6c030afcb51e568302f94ffb7 SHA256 5ed784b91dd7aae4a93470c093ef27abb65fe3b4a75e912acb4d70ce7bfb24d1
AUX dump-0.4b43-pkg_config4blkid.patch 796 RMD160 5d99f420a3ab38d050b7f60655130f4fbd775c8e SHA1 0cbfa6f0d7c513110cc2fad499c6a35cd6265bff SHA256 59b0b2a70cae1d6fcaf13330ef12b26afff291d691439b502a723ce28ede83d5
AUX dump-0.4b43-pkg_config4crypto.patch 1186 RMD160 1f3f998e3ce81ac4681ff1b8c28f94be365f3511 SHA1 e468b6c64479b15ac73d6a3af5cde24fbd928ed2 SHA256 b684000795e2f261cce4bb5bf8c5a1140ccfee306326049a0d040e627d475b93
@@ -9,6 +11,7 @@ DIST dump-0.4b44.tar.gz 296691 RMD160 57d958e41c92da6959647c49faca648c6153850b S
EBUILD dump-0.4.41.ebuild 1537 RMD160 7520da93f9a56f354a6d3ad7af48313b51b52114 SHA1 d997db65259b34fa11e62e5b9a5d6bee62fd3d20 SHA256 1f938f6d8c803d887c84db77386ec99425a6878301c83be55c659fd351d465ac
EBUILD dump-0.4.42.ebuild 1654 RMD160 a09ffd1855f70fc1bb54fe22d686515fd12ccfc8 SHA1 12bded15141a8d0f213b2ea6e7f3102c18b96961 SHA256 227b1628059896faa8cde334fb3e26b5fe9cf2b0ac17caa7ff9ffd6de0cbb429
EBUILD dump-0.4.43.ebuild 1846 RMD160 e7f03a829f5486801e7cc84fd1ac2a894ab56dbd SHA1 d6e9ec9b325748d7102bb7ec76246bc6ca124f88 SHA256 391b6d60e0b768b7961aeba9b077ca6865e0004df52776b522403fbb1b5c7d67
+EBUILD dump-0.4.44-r1.ebuild 1776 RMD160 828fed15e16d97f3de1e64ed2812d9322efa6cca SHA1 91b2f339d2e49bafc5f232a3f96011df184587af SHA256 c7a2d357df338fecc3c8c03bad6c9bfe8fcd0d77aba4096402dd906af9f28047
EBUILD dump-0.4.44.ebuild 1653 RMD160 007b9670d1ae76efbc62e4c07d36194b51a8537e SHA1 179dd2dd70b0c75d593e1863d511419f365ae0fe SHA256 a897b513b8439e0e234f5f6faf936821049f52efaac5905f8e276ff9fa2d3aea
-MISC ChangeLog 8785 RMD160 770bf382c0beb9ef6b51bbed9de67bf17e71f8f8 SHA1 45efc1c28eae74e51a2c635bebc858fcd1492ff2 SHA256 f10650b003ab8951975678c9bc0dc120cd34c096e005215976b46e4c44cb8e52
+MISC ChangeLog 9059 RMD160 8a67dd623c200e4cfcddaf9dbad058807212737b SHA1 93dc92d58298222030918975883171e2e2711970 SHA256 768fc8a605f8d3dd4837f3b1fc993c2f3f5b8ee0ed4e74b3aca614689f6573a5
MISC metadata.xml 329 RMD160 d654ea69c621fde34b92f1528f756f6fcefa2667 SHA1 a7b02b19545e8f111ff22182e539db053cbd2d10 SHA256 5d3f3df98b135c307ca92e503e18629f96427b151d669ca3b150da7038eaee2f
diff --git a/app-arch/dump/dump-0.4.44-r1.ebuild b/app-arch/dump/dump-0.4.44-r1.ebuild
new file mode 100644
index 000000000000..475644ee2dfc
--- /dev/null
+++ b/app-arch/dump/dump-0.4.44-r1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/dump/dump-0.4.44-r1.ebuild,v 1.1 2011/06/20 08:11:49 pva Exp $
+
+EAPI="4"
+inherit eutils autotools
+
+MY_P=${P/4./4b}
+S=${WORKDIR}/${MY_P}
+DESCRIPTION="Dump/restore ext2fs backup utilities"
+HOMEPAGE="http://dump.sourceforge.net/"
+SRC_URI="mirror://sourceforge/dump/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug ermt readline selinux static"
+
+RDEPEND=">=sys-fs/e2fsprogs-1.27
+ >=app-arch/bzip2-1.0.2
+ >=sys-libs/zlib-1.1.4
+ ermt? ( dev-libs/openssl )
+ readline? ( sys-libs/readline
+ sys-libs/ncurses
+ static? ( sys-libs/ncurses[static-libs] ) )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ virtual/os-headers"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-underlinking.patch"
+ epatch "${FILESDIR}/${P}-rl_completion_matches-detection.patch"
+ epatch "${FILESDIR}/${P}-fix-pointers-aliasing.patch"
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --with-dumpdatespath=/etc/dumpdates \
+ --with-{bin,man}owner=root \
+ --with-{bin,man}grp=root \
+ --enable-largefile \
+ $(use_enable selinux transselinux) \
+ $(use_enable ermt) \
+ $(use_enable static) \
+ $(use_enable readline) \
+ $(use_enable debug)
+}
+
+src_install() {
+ # built on old autotools, no DESTDIR support
+ einstall MANDIR="${D}"/usr/share/man/man8
+ mv "${ED}"/usr/sbin/{,dump-}rmt || die
+ mv "${ED}"/usr/share/man/man8/{,dump-}rmt.8 || die
+ use ermt && newsbin rmt/ermt dump-ermt
+
+ dodoc CHANGES KNOWNBUGS MAINTAINERS README REPORTING-BUGS THANKS TODO
+ dodoc -r examples/*
+}
+
+pkg_postinst() {
+ ewarn "app-arch/dump installs 'rmt' as 'dump-rmt'."
+ ewarn "This is to avoid conflicts with app-arch/tar 'rmt'."
+}
diff --git a/app-arch/dump/files/dump-0.4.44-fix-pointers-aliasing.patch b/app-arch/dump/files/dump-0.4.44-fix-pointers-aliasing.patch
new file mode 100644
index 000000000000..6e3290085470
--- /dev/null
+++ b/app-arch/dump/files/dump-0.4.44-fix-pointers-aliasing.patch
@@ -0,0 +1,126 @@
+https://sourceforge.net/tracker/?func=detail&aid=3322910&group_id=1306&atid=301306
+
+=== modified file 'dump/tape.c'
+--- dump/tape.c 2011-06-20 07:22:40 +0000
++++ dump/tape.c 2011-06-20 07:57:11 +0000
+@@ -1281,9 +1281,9 @@
+ compresult = 1;
+ #ifdef HAVE_ZLIB
+ if (zipflag == COMPRESS_ZLIB) {
+- compresult = compress2(comp_buf->buf,
++ compresult = compress2((Bytef *)comp_buf->buf,
+ &worklen,
+- (char *)slp->tblock[0],
++ (Bytef *)slp->tblock[0],
+ writesize,
+ compressed);
+ if (compresult == Z_OK)
+@@ -1313,8 +1313,9 @@
+ #ifdef HAVE_LZO
+ if (zipflag == COMPRESS_LZO) {
+ lzo_uint worklen2 = worklen;
+- compresult = lzo1x_1_compress((char *)slp->tblock[0],writesize,
+- comp_buf->buf,
++ compresult = lzo1x_1_compress((lzo_bytep)slp->tblock[0],
++ writesize,
++ (lzo_bytep)comp_buf->buf,
+ &worklen2,
+ LZO_WorkMem);
+ worklen = worklen2;
+
+=== modified file 'dump/traverse.c'
+--- dump/traverse.c 2011-06-20 07:22:40 +0000
++++ dump/traverse.c 2011-06-20 07:57:11 +0000
+@@ -782,13 +782,13 @@
+ for (i = p->next_block; i < blockcnt; i++) {
+ p->buf[p->cnt++] = 0;
+ if (p->cnt == p->max) {
+- blksout (p->buf, p->cnt, p->ino);
++ blksout ((blk_t *)p->buf, p->cnt, p->ino);
+ p->cnt = 0;
+ }
+ }
+ p->buf[p->cnt++] = *blocknr;
+ if (p->cnt == p->max) {
+- blksout (p->buf, p->cnt, p->ino);
++ blksout ((blk_t *)p->buf, p->cnt, p->ino);
+ p->cnt = 0;
+ }
+ p->next_block = blockcnt + 1;
+@@ -868,14 +868,15 @@
+ void
+ dumpino(struct dinode *dp, dump_ino_t ino, int metaonly)
+ {
++ fsizeT remaining;
++ char buf[TP_BSIZE];
++ struct new_bsd_inode nbi;
++ int i;
++#ifdef __linux__
++ struct block_context bc;
++#else
+ unsigned long cnt;
+- fsizeT size, remaining;
+- char buf[TP_BSIZE];
+- struct new_bsd_inode nbi;
+- int i;
+-#ifdef __linux__
+- struct block_context bc;
+-#else
++ fsizeT size;
+ int ind_level;
+ #endif
+ u_quad_t i_size;
+@@ -1001,13 +1002,13 @@
+ for (i = 0; i < (int)howmany(remaining, sblock->fs_fsize); i++) {
+ bc.buf[bc.cnt++] = 0;
+ if (bc.cnt == bc.max) {
+- blksout (bc.buf, bc.cnt, bc.ino);
++ blksout ((blk_t *)bc.buf, bc.cnt, bc.ino);
+ bc.cnt = 0;
+ }
+ }
+ }
+ if (bc.cnt > 0) {
+- blksout (bc.buf, bc.cnt, bc.ino);
++ blksout ((blk_t *)bc.buf, bc.cnt, bc.ino);
+ }
+ free(bc.buf);
+ dump_xattr(ino, dp);
+@@ -1016,7 +1017,7 @@
+ cnt = NDADDR * sblock->fs_frag;
+ else
+ cnt = howmany(i_size, sblock->fs_fsize);
+- blksout(&dp->di_db[0], cnt, ino);
++ blksout((blk_t *)&dp->di_db[0], cnt, ino);
+ if ((quad_t) (size = i_size - NDADDR * sblock->fs_bsize) <= 0) {
+ dump_xattr(ino, dp);
+ return;
+
+=== modified file 'restore/tape.c'
+--- restore/tape.c 2011-06-20 07:22:40 +0000
++++ restore/tape.c 2011-06-20 07:57:11 +0000
+@@ -2335,8 +2335,10 @@
+ #ifndef HAVE_ZLIB
+ errx(1,"This restore version doesn't support zlib decompression");
+ #else
+- cresult = uncompress(comprbuf, &worklen,
+- tpbin->buf, blocklen);
++ cresult = uncompress((Bytef *)comprbuf,
++ &worklen,
++ (Bytef *)tpbin->buf,
++ blocklen);
+ output = comprbuf;
+ switch (cresult) {
+ case Z_OK:
+@@ -2397,8 +2399,8 @@
+ errx(1,"This restore version doesn't support lzo decompression");
+ #else
+ lzo_uint worklen2 = worklen;
+- cresult = lzo1x_decompress(tpbin->buf, blocklen,
+- comprbuf, &worklen2, NULL);
++ cresult = lzo1x_decompress((lzo_bytep)tpbin->buf, blocklen,
++ (lzo_bytep)comprbuf, &worklen2, NULL);
+ worklen = worklen2;
+ output = comprbuf;
+ switch (cresult) {
+
diff --git a/app-arch/dump/files/dump-0.4.44-rl_completion_matches-detection.patch b/app-arch/dump/files/dump-0.4.44-rl_completion_matches-detection.patch
new file mode 100644
index 000000000000..6f968f549d7c
--- /dev/null
+++ b/app-arch/dump/files/dump-0.4.44-rl_completion_matches-detection.patch
@@ -0,0 +1,24 @@
+https://sourceforge.net/tracker/?func=detail&aid=3322906&group_id=1306&atid=301306
+
+=== modified file 'configure.in'
+--- configure.in 2011-06-20 07:22:40 +0000
++++ configure.in 2011-06-20 07:56:19 +0000
+@@ -516,7 +516,7 @@
+ dnl
+ dnl Check for rl_completion_matches
+ dnl
+-AC_CHECK_LIB(readline, rl_completion_matches, [rlcm=yes], [rlcm=no], "-ltermcap")
++AC_CHECK_LIB(readline, rl_completion_matches, [rlcm=yes], [rlcm=no], [$rdllib])
+ if test "$rlcm" = yes; then
+ AC_DEFINE([HAVE_READLINE_RLCM],1,[Define this if your readline libs have the rl_completion_matches library.])
+ fi
+@@ -524,7 +524,7 @@
+ dnl
+ dnl Check for rl_completion_append_character
+ dnl
+-AC_CHECK_LIB(readline, rl_completion_append_character, [rcac=yes], [rcac=no], "-ltermcap")
++AC_CHECK_LIB(readline, rl_completion_append_character, [rcac=yes], [rcac=no], [$rdllib])
+ if test "$rcac" = yes; then
+ AC_DEFINE([HAVE_READLINE_CAC],1,[Define this if your readline libs have the rl_completion_append_character variable.])
+ fi
+