Bug 135006 - unzip can't handle large files
Summary: unzip can't handle large files
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: unzip
Version: 4.0
Hardware: ia64
OS: Linux
medium
medium
Target Milestone: ---
: ---
Assignee: Lon Hohberger
QA Contact: Ben Levenson
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-10-07 22:12 UTC by Jesse Barnes
Modified: 2007-11-30 22:07 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2004-10-08 13:42:19 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Jesse Barnes 2004-10-07 22:12:34 UTC
unzip fails on files larger than ~4GB.  Is it possible to add large 
file support to it?

Comment 1 Lon Hohberger 2004-10-08 13:42:19 UTC
I think the old ZIP file spec it implements maxes out at 4GB.  The way
zip/unzip passes return + error codes (as negative numbers), we limit
it to a few KB under 4GB.  Getting it to do near 4GB in the first
place (instead of 2GB) took a lot of coersion.

What we ultimately need is a Free implementation of the Zip64
specification.  For instance, the Linux port of 7zip, called p7zip:

http://sourceforge.net/projects/p7zip

Unfortunately, the p7zip code is not 64-bit or endian clean right now,
so it's not an option (i.e. it will only work correctly on i386).

There's an implementation of the zip64 codec in the Heirloom
Toolchest's cpio program:

http://sourceforge.net/projects/heirloom

... But it requires reading entire files into RAM prior to compressing
(not good).

According to the Info-Zip web page, version 3.0 (which might support
large files) is under development:

http://www.info-zip.org/Zip.html

Of course, the timeframe is 2004, perhaps "early summer".

Probably best to use gzip with tar files for now.  Many modern
archiver applications running under other operating systems can
extract them.


Note You need to log in before you can comment on or make changes to this bug.