From 392180498989e71fc02ac4697508a0a18d75b7968afd666c515397f9536ee44f Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Mon, 18 Dec 2006 23:17:56 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/tar?expand=0&rev=1 --- .gitattributes | 23 +++ .gitignore | 1 + ready | 0 tar-1.16-CVE-2006-6097.patch | 182 ++++++++++++++++++++ tar-1.16-xheader_unused.patch | 19 +++ tar-1.16.tar.bz2 | 3 + tar-disable-listed02-test.diff | 10 ++ tar-disable_languages.patch | 18 ++ tar-manpage.patch | 38 +++++ tar.changes | 277 +++++++++++++++++++++++++++++++ tar.spec | 295 +++++++++++++++++++++++++++++++++ 11 files changed, 866 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 ready create mode 100644 tar-1.16-CVE-2006-6097.patch create mode 100644 tar-1.16-xheader_unused.patch create mode 100644 tar-1.16.tar.bz2 create mode 100644 tar-disable-listed02-test.diff create mode 100644 tar-disable_languages.patch create mode 100644 tar-manpage.patch create mode 100644 tar.changes create mode 100644 tar.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/ready b/ready new file mode 100644 index 0000000..473a0f4 diff --git a/tar-1.16-CVE-2006-6097.patch b/tar-1.16-CVE-2006-6097.patch new file mode 100644 index 0000000..c1ca6c8 --- /dev/null +++ b/tar-1.16-CVE-2006-6097.patch @@ -0,0 +1,182 @@ +CVE-2006-6097 + +2006-11-29 Paul Eggert + + * NEWS: Remove support for mangled names. + * doc/tar.texi (verbose tutorial): Likewise. + * src/Makefile.am (tar_SOURCES): Remove mangle.c. + * src/common.h (extract_mangle): Remove decl. + * src/extract.c (extract_mangle_wrapper): Remove. + (prepare_to_extract): Remove support for mangled names. + * src/list.c (read_and, print_header): Likewise. + * src/mangle.c: Remove. + * src/tar.c (GNUTYPE_NAMES): Remove. + +Index: NEWS +=================================================================== +RCS file: /cvsroot/tar/tar/NEWS,v +retrieving revision 1.126 +diff -p -u -r1.126 NEWS +--- NEWS 29 Nov 2006 18:16:27 -0000 1.126 ++++ NEWS 30 Nov 2006 06:37:07 -0000 +@@ -1,6 +1,14 @@ + GNU tar NEWS - User visible changes. + Please send GNU tar bug reports to + ++* Support for reading ustar type 'N' header logical records has been removed. ++ This GNU extension was generated only by very old versions of GNU 'tar'. ++ Unfortunately its implementation had security holes; see ++ . ++ We don't expect that any tar archives in practical use have type 'N' ++ records, but if you have one and you trust its contents, you can ++ decode it with GNU tar 1.16 or earlier. ++ + version 1.16 - Sergey Poznyakoff, 2006-10-21 + + * After creating an archive, tar exits with code 1 if some files were +Index: doc/tar.texi +=================================================================== +RCS file: /cvsroot/tar/tar/doc/tar.texi,v +retrieving revision 1.123 +diff -p -u -r1.123 tar.texi +--- doc/tar.texi 29 Nov 2006 18:11:34 -0000 1.123 ++++ doc/tar.texi 30 Nov 2006 06:37:07 -0000 +@@ -1000,12 +1000,7 @@ Encountered only at the beginning of a m + from the previous volume. The number @var{n} gives the offset where + the original file was split. + + @item --Mangled file names-- +-This archive member contains @dfn{mangled file names} declarations, +-a special member type that was used by early versions of @GNUTAR{}. +-You probably will never encounter this, unless you are reading a very +-old archive. +- + @item unknown file type @var{c} + An archive member of unknown type. @var{c} is the type character from + the archive header. If you encounter such a message, it means that +Index: src/Makefile.am +=================================================================== +RCS file: /cvsroot/tar/tar/src/Makefile.am,v +retrieving revision 1.24 +diff -p -u -r1.24 Makefile.am +--- src/Makefile.am 30 Nov 2006 00:14:11 -0000 1.24 ++++ src/Makefile.am 30 Nov 2006 06:37:07 -0000 +@@ -30,7 +30,6 @@ tar_SOURCES = \ + xheader.c\ + incremen.c\ + list.c\ +- mangle.c\ + misc.c\ + names.c\ + sparse.c\ +Index: src/common.h +=================================================================== +RCS file: /cvsroot/tar/tar/src/common.h,v +retrieving revision 1.91 +diff -p -u -r1.91 common.h +--- src/common.h 29 Nov 2006 18:16:27 -0000 1.91 ++++ src/common.h 30 Nov 2006 06:37:07 -0000 +@@ -546,10 +546,6 @@ enum read_header tar_checksum (union blo + void skip_file (off_t size); + void skip_member (void); + +-/* Module mangle.c. */ +- +-void extract_mangle (void); +- + /* Module misc.c. */ + + void assign_string (char **dest, const char *src); +Index: src/extract.c +=================================================================== +RCS file: /cvsroot/tar/tar/src/extract.c,v +retrieving revision 1.97 +diff -p -u -r1.97 extract.c +--- src/extract.c 29 Nov 2006 18:16:27 -0000 1.97 ++++ src/extract.c 30 Nov 2006 06:37:07 -0000 +@@ -1024,13 +1024,6 @@ extract_fifo (char *file_name, int typef + #endif + + static int +-extract_mangle_wrapper (char *file_name, int typeflag) +-{ +- extract_mangle (); +- return 0; +-} +- +-static int + extract_volhdr (char *file_name, int typeflag) + { + if (verbose_option) +@@ -1121,10 +1114,6 @@ prepare_to_extract (char const *file_nam + *fun = extract_volhdr; + break; + +- case GNUTYPE_NAMES: +- *fun = extract_mangle_wrapper; +- break; +- + case GNUTYPE_MULTIVOL: + ERROR ((0, 0, + _("%s: Cannot extract -- file is continued from another volume"), +Index: src/list.c +=================================================================== +RCS file: /cvsroot/tar/tar/src/list.c,v +retrieving revision 1.101 +diff -p -u -r1.101 list.c +--- src/list.c 2 Jun 2006 08:05:04 -0000 1.101 ++++ src/list.c 30 Nov 2006 06:37:07 -0000 +@@ -107,7 +107,6 @@ read_and (void (*do_something) (void)) + { + case GNUTYPE_VOLHDR: + case GNUTYPE_MULTIVOL: +- case GNUTYPE_NAMES: + break; + + case DIRTYPE: +@@ -1047,10 +1046,6 @@ print_header (struct tar_stat_info *st, + modes[0] = 'M'; + break; + +- case GNUTYPE_NAMES: +- modes[0] = 'N'; +- break; +- + case GNUTYPE_LONGNAME: + case GNUTYPE_LONGLINK: + modes[0] = 'L'; +@@ -1234,10 +1229,6 @@ print_header (struct tar_stat_info *st, + uintbuf)); + fprintf (stdlis, _("--Continued at byte %s--\n"), size); + break; +- +- case GNUTYPE_NAMES: +- fprintf (stdlis, _("--Mangled file names--\n")); +- break; + } + } + fflush (stdlis); +Index: src/tar.h +=================================================================== +RCS file: /cvsroot/tar/tar/src/tar.h,v +retrieving revision 1.37 +diff -p -u -r1.37 tar.h +--- src/tar.h 29 Nov 2006 18:28:45 -0000 1.37 ++++ src/tar.h 30 Nov 2006 06:37:07 -0000 +@@ -165,6 +165,7 @@ struct oldgnu_header + 'A' Solaris Access Control List + 'E' Solaris Extended Attribute File + 'I' Inode only, as in 'star' ++ 'N' Obsolete GNU tar, for file names that do not fit into the main header. + 'X' POSIX 1003.1-2001 eXtended (VU version) */ + + /* This is a dir entry that contains the names of files that were in the +@@ -180,8 +181,5 @@ struct oldgnu_header + /* This is the continuation of a file that began on another volume. */ + #define GNUTYPE_MULTIVOL 'M' + +-/* For storing filenames that do not fit into the main header. */ +-#define GNUTYPE_NAMES 'N' +- + /* This is for sparse files. */ + #define GNUTYPE_SPARSE 'S' diff --git a/tar-1.16-xheader_unused.patch b/tar-1.16-xheader_unused.patch new file mode 100644 index 0000000..4dc8a83 --- /dev/null +++ b/tar-1.16-xheader_unused.patch @@ -0,0 +1,19 @@ +Bugzilla #223847 + +Index: tar-1.16-edit/src/xheader.c +=================================================================== +--- tar-1.16-edit.orig/src/xheader.c ++++ tar-1.16-edit/src/xheader.c +@@ -647,12 +647,10 @@ void + xheader_read (union block *p, size_t size) + { + size_t j = 0; +- size_t nblocks; + + free (extended_header.buffer); + size += BLOCKSIZE; + extended_header.size = size; +- nblocks = (size + BLOCKSIZE - 1) / BLOCKSIZE; + extended_header.buffer = xmalloc (size + 1); + extended_header.buffer[size] = '\0'; + diff --git a/tar-1.16.tar.bz2 b/tar-1.16.tar.bz2 new file mode 100644 index 0000000..a3ceef0 --- /dev/null +++ b/tar-1.16.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5037dfa4bdd426e680345681070a484f7f4edfa0b3381f595ca6dbc6ca1f5361 +size 1785682 diff --git a/tar-disable-listed02-test.diff b/tar-disable-listed02-test.diff new file mode 100644 index 0000000..26f4eaa --- /dev/null +++ b/tar-disable-listed02-test.diff @@ -0,0 +1,10 @@ +--- tar-1.15.1/tests/testsuite.at ++++ tar-1.15.1/tests/testsuite.at +@@ -87,7 +87,6 @@ + m4_include([incr01.at]) + m4_include([incr02.at]) + m4_include([listed01.at]) +-m4_include([listed02.at]) + m4_include([incr03.at]) + m4_include([incr04.at]) + m4_include([rename01.at]) diff --git a/tar-disable_languages.patch b/tar-disable_languages.patch new file mode 100644 index 0000000..26bcec8 --- /dev/null +++ b/tar-disable_languages.patch @@ -0,0 +1,18 @@ +Disable the languages, which don't have yet a path in /usr/share/locale/ + +Index: tar-1.16/po/LINGUAS +=================================================================== +--- tar-1.16.orig/po/LINGUAS ++++ tar-1.16/po/LINGUAS +@@ -14,11 +14,9 @@ id + it + ja + ko +-ky + ms + nb + nl +-no + pl + pt + pt_BR diff --git a/tar-manpage.patch b/tar-manpage.patch new file mode 100644 index 0000000..8c3d7d2 --- /dev/null +++ b/tar-manpage.patch @@ -0,0 +1,38 @@ +Index: tar-1.16/doc/Makefile.am +=================================================================== +--- tar-1.16.orig/doc/Makefile.am ++++ tar-1.16/doc/Makefile.am +@@ -32,6 +32,9 @@ tar_TEXINFOS = \ + value.texi + EXTRA_DIST = gendocs_template mastermenu.el texify.sed + DISTCLEANFILES=*.info* ++dist_man_MANS = tar.1 ++TAR = $(top_builddir)/src/tar ++HELP2MAN = /usr/bin/help2man + + # The rendering level is anyone of PUBLISH, DISTRIB or PROOF. + # Just call `make RENDITION=PROOF [target]' if you want PROOF rendition. +@@ -39,6 +42,10 @@ RENDITION = DISTRIB + + MAKEINFOFLAGS=-D$(RENDITION) + ++tar.1: $(top_srcdir)/src/tar.c $(top_srcdir)/configure.ac ++ $(HELP2MAN) --name "The GNU version of the tar archiving utility" \ ++ -p tar $(TAR) > $(srcdir)/tar.1 ++ + header.texi: $(top_srcdir)/src/tar.h + sed -f $(srcdir)/texify.sed $(top_srcdir)/src/tar.h \ + | expand >$@ +Index: tar-1.16/Makefile.am +=================================================================== +--- tar-1.16.orig/Makefile.am ++++ tar-1.16/Makefile.am +@@ -20,7 +20,7 @@ + + ACLOCAL_AMFLAGS = -I m4 + EXTRA_DIST = ChangeLog.1 PORTS +-SUBDIRS = doc lib rmt src scripts po tests ++SUBDIRS = lib rmt src doc scripts po tests + + dist-hook: + -rm -f $(distdir).cpio diff --git a/tar.changes b/tar.changes new file mode 100644 index 0000000..d470c41 --- /dev/null +++ b/tar.changes @@ -0,0 +1,277 @@ +------------------------------------------------------------------- +Tue Dec 05 16:07:51 CET 2006 - mkoenig@suse.de + +- update to version 1.16: + Bugfixes: + * Avoid running off file descriptors when using multiple -C options. + * tar --index-file=FILE --file=- sent the archive to FILE, and + the listing to stderr. + * Detect attempts to update compressed archives. + * Allow non-option arguments to be interspersed with options. + * Previous version created invalid archives when files shrink + during reading. + * Compare mode (tar d) hanged when trying to compare file contents. + * Previous versions in certain cases failed to restore directory + modification times. + New features: + * New option --mtime allows to set modification times + * New option --transform allows to transform file names before + storing + * --strip-components option works when deleting and comparing. + * New option --show-transformed-names + * Short option -l is now an alias of --check-links option, + which complies with UNIX98 + * The --checkpoint option takes an optional argument specifying + the number of records between the two successive checkpoints. + * The --totals option can be used with any tar operation + * Any number of -T (--files-from) options may be used in the + command line. + * List files containing null-separated file names are detected + and processed automatically. + * New option --no-unquote disables the unquoting of input file + names. + * New option --test-label tests the archive volume label. + * New option --show-stored-names. + * New option --to-command pipes the contents of archive members + to the specified command. + * New option --atime-preserve=system + * New option --delay-directory-restore + * New option --restrict prohibits use of some potentially harmful + tar options. + * New options --quoting-style and --quote-chars control the way + tar quotes member names on output. + * Better support for full-resolution time stamps. + Incompatible changes: + * tar no longer uses globbing by default +- remove unused variable [#223847] +- create man page via help2man +- remove support for mangled names, due to security reasons + CVE-2006-6097 [#223185] + +------------------------------------------------------------------- +Mon Jul 24 15:34:35 CEST 2006 - rguenther@suse.de + +- Do not build-depend on rsh, but provide the RSH environment. + +------------------------------------------------------------------- +Mon Feb 27 17:39:46 CET 2006 - kssingvo@suse.de + +- fixed buffer overflow issue CVE-2006-0300 (bugzilla#151516) +- not affected: traversal bug CVE-2005-1918 (bugzilla#145081) + +------------------------------------------------------------------- +Sat Feb 18 10:12:23 CET 2006 - aj@suse.de + +- Fix build. + +------------------------------------------------------------------- +Wed Jan 25 21:31:00 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Thu Sep 1 11:23:17 CEST 2005 - mmj@suse.de + +- Add patch from upstream for fixing sparse files > 4GB [#114540] + +------------------------------------------------------------------- +Fri Jun 24 14:36:11 CEST 2005 - schwab@suse.de + +- Fix broken test. + +------------------------------------------------------------------- +Fri Apr 8 17:27:58 CEST 2005 - uli@suse.de + +- ignore test suite fails on ARM + +------------------------------------------------------------------- +Wed Mar 9 21:14:26 CET 2005 - mmj@suse.de + +- Make gcc4 happy + +------------------------------------------------------------------- +Tue Feb 1 13:40:06 CET 2005 - mmj@suse.de + +- Disable test that breaks on reiserfs due to that filesystems + limitations. Tar works fine on reiserfs. + +------------------------------------------------------------------- +Tue Dec 21 18:23:54 CET 2004 - mmj@suse.de + +- Update to 1.15.1 which fixes a bug introduced in 1.15 which caused + tar to refuse to extract files from standard input. + +------------------------------------------------------------------- +Tue Dec 21 13:33:31 CET 2004 - mmj@suse.de + +- Update to tar-1.15 including: +- Features: + o Compressed archives are recognised automatically, it is no + longer necessary to specify -Z, -z, or -j options to read + them. Thus, you can now run `tar tf archive.tar.gz'. + o When restoring incremental dumps, --one-file-system option + prevents directory hierarchies residing on different devices + from being purged. With the previous versions of tar it was + dangerous to create incremental dumps with --one-file-system + option, since they would recursively remove mount points when + restoring from the back up. This change fixes the bug. + o Renamed --strip-path to --strip-components for consistency with + the GNU convention. + o Skipping archive members is sped up if the archive media supports + seeks. + o Restore script starts restoring only if it is given --all (-a) + option, or some patterns. This is to prevent accidental restores. + o `tar --verify' prints a warning if during archive creation some of + the file names had their prefixes stripped off. + o New option --exclude-caches instructs tar to exclude cache + directories automatically on archive creation. Cache directories + are those containing a standardized tag file, as specified at: + http://www.brynosaurus.com/cachedir/spec.html + o New configure option --with-rmt allows to specify full path + name to the `rmt' utility. This supercedes DEFAULT_RMT_COMMAND + variable introduced in version 1.14 + o New configure variable DEFAULT_RMT_DIR allows to specify the + directory where to install `rmt' utility. This is necessary + since modifying --libexecdir as was suggested for version 1.14 + produced a side effect: it also modified installation prefix + for backup scripts (if --enable-backup-scripts was given). + +- Bugfixes: + o Fixed flow in recognizing files to be included in incremental dumps. + o Correctly recognize sparse archive members when used with -T option. + o GNU multivolume headers cannot store filenames longer than + 100 characters. Do not allow multivolume archives to begin + with such filenames. + o If a member with link count > 2 was stored in the archive twice, + previous versions of tar were not able to extract it, since they + were trying to link the file to itself, which always failed and + lead to removing the already extracted copy. Preserve the first + extracted copy in such cases. + o Restore script was passing improper argument to tar --listed + option (which didn't affect the functionality, but was + logically incorrect). + o Fixed verification of created archives. + o Fixed unquoting of file names containing backslash escapes (previous + versions failed to recognize \a and \v). + o When attempting to delete a non-existing member from the + archive, previous versions of tar used to overwrite last + archive block with zeroes. + +------------------------------------------------------------------- +Mon Aug 9 23:51:47 CEST 2004 - mmj@suse.de + +- Add patch from snwint with long filename fix [#43538] + +------------------------------------------------------------------- +Sun May 30 10:37:44 CEST 2004 - mmj@suse.de + +- Update to 1.14 which is the first stable release of tar + since 1999. + +------------------------------------------------------------------- +Thu Apr 15 20:45:11 CEST 2004 - mmj@suse.de + +- Fix detection of remote paths [#38709]. Thanks Jürgen! + +------------------------------------------------------------------- +Tue Apr 13 10:47:51 CEST 2004 - mmj@suse.de + +- Update to 1.13.94 including fix for [#16531] + +------------------------------------------------------------------- +Sat Jan 10 16:51:03 CET 2004 - adrian@suse.de + +- build as user + +------------------------------------------------------------------- +Fri Jun 20 02:39:41 CEST 2003 - ro@suse.de + +- build with current gettext + +------------------------------------------------------------------- +Thu May 15 11:25:45 CEST 2003 - pthomas@suse.de + +- Remove unneeded files from build root. +- Add autoconf tests to properly guard K&R prototypes +- Clean up signed/unsigned compares. + +------------------------------------------------------------------- +Thu Apr 24 12:20:23 CEST 2003 - ro@suse.de + +- fix install_info --delete call and move from preun to postun + +------------------------------------------------------------------- +Fri Feb 7 02:30:52 CET 2003 - ro@suse.de + +- added install_info macros + +------------------------------------------------------------------- +Mon Nov 18 14:28:50 CET 2002 - ro@suse.de + +- add AM_GNU_GETTEXT_VERSION to configure.ac + +------------------------------------------------------------------- +Thu Aug 1 15:40:08 CEST 2002 - ro@suse.de + +- add acinclude.m4 with missing macros + +------------------------------------------------------------------- +Tue Jun 4 12:01:42 CEST 2002 - pthomas@suse.de + +- Make tar a package of its own. +- Update to tar-1.13.25. +- Make tar man page a seperate file instead of part of the patch. +- Patch de.po to reflect the addition of the --bunzip2 parameter +- Use AC_LIBOBJ instead of LIBOBJS + +------------------------------------------------------------------- +Wed May 22 16:50:17 CEST 2002 - olh@suse.de + +- allow build as user, use buildroot + +------------------------------------------------------------------- +Fri Feb 8 18:41:26 CET 2002 - werner@suse.de + +- Fix bug #12797: back to builtin behaviour, the widly used -I for + bunzip2 can be reenabled with the environment var TAROLDOPT4BZIP2 + +------------------------------------------------------------------- +Mon Dec 17 16:24:20 CET 2001 - werner@suse.de + +- draht@suse.de: package rsh is needed for build of tar(1) to + enable rsh remote command execution. + two successive execl() calls to /usr/bin/rsh with different + args/remote commands do not make sense since the first execl() is + successful if /usr/bin/rsh exists. Check for existence of /etc/rmt + on the remote side and execute it, else exec /sbin/rmt . (#12605) +- Use one contstant string for command line + +------------------------------------------------------------------- +Tue Nov 20 11:21:33 CET 2001 - werner@suse.de + +- Add rsh to needeforbuild to be sure that remote shell for remote + backup will be found. + +------------------------------------------------------------------- +Wed Aug 1 15:01:13 MEST 2001 - werner@suse.de + +- Make /etc/rmt versus /sbin/rmt switch dynamic. + +------------------------------------------------------------------- +Tue Mar 27 21:06:49 CEST 2001 - werner@suse.de + +- Fix man page of tar (#6741) + +------------------------------------------------------------------- +Thu Dec 14 15:06:10 CET 2000 - werner@suse.de + +- Update to tar 1.13.18 + * should avoid some crashes + * avoid exclude file list problem + +------------------------------------------------------------------- +Fri Nov 26 10:15:26 MET 1999 - kukuk@suse.de + +- Add tar.1 to file list +- Remove obsolete entries from file list +- Build tar with locale support diff --git a/tar.spec b/tar.spec new file mode 100644 index 0000000..cb8b9f2 --- /dev/null +++ b/tar.spec @@ -0,0 +1,295 @@ +# +# spec file for package tar (Version 1.16) +# +# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany. +# This file and all modifications and additions to the pristine +# package are under the same license as the package itself. +# +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + +Name: tar +BuildRequires: help2man +URL: http://www.gnu.org/software/tar/ +License: GNU General Public License (GPL) +Group: System/Base +Provides: base:/bin/tar +PreReq: %install_info_prereq +Autoreqprov: on +Version: 1.16 +Release: 1 +Summary: GNU implementation of tar ( (t)ape (ar)chiver ) +Source0: %name-%version.tar.bz2 +#Source1: tar.1 +Patch0: tar-disable_languages.patch +Patch1: tar-disable-listed02-test.diff +Patch2: tar-manpage.patch +Patch3: tar-1.16-xheader_unused.patch +Patch4: tar-1.16-CVE-2006-6097.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build +%define _bindir /bin + +%description +This package normally also includes the program "rmt", which provides +remote tape drive control. Since there are compatible versions of 'rmt' +in either the 'star' package or the 'dump' package, we didn't put 'rmt' +into this package. If you are planning to use the remote tape features +provided by tar you have to also install the 'dump' or the 'star' +package. + + + +Authors: +-------- + Melissa O'Neill + Bruno Haible + Dale Worley + David J. MacKenzie + François Pinard + Gerhard Poul + Jay Fenlason + Jeff Dairiki + Jim Kingdon + Joy Kendall + Machael Stone + Michael I Bushnell + Noah Friedman + Paul Eggert + Rainer Orth + The King + Tom Tromey + +%prep +%setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 + +%build +rm -f po/no.* po/ky.* +#autoreconf -fi +aclocal -I m4 +automake -f +%define my_cflags -W -Wall -Wpointer-arith -Wstrict-prototypes -Wformat-security -Wno-unused-parameter +export CFLAGS="$RPM_OPT_FLAGS %my_cflags" +export RSH="/usr/bin/rsh" +./configure --prefix=%_prefix --bindir=%_bindir --mandir=%_mandir \ + --infodir=%_infodir --build=%{_target_cpu}-suse-linux +make +#%ifarch %arm +#make check || true +#%else +#make check +#%endif + +%install +#mkdir -p $RPM_BUILD_ROOT%_mandir +#mkdir $RPM_BUILD_ROOT%_mandir/man1 +make install DESTDIR=$RPM_BUILD_ROOT +#install -m 0644 %SOURCE1 $RPM_BUILD_ROOT%_mandir/man1/ +rm -r %buildroot/usr/libexec + +%files +%defattr(-, root, root) +%_bindir/tar +%doc README* ABOUT-NLS AUTHORS COPYING NEWS THANKS ChangeLog PORTS TODO + +%_infodir/tar.info*.gz +%_mandir/man1/tar.1.gz +%_datadir/locale/*/LC_MESSAGES/tar.mo + +%post +%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz + +%postun +%install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz + +%clean +rm -rf $RPM_BUILD_ROOT + +%changelog -n tar +* Tue Dec 05 2006 - mkoenig@suse.de +- update to version 1.16: + Bugfixes: + * Avoid running off file descriptors when using multiple -C options. + * tar --index-file=FILE --file=- sent the archive to FILE, and + the listing to stderr. + * Detect attempts to update compressed archives. + * Allow non-option arguments to be interspersed with options. + * Previous version created invalid archives when files shrink + during reading. + * Compare mode (tar d) hanged when trying to compare file contents. + * Previous versions in certain cases failed to restore directory + modification times. + New features: + * New option --mtime allows to set modification times + * New option --transform allows to transform file names before + storing + * --strip-components option works when deleting and comparing. + * New option --show-transformed-names + * Short option -l is now an alias of --check-links option, + which complies with UNIX98 + * The --checkpoint option takes an optional argument specifying + the number of records between the two successive checkpoints. + * The --totals option can be used with any tar operation + * Any number of -T (--files-from) options may be used in the + command line. + * List files containing null-separated file names are detected + and processed automatically. + * New option --no-unquote disables the unquoting of input file + names. + * New option --test-label tests the archive volume label. + * New option --show-stored-names. + * New option --to-command pipes the contents of archive members + to the specified command. + * New option --atime-preserve=system + * New option --delay-directory-restore + * New option --restrict prohibits use of some potentially harmful + tar options. + * New options --quoting-style and --quote-chars control the way + tar quotes member names on output. + * Better support for full-resolution time stamps. + Incompatible changes: + * tar no longer uses globbing by default +- remove unused variable [#223847] +- create man page via help2man +- remove support for mangled names, due to security reasons + CVE-2006-6097 [#223185] +* Mon Jul 24 2006 - rguenther@suse.de +- Do not build-depend on rsh, but provide the RSH environment. +* Mon Feb 27 2006 - kssingvo@suse.de +- fixed buffer overflow issue CVE-2006-0300 (bugzilla#151516) +- not affected: traversal bug CVE-2005-1918 (bugzilla#145081) +* Sat Feb 18 2006 - aj@suse.de +- Fix build. +* Wed Jan 25 2006 - mls@suse.de +- converted neededforbuild to BuildRequires +* Thu Sep 01 2005 - mmj@suse.de +- Add patch from upstream for fixing sparse files > 4GB [#114540] +* Fri Jun 24 2005 - schwab@suse.de +- Fix broken test. +* Fri Apr 08 2005 - uli@suse.de +- ignore test suite fails on ARM +* Wed Mar 09 2005 - mmj@suse.de +- Make gcc4 happy +* Tue Feb 01 2005 - mmj@suse.de +- Disable test that breaks on reiserfs due to that filesystems + limitations. Tar works fine on reiserfs. +* Tue Dec 21 2004 - mmj@suse.de +- Update to 1.15.1 which fixes a bug introduced in 1.15 which caused + tar to refuse to extract files from standard input. +* Tue Dec 21 2004 - mmj@suse.de +- Update to tar-1.15 including: +- Features: + o Compressed archives are recognised automatically, it is no + longer necessary to specify -Z, -z, or -j options to read + them. Thus, you can now run `tar tf archive.tar.gz'. + o When restoring incremental dumps, --one-file-system option + prevents directory hierarchies residing on different devices + from being purged. With the previous versions of tar it was + dangerous to create incremental dumps with --one-file-system + option, since they would recursively remove mount points when + restoring from the back up. This change fixes the bug. + o Renamed --strip-path to --strip-components for consistency with + the GNU convention. + o Skipping archive members is sped up if the archive media supports + seeks. + o Restore script starts restoring only if it is given --all (-a) + option, or some patterns. This is to prevent accidental restores. + o `tar --verify' prints a warning if during archive creation some of + the file names had their prefixes stripped off. + o New option --exclude-caches instructs tar to exclude cache + directories automatically on archive creation. Cache directories + are those containing a standardized tag file, as specified at: + http://www.brynosaurus.com/cachedir/spec.html + o New configure option --with-rmt allows to specify full path + name to the `rmt' utility. This supercedes DEFAULT_RMT_COMMAND + variable introduced in version 1.14 + o New configure variable DEFAULT_RMT_DIR allows to specify the + directory where to install `rmt' utility. This is necessary + since modifying --libexecdir as was suggested for version 1.14 + produced a side effect: it also modified installation prefix + for backup scripts (if --enable-backup-scripts was given). +- Bugfixes: + o Fixed flow in recognizing files to be included in incremental dumps. + o Correctly recognize sparse archive members when used with -T option. + o GNU multivolume headers cannot store filenames longer than + 100 characters. Do not allow multivolume archives to begin + with such filenames. + o If a member with link count > 2 was stored in the archive twice, + previous versions of tar were not able to extract it, since they + were trying to link the file to itself, which always failed and + lead to removing the already extracted copy. Preserve the first + extracted copy in such cases. + o Restore script was passing improper argument to tar --listed + option (which didn't affect the functionality, but was + logically incorrect). + o Fixed verification of created archives. + o Fixed unquoting of file names containing backslash escapes (previous + versions failed to recognize \a and \v). + o When attempting to delete a non-existing member from the + archive, previous versions of tar used to overwrite last + archive block with zeroes. +* Mon Aug 09 2004 - mmj@suse.de +- Add patch from snwint with long filename fix [#43538] +* Sun May 30 2004 - mmj@suse.de +- Update to 1.14 which is the first stable release of tar + since 1999. +* Thu Apr 15 2004 - mmj@suse.de +- Fix detection of remote paths [#38709]. Thanks Jürgen! +* Tue Apr 13 2004 - mmj@suse.de +- Update to 1.13.94 including fix for [#16531] +* Sat Jan 10 2004 - adrian@suse.de +- build as user +* Fri Jun 20 2003 - ro@suse.de +- build with current gettext +* Thu May 15 2003 - pthomas@suse.de +- Remove unneeded files from build root. +- Add autoconf tests to properly guard K&R prototypes +- Clean up signed/unsigned compares. +* Thu Apr 24 2003 - ro@suse.de +- fix install_info --delete call and move from preun to postun +* Fri Feb 07 2003 - ro@suse.de +- added install_info macros +* Mon Nov 18 2002 - ro@suse.de +- add AM_GNU_GETTEXT_VERSION to configure.ac +* Thu Aug 01 2002 - ro@suse.de +- add acinclude.m4 with missing macros +* Tue Jun 04 2002 - pthomas@suse.de +- Make tar a package of its own. +- Update to tar-1.13.25. +- Make tar man page a seperate file instead of part of the patch. +- Patch de.po to reflect the addition of the --bunzip2 parameter +- Use AC_LIBOBJ instead of LIBOBJS +* Wed May 22 2002 - olh@suse.de +- allow build as user, use buildroot +* Fri Feb 08 2002 - werner@suse.de +- Fix bug #12797: back to builtin behaviour, the widly used -I for + bunzip2 can be reenabled with the environment var TAROLDOPT4BZIP2 +* Mon Dec 17 2001 - werner@suse.de +- draht@suse.de: package rsh is needed for build of tar(1) to + enable rsh remote command execution. + two successive execl() calls to /usr/bin/rsh with different + args/remote commands do not make sense since the first execl() is + successful if /usr/bin/rsh exists. Check for existence of /etc/rmt + on the remote side and execute it, else exec /sbin/rmt . (#12605) +- Use one contstant string for command line +* Tue Nov 20 2001 - werner@suse.de +- Add rsh to needeforbuild to be sure that remote shell for remote + backup will be found. +* Wed Aug 01 2001 - werner@suse.de +- Make /etc/rmt versus /sbin/rmt switch dynamic. +* Tue Mar 27 2001 - werner@suse.de +- Fix man page of tar (#6741) +* Thu Dec 14 2000 - werner@suse.de +- Update to tar 1.13.18 + * should avoid some crashes + * avoid exclude file list problem +* Fri Nov 26 1999 - kukuk@suse.de +- Add tar.1 to file list +- Remove obsolete entries from file list +- Build tar with locale support