Menu

#395 bsdtar produces truncated tar file when pathname > 106 chars

LibArchive
open
nobody
None
5
2012-07-26
2007-11-08
AndyM
No

When using the Windows version 2.4.0 of bsdtar from http://gnuwin32.sourceforge.net/packages/libarchive.htm

an error occurs when trying to tar a set of files that have pathnames longer than ~106 characters.

The 1st output below shows a successful run with long pathnames, the longest being 106 characters.

The 2nd output below that has 5 extra characters in the pathname. This produces a shorter tar file that produces an error when listing.

The documentation suggests that when the pathname>100 chars, the first part of the pathname will be stored as a prefix which has an extra 155 chars available.

Thanks,
Andy

1st output

C:\AndyM\GnuWin32\bin>bsdtar.exe -v -c -f C:\AndyM\tar19.tar --format pax -C C:\DMP-5-2-0\cps-5-2-0\config\cps\cache\cps
\1\temp\GUID_short .
a .
a ./pthreadVCE.dll
a ./pthreadVCE.lib
a ./pthreadVSE.dll
a ./pthreadVSE.lib
a ./root1_123456789012345678901234567890
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/012345678901234
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/012345678901234/libpthreadGC.a
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/012345678901234/libpthreadGCE.a
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/012345678901234/pthreadGC.dll
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/012345678901234/pthreadGCE.dll
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/012345678901234/pthreadVC.dll
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/012345678901234/pthreadVC.lib

2nd output :

C:\AndyM\GnuWin32\bin>bsdtar.exe -v -c -f C:\AndyM\tar19.tar --format pax -C C:\DMP-5-2-0\cps-5-2-0\config\cps\cache\cps
\1\temp\GUID_short .
a .
a ./pthreadVCE.dll
a ./pthreadVCE.lib
a ./pthreadVSE.dll
a ./pthreadVSE.lib
a ./root1_123456789012345678901234567890
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/01234567890123456789
a ./root1_123456789012345678901234567890/root2_123456789012345678901234567890/01234567890123456789/libpthreadGC.a
C:\AndyM\GnuWin32\bin>

Discussion

MongoDB Logo MongoDB