BusyBox Bug and Patch Tracking
BusyBox
  

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0001429 [BusyBox] Standards Compliance major always 07-16-07 03:18 02-13-08 09:53
Reporter vicser View Status public  
Assigned To BusyBox
Priority normal Resolution fixed  
Status closed   Product Version 1.3.x
Summary 0001429: tar failed to unpack *.tar archive
Description busybox 1.3.2 - 1.6.1
Kernel 2.4.30 (i386 PC)

tar failed to unpack archive
Error is in busybox 1.3.2 - 1.6.1
Last time tested on busybox 1.6.1 (build configuration is in attached .config)

How to reproduce (see attachement mod_net.tar)
tar xf mod_net.tar

Operaton failes with the error message

    tar: short read

All archivers on desktop Linux systems unpack this file without errors

Archive is created by the win32 port of gnu tar:
    http://gnuwin32.sourceforge.net/ [^]
    http://gnuwin32.sourceforge.net/packages/tar.htm [^]

Improtant thing is that not all archives created by gnuwin32 tar
are unpackable by busybox tar - some are unpacked without problems
Additional Information
Attached Files  mod_net.tar [^] (51,200 bytes) 07-16-07 03:18
 .config [^] (18,717 bytes) 07-16-07 03:19
 tar.exe [^] (167,424 bytes) 07-16-07 03:21

- Relationships

- Notes
(0002605)
vicser
07-16-07 03:20

.config is Busybox 1.6.1 build configuration
 
(0002606)
vicser
07-16-07 03:23

tar.exe is tar from http://gnuwin32.sourceforge.net [^]
You ned additional libaries to launch it
See:
  http://gnuwin32.sourceforge.net/downlinks/tar-dep-zip.php [^]
 
(0002607)
vda
07-16-07 14:14

GNU tar also complains:

# tar xvf mod_net.tar
tulip.o
tar: short read
# /usr/bin/tar xvf mod_net.tar
tulip.o
/usr/bin/tar: A lone zero block at 100
# /usr/bin/tar --version
tar (GNU tar) 1.15.1

If you will do

# hexdump -vC mod_net.tar >mod_net.tar.hex

you will see that the reason for the warning is that there is only one 512-byte zero block at the end (at 0000c600). There should be at least 2 such blocks to mark EOF.

Both busybox and GNU tar unpack the file ok, the only difference is that GNU tar exits with "success" and bbox tar does not:

# /usr/bin/tar xvf mod_net.tar; echo $?
tulip.o
/usr/bin/tar: A lone zero block at 100
0
# tar xvf mod_net.tar; echo $?
tulip.o
tar: short read
1

Is this a problem for you?
 
(0002608)
vicser
07-17-07 01:26

Yes, really this is a problem, because it is impossible to check if unpacking
succeeds without extra manipulations (as md5 check)

In any case thanks for explanation
I understand that this is a problem on packing side.

I don't insist on such behaviour but I think it would be
convenient if busybox tar would be able to handle such issue
(whereas usefull data in tar file are really correct) and return
SUCCESS error code and warning (like gnu tar)
 
(0004534)
vda
02-13-08 09:53

Fixed in rev. 21009. Thanks.
 

- Issue History
Date Modified Username Field Change
07-16-07 03:18 vicser New Issue
07-16-07 03:18 vicser Status new => assigned
07-16-07 03:18 vicser Assigned To  => BusyBox
07-16-07 03:18 vicser File Added: mod_net.tar
07-16-07 03:19 vicser File Added: .config
07-16-07 03:20 vicser Note Added: 0002605
07-16-07 03:21 vicser File Added: tar.exe
07-16-07 03:23 vicser Note Added: 0002606
07-16-07 05:43 vicser Issue Monitored: vicser
07-16-07 05:43 vicser Issue End Monitor: vicser
07-16-07 14:14 vda Note Added: 0002607
07-17-07 01:26 vicser Note Added: 0002608
02-13-08 09:53 vda Status assigned => closed
02-13-08 09:53 vda Note Added: 0004534
02-13-08 09:53 vda Resolution open => fixed


Copyright © 2000 - 2006 Mantis Group
Powered by Mantis Bugtracker