[Pkg-mc-devel] Bug#628908: mc: Fails on looooong paths in posix tar archives

Christoph Biedl debian.axhn at manchmal.in-ulm.de
Thu Jun 2 10:57:12 UTC 2011


Package: mc
Version: 3:4.7.0.9-1
Severity: normal

Hi there,

When inspecting tar balls created tar's --posix option, file paths
(path + file name) exceeding about 100 characters in length are not
shown properly, subdirectories are skipped alltogether.

How to repeat (sorry, overlong lines):

echo 'asdf' >012345678-10--------20--------30--------40--------50--------60--------70--------80--------.file1
touch 012345678-10--------20--------30--------40--------50--------60--------70--------80--------.file2
mkdir posix-tar-test/012345678-10--------20--------30--------40--------50--------60--------70--------80--------
touch posix-tar-test/012345678-10--------20--------30--------40--------50--------60--------70--------80--------/subfile
tar --posix -cvf posix-tar-test.tar posix-tar-test

Then start mc and inspect posix-tar-test.tar.

Expected behaviour:

In posix-tar-test/, two files, first length 5, second length 0, and a
sub-directory. In that sub-directory, a single file length 0.
Compare to the output to 'tar -tvf posix-tar-test.tar'.

Observed behaviour:

Three items named
"012345678-10--------20--------30--------40--------50--------60--------70--------80---"
all type file and length five (i.e. taken from .file1).


Examining the tar ball ...

00000800  31 32 31 20 70 61 74 68  3d 70 6f 73 69 78 2d 74  |121 path=posix-t|
00000810  61 72 2d 74 65 73 74 2f  30 31 32 33 34 35 36 37  |ar-test/01234567|
00000820  38 2d 31 30 2d 2d 2d 2d  2d 2d 2d 2d 32 30 2d 2d  |8-10--------20--|
00000830  2d 2d 2d 2d 2d 2d 33 30  2d 2d 2d 2d 2d 2d 2d 2d  |------30--------|
00000840  34 30 2d 2d 2d 2d 2d 2d  2d 2d 35 30 2d 2d 2d 2d  |40--------50----|
00000850  2d 2d 2d 2d 36 30 2d 2d  2d 2d 2d 2d 2d 2d 37 30  |----60--------70|
00000860  2d 2d 2d 2d 2d 2d 2d 2d  38 30 2d 2d 2d 2d 2d 2d  |--------80------|
00000870  2d 2d 2e 66 69 6c 65 31  0a 33 30 20 6d 74 69 6d  |--.file1.30 mtim|
00000880  65 3d 31 33 30 37 30 31  30 35 32 34 2e 30 31 32  |e=1307010524.012|
00000890  31 37 32 36 35 31 0a 33  30 20 61 74 69 6d 65 3d  |172651.30 atime=|
000008a0  31 33 30 37 30 31 30 35  32 34 2e 30 31 32 31 37  |1307010524.01217|
000008b0  32 36 35 31 0a 33 30 20  63 74 69 6d 65 3d 31 33  |2651.30 ctime=13|
000008c0  30 37 30 31 30 36 30 34  2e 38 37 32 32 39 31 32  |07010604.8722912|
000008d0  34 33 0a 00 00 00 00 00  00 00 00 00 00 00 00 00  |43..............|
000008e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000a00  70 6f 73 69 78 2d 74 61  72 2d 74 65 73 74 2f 30  |posix-tar-test/0|
00000a10  31 32 33 34 35 36 37 38  2d 31 30 2d 2d 2d 2d 2d  |12345678-10-----|
00000a20  2d 2d 2d 32 30 2d 2d 2d  2d 2d 2d 2d 2d 33 30 2d  |---20--------30-|
00000a30  2d 2d 2d 2d 2d 2d 2d 34  30 2d 2d 2d 2d 2d 2d 2d  |-------40-------|
00000a40  2d 35 30 2d 2d 2d 2d 2d  2d 2d 2d 36 30 2d 2d 2d  |-50--------60---|
00000a50  2d 2d 2d 2d 2d 37 30 2d  2d 2d 2d 2d 2d 2d 2d 38  |-----70--------8|
00000a60  30 2d 2d 2d 30 30 30 30  36 34 34 00 30 30 30 31  |0---0000644.0001|
00000a70  37 35 30 00 30 30 30 31  37 35 30 00 30 30 30 30  |750.0001750.0000|
00000a80  30 30 30 30 30 30 35 00  31 31 35 37 31 36 36 32  |0000005.11571662|
00000a90  37 33 34 00 30 32 34 33  32 34 00 20 30 00 00 00  |734.024324. 0...|
00000aa0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|

... suggests mc's tar viewer picks file names from the second (legacy
format) blob and caches that information, while tar --list does the
right thing and reads the pax header (first blob).

Regards,

    Christoph

-- System Information:
Debian Release: 6.0.1
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.38.6 (PREEMPT)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages mc depends on:
ii  e2fslibs                      1.41.12-2  ext2/ext3/ext4 file system librari
ii  libc6                         2.11.2-10  Embedded GNU C Library: Shared lib
ii  libcomerr2                    1.41.12-2  common error description library
ii  libglib2.0-0                  2.24.2-1   The GLib library of C routines
ii  libgpm2                       1.20.4-3.3 General Purpose Mouse - shared lib
ii  libslang2                     2.2.2-4    The S-Lang programming library - r

Versions of packages mc recommends:
ii  mime-support                  3.48-1     MIME files 'mime.types' & 'mailcap

Versions of packages mc suggests:
pn  arj                    <none>            (no description available)
ii  bzip2                  1.0.5-6           high-quality block-sorting file co
pn  catdvi                 <none>            (no description available)
pn  dbview                 <none>            (no description available)
pn  djvulibre-bin          <none>            (no description available)
ii  evince [pdf-viewer]    2.30.3-2          Document (PostScript, PDF) viewer
ii  file                   5.04-5            Determines file type using "magic"
ii  gv [pdf-viewer]        1:3.7.1-1         PostScript and PDF viewer for X
pn  imagemagick            <none>            (no description available)
ii  links                  2.3~pre1-1        Web browser running in text mode
ii  odt2txt                0.4+git20100620-1 simple converter from OpenDocument
ii  perl                   5.10.1-17         Larry Wall's Practical Extraction 
ii  python                 2.6.6-3+squeeze6  interactive high-level object-orie
pn  python-boto            <none>            (no description available)
pn  python-tz              <none>            (no description available)
ii  unzip                  6.0-4             De-archiver for .zip files
ii  w3m                    0.5.2-9           WWW browsable pager with excellent
ii  xpdf [pdf-viewer]      3.02-12           Portable Document Format (PDF) rea
ii  xpdf-reader            3.02-12           Transitional package for xpdf
ii  zip                    3.0-3             Archiver for .zip files

-- no debconf information

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-mc-devel/attachments/20110602/6785340f/attachment.pgp>


More information about the Pkg-mc-devel mailing list