[BusyBox 0001575]: Newer unzip.c doesn't compile with arm-linux-gnu-gcc, bad header structure size.
bugs at busybox.net
bugs at busybox.net
Mon Nov 5 18:52:00 UTC 2007
A NOTE has been added to this issue.
======================================================================
http://busybox.net/bugs/view.php?id=1575
======================================================================
Reported By: dserpell
Assigned To: BusyBox
======================================================================
Project: BusyBox
Issue ID: 1575
Category: Other
Reproducibility: always
Severity: major
Priority: normal
Status: assigned
======================================================================
Date Submitted: 11-05-2007 07:53 PST
Last Modified: 11-05-2007 10:51 PST
======================================================================
Summary: Newer unzip.c doesn't compile with
arm-linux-gnu-gcc, bad header structure size.
Description:
Compiling using arm-linux-gnu-gcc, (Debian etch version):
-----------------------------------------------------------
CC archival/unzip.o
archival/unzip.c:61: error: size of array
‘BUG_zip_header_must_be_26_bytes’ is negative
make[1]: *** [archival/unzip.o] Error 1
-----------------------------------------------------------
In fact, the structure size is 28 bytes.
Gcc is:
-----------------------------------------------------------
arm-linux-gnu-gcc -v
Using built-in specs.
Target: arm-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++
--prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib
--without-included-gettext --enable-threads=posix --enable-nls
--with-gxx-include-dir=/usr/arm-linux-gnu/include/c++/4.1.2
--program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu
--enable-libstdcxx-debug --enable-checking=release
--program-prefix=arm-linux-gnu- --includedir=/usr/arm-linux-gnu/include
--build=i486-linux-gnu --host=i486-linux-gnu --target=arm-linux-gnu
Thread model: posix
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
-----------------------------------------------------------
I created a small test sample (attached), running it gives:
-----------------------------------------------------------
Size: 28
Fields:
version: 0 (0)
flags: 2 (2)
method: 4 (4)
modtime: 6 (6)
moddate: 8 (8)
crc32: 10 (10)
cmpsize: 14 (14)
ucmpsize: 18 (18)
filename_len: 22 (22)
extra_len: 24 (24)
-----------------------------------------------------------
This means that only the structure size is incorrect.
======================================================================
----------------------------------------------------------------------
dserpell - 11-05-07 10:51
----------------------------------------------------------------------
I added a patch fixing compilation of unzip.c. I tested the resulting
binary on the target, unzipping some files, and it works.
Issue History
Date Modified Username Field Change
======================================================================
11-05-07 07:53 dserpell New Issue
11-05-07 07:53 dserpell Status new => assigned
11-05-07 07:53 dserpell Assigned To => BusyBox
11-05-07 07:53 dserpell File Added: testStruct.c
11-05-07 10:50 dserpell File Added: busybox-unzip.patch
11-05-07 10:51 dserpell Note Added: 0002890
======================================================================
More information about the busybox-cvs
mailing list