UnZip 6.0
The Third Most Portable Program in the World! *
UnZip is an extraction utility for archives compressed in .zip format
(also called "zipfiles"). Although highly compatible both with
PKWARE's PKZIP and PKUNZIP utilities for MS-DOS and with Info-ZIP's
own Zip program, our primary objectives have
been portability and non-MSDOS functionality.
UnZip will list, test, or extract files from a .zip archive, commonly
found on MS-DOS systems. The default behavior (with no options) is to
extract into the current directory (and subdirectories below it) all
files from the specified zipfile. A companion program,
Zip, creates .zip archives; both programs are
compatible with archives created by PKZIP and PKUNZIP for MS-DOS, but
in many cases the program options or default behaviors differ. (For
example, UnZip recreates the stored directory structure by default;
PKUNZIP unpacks all files in the current directory by default.)
The Unix port of UnZip 5.52 is reported to have a race-condition
vulnerability, whereby a local attacker could change the permissions
of the user's files during unpacking. (This has been assigned CVE ID
CAN-2005-2475.)
|
All versions of UnZip through 5.50
have a number of directory-traversal vulnerabilities, and
version 5.50 also has a textmode data-corruption bug that
affects 16-bit ports such as MS-DOS. See the
FAQ
page for details.
|
Contents of This Page:
Latest Release
New features in UnZip 6.0, released 20 April 2009:
- Support PKWARE ZIP64 extensions, allowing Zip archives and Zip archive
entries larger than 4 GiBytes and more than 65536 entries within a single
Zip archive. This support is currently only available for Unix,
OpenVMS and Win32/Win64.
- Support for bzip2 compression method.
- Support for UTF-8 encoded entry names, both through PKWARE's "General
Purpose Flags Bit 11" indicator and Info-ZIP's new "up" unicode path
extra field. (Currently, on Windows the UTF-8 handling is limited to
the character subset contained in the configured non-unicode "system
code page".)
- Added "wrong implementation used" warning to error messages of the MSDOS
port when used under Win32, in an attempt to reduce false bug reports.
- Fixed "Time of Creation/Time of Use" vulnerability when setting attributes
of extracted files, for Unix and Unix-like ports.
- Fixed memory leak when processing invalid deflated data.
- Fixed long-standing bug in unshrink (partial_clear), added boundary checks
against invalid compressed data.
- On Unix, keep inherited SGID attribute bit for extracted directories
unless restoration of owner/group id or SUID/SGID/Tacky attributes was
requested.
- On Unix, allow extracted filenames to contain embedded control characters
when explicitly requested by specifying the new command line option "-^".
- On Unix, support restoration of symbolic link attributes.
- On Unix, support restoration of 32-bit UID/GID data using the new "ux"
IZUNIX3 extra field introduced with Zip 3.0.
- Support for ODS5 extended filename syntax on new OpenVMS systems.
- Support symbolic links zipped up on VMS.
- On VMS (only 8.x or better), support symbolic link creation.
- On VMS, support option to create converted text files in Stream_LF format.
- New -D option to suppress restoration of timestamps for extracted
directory entries (on those ports that support setting of directory
timestamps). By specifying "-DD", this new option also allows to suppress
timestamp restoration for ALL extracted files on all UnZip ports which
support restoration of timestamps.
On VMS, the default behaviour is now to skip restoration of directory
timestamps; here, "--D" restores ALL timestamps, "-D" restores none.
- On OS/2, Win32, and Unix, the (previously optional) feature UNIXBACKUP
to allow saving backup copies of overwritten files on extraction is now
enabled by default.
For the UnZip 6.0 release, we want to give special credit to Myles Bennet,
who started the job of supporting ZIP64 extensions and Large-File (> 2GiB)
and provided a first (alpha-state) port.
Future Plans
The next major release will be version 6.1.
It is questionable whether there will ever be a subsequent major
release, but on the off-chance that there is, it will probably be version
7.0, perhaps with a much-improved and unified DLL interface and
possibly better file system support for the MVS and VM/CMS ports, assuming
that doesn't happen sooner. And then perhaps version 8.0 will be
released, with full filter support (that is, able to read and extract a
zipfile from standard input like fUnZip does now), but now we're really
dreaming. While we're at it, though, a tcl/tk or Python/PIL
graphical interface might be nice--but see the related-links section for a pointer to
TkZip, which already exists (and has for a long time).
Downloads
Ready-to-run binary versions of UnZip are available for numerous platforms
and operating systems, but for most systems, only older binaries are available.
The three primary CTAN sites (and their many mirrors) contain a snapshot of
these binaries, current as of roughly 2004 (i.e., UnZip 5.51 and Zip 2.3
timeframe):
Here's a quick guide to the directory structure of the old ftp site:
Binaries for this OS... |
...can be found in this directory |
AmigaDOS |
AMIGA |
AOS/VS |
AOSVS/beta |
Atari TOS/MiNT |
ATARI |
BeOS |
BEOS |
FlexOS (IBM 4680 and 4690 point-of-sale terminals) |
FLEXOS |
Human68K (X68000) |
HUMAN68K |
Macintosh |
MACOS (also see Dirk Haase page) |
MS-DOS / PC-DOS / DR-DOS / FreeDOS |
MSDOS |
MVS ("OS/390 Base") / OS/390 OpenEdition |
MVS |
Novell Netware |
NOVELL (also see HrZip and HrUnZip page) |
OS/2 |
OS2 |
QDOS / SMSQ |
QDOS |
RISC OS (e.g., Acorn Archimedes) |
RISCOS |
Tandem NSK D30 (should also be OK on D20, D40) |
TANDEM (also see Info-ZIP for Tandem page) |
Unix:
|
|
AIX 3.2.5 through 5L |
UNIX/AIX |
|
CLIX (Intergraph) |
UNIX/CLIX |
|
ConvexOS |
UNIX/CONVEX |
|
Digital Unix (OSF/1, Compaq Tru64) / Ultrix |
UNIX/DEC |
|
FreeBSD |
UNIX/FREEBSD |
|
HP-UX (PA-RISC) / MPE/iX (HP 3000) |
UNIX/HP |
|
Linux |
UNIX/LINUX |
|
NetBSD |
ftp.netbsd.org |
|
QNX |
UNIX/QNX |
|
SCO Unix |
UNIX/SCO |
|
SGI Irix |
UNIX/SGI |
|
Solaris / SunOS |
UNIX/SUN |
VM/CMS |
VMCMS |
VMS |
VMS |
Windows 3.x |
WIN16 |
Windows 9x / ME / NT / 2000 / XP / etc. |
WIN32 |
Windows CE 1.0 |
WINCE |
|
As of 2009, the latest sources and binaries for Zip, UnZip, WiZ and
MacZip (including encryption code) are available at ftp.info-zip.org
and Info-ZIP's
SourceForge site.
Other Stuff
Technical information on zipfiles and other assorted Info-ZIP documentation
is available from:
Technical information and documentation for deflate/inflate and
zlib are available from:
Further information on where to (possibly) find Info-ZIP stuff is available in:
- the Info-ZIP "WHERE" file (ASCII text)
Information about commercial use, modification and redistribution of Zip,
UnZip, WiZ and MacZip is available in:
It's basically BSD-like, but note that there may still be a few remaining
files in some of the packages that are covered by different licenses.
Return to the
Info-ZIP Home Page.
Last updated 10 September 2009. Web page occasionally maintained by
Hunter Goatley.
Please direct Info-ZIP queries (availability, ports, bugs, etc.) to
Zip-Bug .
* "Hello, world" would be the first, of course.
C-Kermit is
probably second. (The Linux kernel may very well be third...)
Copyright © 1995-2008
Greg Roelofs.
UnZip is maintained by Christian Spieler.
|
|