cvs commit: src/usr.bin/unzip Makefile unzip.1 unzip.c
Dag-Erling Smørgrav
des at des.no
Tue Jan 15 14:13:40 PST 2008
Kris Kennaway <kris at FreeBSD.org> writes:
> No, you'd have to duplicate the do-extract code (or add a special
> variable for those 4 ports). I'd much rather wait to see what Tim and
> Dag-Erling can come up with.
Take it easy everyone, no special-casing will be necessary as I fully
intend to add support for them to libarchive.
The four files I've identified are:
/usr/ports/distfiles/XMMS-AfterStep.zip
/usr/ports/distfiles/mathfonts-4.1/MathFonts_TrueType_41.exe
/usr/ports/distfiles/q2-3.20-x86-full.exe
/usr/ports/distfiles/wordsall.zip
Two of them are self-extracting. There is no easy way to figure out how
much to skip. I wrote a PE decoder which located the correct section,
but the zip file is preceded by decoder-specific data which I couldn't
decode. The correct starting position can be obtained from the central
directory, which is at the end of the file, which means libarchive needs
full seek support. I am working on that, but it requires a few changes
in the API between the libarchive core and the support modules, which is
a published API, so I need to discuss this with Tim (who until recently
was away on vacation).
AFAICT, the other two files simply have a dummy local header ("PK00") at
the beginning, which requires a trivial modification to the existing zip
support code to handle.
DES
--
Dag-Erling Smørgrav - des at des.no
More information about the cvs-src
mailing list