app-arch/tar: Security cleanup
authorMikle Kolyada <zlogene@gentoo.org>
Sun, 10 Mar 2019 16:16:03 +0000 (19:16 +0300)
committerMikle Kolyada <zlogene@gentoo.org>
Sun, 10 Mar 2019 16:16:03 +0000 (19:16 +0300)
Signed-off-by: Mikle Kolyada <zlogene@gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11

app-arch/tar/Manifest
app-arch/tar/files/tar-1.30-fix-test-117-and-118.patch [deleted file]
app-arch/tar/files/tar-1.30-fix-test-92.patch [deleted file]
app-arch/tar/tar-1.30.ebuild [deleted file]

index dcb20a1e80706263aec587fad1732e01952ab5b1..eeff245a6f19721853eb068cb65338f8b5e23d81 100644 (file)
@@ -1,3 +1,2 @@
-DIST tar-1.30.tar.bz2 2858639 BLAKE2B 82a8b1fbf1eb5c0347b2f8cf35854498e2955eb85eaf041ec44a38bbd9bc82cc7184d5cb858f9905f503c9178ec6d0ed50be2dc27be9933b29e0a18b8e6c0b8f SHA512 07a1157430898fee1a2c6fd3853d59d4ae13998db685669c8c702f73d2466eeb9892f84a5f0495bfe088c8190a643a99ac9f2cb16b85c9fe3ae0d83cc0f338e8
 DIST tar-1.31.tar.bz2 2946047 BLAKE2B c85c17740e4cd3e8c93d10d93b070cd80629b7f052d020c0513cdddd377f3f90e229a6fa10dfbb43e1006f8202c674f2df854b864c0947f49339a52964d65c1c SHA512 0f4d00e08d56a8f8c32aac0afa2845397efb8ad72eaa6af47334cef9612adb1a4b91406bdc2c3a2cf1b9cc8b92c12735a331e0d137b24f66703f6af6219464f6
 DIST tar-1.32.tar.bz2 2947264 BLAKE2B 4e380a9a2f84a2af5130464e1b298ae6acf02ee459cbca20dd0991c2859785e5aac789d57b87b32e8b45d89985b6414af9dd37161385da9568d6030c5aa42c0e SHA512 3139e87112123269ee0600243b3ea081687cc93667bef5832bfe3c785c1be622f520f00fcfbdf44ad1d3247866d0ecfe347a85bbfec38eb38fa1014baef566f6
diff --git a/app-arch/tar/files/tar-1.30-fix-test-117-and-118.patch b/app-arch/tar/files/tar-1.30-fix-test-117-and-118.patch
deleted file mode 100644 (file)
index 2f75da6..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-tests: fix race in dirrem01 and dirrem02
-
-Previously the '--checkpoint-action=echo' was triggered after
-'--checkpoint-action=sleep=1' - so the order of events *usually*
-was (for --format='gnu'):
-
-  ...
-  1. checkpoint handler before write of 'dir/sub' member
-  2. one-second delay
-  3. stderr write: 'tar: Write checkpoint 3'
-  4. write the member 'dir/sub' into the archive
-  5. check that the member's ctime has not been changed
-  6. genfile's detecting 'Write checkpoint', doing unlink
-  ...
-
-But sometimes, the genfile was fast enough to win the race and
-unlinked the directory before the member was written into the
-archive (IOW, the order was 1-2-3-6-4-5).  This led to the
-occasional warning 'tar: dir/sub: file changed as we read it'.
-
-Swap the order of 'sleep=1' and 'echo' actions so the genfile
-utility has (hopefully) enough time to do the unlink before
-writing the file into the archive (enforce 1-2-3-6-4-5 order).
-
-* tests/dirrem01.at: Swap 'sleep=1' and 'echo' actions.
-* tests/dirrem02.at: Likewise.
-
-Origin: https://lists.gnu.org/archive/html/bug-tar/2018-01/msg00000.html
----
- tests/dirrem01.at | 5 +++--
- tests/dirrem02.at | 7 ++++---
- 2 files changed, 7 insertions(+), 5 deletions(-)
-
-diff --git a/tests/dirrem01.at b/tests/dirrem01.at
-index 40344dc..dabc206 100644
---- a/tests/dirrem01.at
-+++ b/tests/dirrem01.at
-@@ -47,14 +47,15 @@ gnu)   CPT=3;;
- esac
- 
- genfile --run --checkpoint=$CPT --unlink dir/sub/file2 --unlink dir/sub -- \
--       tar --blocking-factor=1 --checkpoint=1 --checkpoint-action='sleep=1' \
--       --checkpoint-action='echo' -c -f archive.tar \
-+       tar --blocking-factor=1 --checkpoint=1 --checkpoint-action='echo' \
-+       --checkpoint-action='sleep=1' -c -f archive.tar \
-        --listed-incremental db -v dir >/dev/null
- ],
- [1],
- [ignore],
- [tar: dir: Directory is new
- tar: dir/sub: Directory is new
-+tar: dir/sub: file changed as we read it
- tar: dir/sub: File removed before we read it
- ],[],[],[gnu,posix])
- 
-diff --git a/tests/dirrem02.at b/tests/dirrem02.at
-index e1cf9ef..924454f 100644
---- a/tests/dirrem02.at
-+++ b/tests/dirrem02.at
-@@ -20,7 +20,7 @@
- 
- # Description:
- #
--# When an explicitley named directory disappears during creation
-+# When an explicitly named directory disappears during creation
- # of incremental dump, tar should still exit with TAREXIT_FAILURE (2).
- #
- # For further details see dirrem01.at
-@@ -44,14 +44,15 @@ gnu)   CPT=3;;
- esac
- 
- genfile --run --checkpoint=$CPT --unlink dir/sub/file2 --unlink dir/sub -- \
--       tar --blocking-factor=1 --checkpoint=1 --checkpoint-action='sleep=1' \
--       --checkpoint-action='echo' -c -f archive.tar \
-+       tar --blocking-factor=1 --checkpoint=1 --checkpoint-action='echo' \
-+       --checkpoint-action='sleep=1' -c -f archive.tar \
-        --listed-incremental db -v dir dir/sub >/dev/null
- ],
- [2],
- [ignore],
- [tar: dir: Directory is new
- tar: dir/sub: Directory is new
-+tar: dir/sub: file changed as we read it
- tar: dir/sub: Cannot open: No such file or directory
- tar: Exiting with failure status due to previous errors
- ],[],[],[gnu,posix])
--- 
-cgit v1.0-41-gc330
-
diff --git a/app-arch/tar/files/tar-1.30-fix-test-92.patch b/app-arch/tar/files/tar-1.30-fix-test-92.patch
deleted file mode 100644 (file)
index d5a63e4..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-http://lists.gnu.org/archive/html/bug-tar/2017-12/msg00027.html
-
---- a/tests/difflink.at
-+++ b/tests/difflink.at
-@@ -21,7 +21,7 @@ mkdir a
- genfile -f a/x
- ln -s x a/y
- ln a/y a/z
--tar cf a.tar a
-+tar cf a.tar a/x a/y a/z
- rm a/z
- ln -s x a/z
- tar df a.tar
diff --git a/app-arch/tar/tar-1.30.ebuild b/app-arch/tar/tar-1.30.ebuild
deleted file mode 100644 (file)
index 613884f..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic
-
-DESCRIPTION="Use this to make tarballs :)"
-HOMEPAGE="https://www.gnu.org/software/tar/"
-SRC_URI="mirror://gnu/tar/${P}.tar.bz2
-       mirror://gnu-alpha/tar/${P}.tar.bz2"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="acl elibc_glibc minimal nls selinux static userland_GNU xattr"
-
-RDEPEND="acl? ( virtual/acl )
-       selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}
-       nls? ( >=sys-devel/gettext-0.10.35 )
-       xattr? ( elibc_glibc? ( sys-apps/attr ) )"
-
-PATCHES=(
-       "${FILESDIR}"/${P}-fix-test-92.patch
-       "${FILESDIR}"/${P}-fix-test-117-and-118.patch
-)
-
-src_prepare() {
-       default
-
-       if ! use userland_GNU ; then
-               sed -i \
-                       -e 's:/backup\.sh:/gbackup.sh:' \
-                       scripts/{backup,dump-remind,restore}.in \
-                       || die "sed non-GNU"
-       fi
-}
-
-src_configure() {
-       use static && append-ldflags -static
-       local myeconfargs=(
-               --bindir="${EPREFIX}"/bin
-               --enable-backup-scripts
-               --libexecdir="${EPREFIX}"/usr/sbin
-               $(usex userland_GNU "" "--program-prefix=g")
-               $(use_with acl posix-acls)
-               $(use_enable nls)
-               $(use_with selinux)
-               $(use_with xattr xattrs)
-       )
-       FORCE_UNSAFE_CONFIGURE=1 econf "${myeconfargs[@]}"
-}
-
-src_install() {
-       default
-
-       local p=$(usex userland_GNU "" "g")
-       if [[ -z ${p} ]] ; then
-               # a nasty yet required piece of baggage
-               exeinto /etc
-               doexe "${FILESDIR}"/rmt
-       fi
-
-       # autoconf looks for gtar before tar (in configure scripts), hence
-       # in Prefix it is important that it is there, otherwise, a gtar from
-       # the host system (FreeBSD, Solaris, Darwin) will be found instead
-       # of the Prefix provided (GNU) tar
-       if use prefix ; then
-               dosym tar /bin/gtar
-       fi
-
-       mv "${ED%/}"/usr/sbin/${p}backup{,-tar} || die
-       mv "${ED%/}"/usr/sbin/${p}restore{,-tar} || die
-
-       if use minimal ; then
-               find "${ED}"/etc "${ED}"/*bin/ "${ED}"/usr/*bin/ \
-                       -type f -a '!' '(' -name tar -o -name ${p}tar ')' \
-                       -delete || die
-       fi
-}