- Issued:
- 2012-06-20
- Updated:
- 2012-06-20
RHBA-2012:0849 - Bug Fix Advisory
Synopsis
tar bug fix and enhancement update
Type/Severity
Bug Fix Advisory
Red Hat Insights patch analysis
Identify and remediate systems affected by this advisory.
Topic
Updated tar packages that fix several bugs and add one enhancement are now
available for Red Hat Enterprise Linux 6.
Description
The GNU tar program can save multiple files in one archive and restore the files
from that archive.
This update fixes the following bugs:
- Before this update, tar could terminate with a segmentation fault and returned
code 139. This happened when tar was used for incremental backup of the root
directory with the option "--listed-incremental" (short option "-g") due to
incorrect directory name resolution. The root directory name is now resolved
correctly and the backup process succeeds in this scenario. (BZ#653433)
- The tar utility archived sparse files with long names (about 100 characters)
incorrectly if run with the "--posix" and "--sparse" options (PAX mode). Such
files were stored with misleading names inside the tar archive as there was not
enough space allocated for the file names. Subsequent unpacking of the package
resulted in confusing output file names. With this update, more space is now
allocated for the file names in this scenario and the problem no longer occurs.
(BZ#656834)
- If tar was run with the "--remove-files" option and the archived directory
contained a file and a symbolic link pointing to the file, the file was deleted
but not backed up. The archiving process terminated with an error. With this
update, the file is archived as expected in this scenario. (BZ#698212)
- The tar unpacking process could enter an infinite loop and consume extensive
CPU resources when run with the "--keep-old-files" option. This happened when
unpacking an archive with symbolic links and the target of the symbolic link
already existed. With this update, the code has been modified to handle symbolic
links correctly in this scenario. (BZ#726723)
- The tar tool used the glibc fnmatch() function to match file names. However,
the function failed to match a file name when the archived file name contained
characters not supported by the default locale. Consequently, the file was not
unpacked. With this update, tar uses the gnulib fnmatch() and the file name is
matched as expected. (BZ#768724)
- If tar was run with the "--remove-files" option, it failed to remove the
archived files when append mode was activated (the -r option). With this update,
tar with the "--remove-files" option now calls the function that removes the
files after they have been archived and the option works as expected.
(BZ#782628)
- The tar tool failed to update the target archive when run with the "--update"
and "--directory" options, returned the "Cannot stat: No such file or directory"
error message, and the directory content was not archived. With this update, the
tar command with the two options now works as expected. (BZ#688567)
- When extracting an archive with the "--keep-old-files" option, tar silently
skipped already existing files. With this update, tar returns error code 2 and a
warning in this scenario. Also, the "--skip-old-files" option has been added to
allow the previous "--keep-old-files" behavior without returning errors for
files that already exist. (BZ#799252)
- When run with the "--list" (-r) option, tar returned the "tar: write error"
message, even though the execution succeeded. This happened if the command used
redirection with a pipeline and the command following the redirection failed to
process the entire tar command output. With this update, the spurious message is
no longer returned in this scenario. (BZ#807728)
In addition, this update adds this enhancement:
- When archiving a sparse file containing 0 blocks of data, the archiving
process experienced severe performance issues because tar was scanning the
sparse file for non-existing data. With this update, a sparse file containing 0
blocks is detected by the stat() call and the archiving process is now faster
for such files. (BZ#760665)
All tar users are advised to upgrade to these updated packages, which
fix these bugs and add this enhancement.
Solution
Before applying this update, make sure all previously-released errata
relevant to your system have been applied.
This update is available via the Red Hat Network. Details on how to
use the Red Hat Network to apply this update are available at
https://access.redhat.com/knowledge/articles/11258
Affected Products
- Red Hat Enterprise Linux Server 6 x86_64
- Red Hat Enterprise Linux Server 6 i386
- Red Hat Enterprise Linux Server - Extended Life Cycle Support 6 x86_64
- Red Hat Enterprise Linux Server - Extended Life Cycle Support 6 i386
- Red Hat Enterprise Linux Workstation 6 x86_64
- Red Hat Enterprise Linux Workstation 6 i386
- Red Hat Enterprise Linux Desktop 6 x86_64
- Red Hat Enterprise Linux Desktop 6 i386
- Red Hat Enterprise Linux for IBM z Systems 6 s390x
- Red Hat Enterprise Linux for Power, big endian 6 ppc64
- Red Hat Enterprise Linux for Scientific Computing 6 x86_64
- Red Hat Enterprise Linux Server from RHUI 6 x86_64
- Red Hat Enterprise Linux Server from RHUI 6 i386
- Red Hat Enterprise Linux Server - Extended Life Cycle Support (for IBM z Systems) 6 s390x
- Red Hat Enterprise Linux Server - Retired Extended Life Cycle Support 6 x86_64
Fixes
- BZ - 653433 - tar segfaults while doing listed-incremental archive of root partition
- BZ - 656834 - tar --sparse fails to restore file names longer than 100 chars from PAX header
- BZ - 687972 - FTBFS - failing tests
- BZ - 688567 - option -C (change directory) does not work in combination with -u (update archive)
- BZ - 698212 - tar --remove-files cause lost of data and fail backup with symlink
- BZ - 726723 - Endless loop while extracting symlink with -k (--keep-old-files)
- BZ - 768724 - tar does not extract files with names not matching the current locale
- BZ - 782628 - tar (1.23) does not remove files when -r flag used (append to tar file)
- BZ - 799252 - Tar --keep-old-files option does not work as expected.
CVEs
(none)
References
(none)
Red Hat Enterprise Linux Server 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
x86_64 | |
tar-1.23-7.el6.x86_64.rpm | SHA-256: 1d7ace5fa7ea31bd760d10224a8cd3f05b3dcc1b4f0b3289a43309bf6bf5481c |
tar-debuginfo-1.23-7.el6.x86_64.rpm | SHA-256: 98f1996830668dcc0384d7528d7b34d8354c4cfd401fd9fd11df40ebdb00f311 |
i386 | |
tar-1.23-7.el6.i686.rpm | SHA-256: 26c34506c4b1468461e93f53278363c6d51859effeaf0b4846ad04e6c6793138 |
tar-debuginfo-1.23-7.el6.i686.rpm | SHA-256: 3592ac3f91436687c79f28ee97d1906795e593af4caa1fbf53aa0dc71aaa6248 |
Red Hat Enterprise Linux Server - Extended Life Cycle Support 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
x86_64 | |
tar-1.23-7.el6.x86_64.rpm | SHA-256: 1d7ace5fa7ea31bd760d10224a8cd3f05b3dcc1b4f0b3289a43309bf6bf5481c |
tar-debuginfo-1.23-7.el6.x86_64.rpm | SHA-256: 98f1996830668dcc0384d7528d7b34d8354c4cfd401fd9fd11df40ebdb00f311 |
i386 | |
tar-1.23-7.el6.i686.rpm | SHA-256: 26c34506c4b1468461e93f53278363c6d51859effeaf0b4846ad04e6c6793138 |
tar-debuginfo-1.23-7.el6.i686.rpm | SHA-256: 3592ac3f91436687c79f28ee97d1906795e593af4caa1fbf53aa0dc71aaa6248 |
Red Hat Enterprise Linux Workstation 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
x86_64 | |
tar-1.23-7.el6.x86_64.rpm | SHA-256: 1d7ace5fa7ea31bd760d10224a8cd3f05b3dcc1b4f0b3289a43309bf6bf5481c |
tar-debuginfo-1.23-7.el6.x86_64.rpm | SHA-256: 98f1996830668dcc0384d7528d7b34d8354c4cfd401fd9fd11df40ebdb00f311 |
i386 | |
tar-1.23-7.el6.i686.rpm | SHA-256: 26c34506c4b1468461e93f53278363c6d51859effeaf0b4846ad04e6c6793138 |
tar-debuginfo-1.23-7.el6.i686.rpm | SHA-256: 3592ac3f91436687c79f28ee97d1906795e593af4caa1fbf53aa0dc71aaa6248 |
Red Hat Enterprise Linux Desktop 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
x86_64 | |
tar-1.23-7.el6.x86_64.rpm | SHA-256: 1d7ace5fa7ea31bd760d10224a8cd3f05b3dcc1b4f0b3289a43309bf6bf5481c |
tar-debuginfo-1.23-7.el6.x86_64.rpm | SHA-256: 98f1996830668dcc0384d7528d7b34d8354c4cfd401fd9fd11df40ebdb00f311 |
i386 | |
tar-1.23-7.el6.i686.rpm | SHA-256: 26c34506c4b1468461e93f53278363c6d51859effeaf0b4846ad04e6c6793138 |
tar-debuginfo-1.23-7.el6.i686.rpm | SHA-256: 3592ac3f91436687c79f28ee97d1906795e593af4caa1fbf53aa0dc71aaa6248 |
Red Hat Enterprise Linux for IBM z Systems 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
s390x | |
tar-1.23-7.el6.s390x.rpm | SHA-256: d74d05fd43e0ad823a327b0fb8bf8d2754cab0e2155500619e4aa8e1b45da194 |
tar-debuginfo-1.23-7.el6.s390x.rpm | SHA-256: c38b84ac17ac714b77a2555bcce67a7584c0571470055c3a5040fb99afb33bb6 |
Red Hat Enterprise Linux for Power, big endian 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
ppc64 | |
tar-1.23-7.el6.ppc64.rpm | SHA-256: 5b1a66b95ce08c90380a3398024479ec116daf691166a508fe1cf58bc47f04b6 |
tar-debuginfo-1.23-7.el6.ppc64.rpm | SHA-256: 596c96fa5ec202e856499a3f4c30fdd7ee2ccf6df9aa7779bbdaa5e8a041ba0d |
Red Hat Enterprise Linux for Scientific Computing 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
x86_64 | |
tar-1.23-7.el6.x86_64.rpm | SHA-256: 1d7ace5fa7ea31bd760d10224a8cd3f05b3dcc1b4f0b3289a43309bf6bf5481c |
tar-debuginfo-1.23-7.el6.x86_64.rpm | SHA-256: 98f1996830668dcc0384d7528d7b34d8354c4cfd401fd9fd11df40ebdb00f311 |
Red Hat Enterprise Linux Server from RHUI 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
x86_64 | |
tar-1.23-7.el6.x86_64.rpm | SHA-256: 1d7ace5fa7ea31bd760d10224a8cd3f05b3dcc1b4f0b3289a43309bf6bf5481c |
tar-debuginfo-1.23-7.el6.x86_64.rpm | SHA-256: 98f1996830668dcc0384d7528d7b34d8354c4cfd401fd9fd11df40ebdb00f311 |
i386 | |
tar-1.23-7.el6.i686.rpm | SHA-256: 26c34506c4b1468461e93f53278363c6d51859effeaf0b4846ad04e6c6793138 |
tar-debuginfo-1.23-7.el6.i686.rpm | SHA-256: 3592ac3f91436687c79f28ee97d1906795e593af4caa1fbf53aa0dc71aaa6248 |
Red Hat Enterprise Linux Server - Extended Life Cycle Support (for IBM z Systems) 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
s390x | |
tar-1.23-7.el6.s390x.rpm | SHA-256: d74d05fd43e0ad823a327b0fb8bf8d2754cab0e2155500619e4aa8e1b45da194 |
tar-debuginfo-1.23-7.el6.s390x.rpm | SHA-256: c38b84ac17ac714b77a2555bcce67a7584c0571470055c3a5040fb99afb33bb6 |
Red Hat Enterprise Linux Server - Retired Extended Life Cycle Support 6
SRPM | |
---|---|
tar-1.23-7.el6.src.rpm | SHA-256: 7404455dc5529a8c82be36bd26ea878b4b735c3a479bcd5bc6693cadc86f5755 |
x86_64 | |
tar-1.23-7.el6.x86_64.rpm | SHA-256: 1d7ace5fa7ea31bd760d10224a8cd3f05b3dcc1b4f0b3289a43309bf6bf5481c |
tar-debuginfo-1.23-7.el6.x86_64.rpm | SHA-256: 98f1996830668dcc0384d7528d7b34d8354c4cfd401fd9fd11df40ebdb00f311 |
The Red Hat security contact is secalert@redhat.com. More contact details at https://access.redhat.com/security/team/contact/.