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. |
New features in UnZip 5.52, released 27 February 2005:
Version 5.52 is a maintenance release pending the upcoming 6.0 release.
The next major release will be version 6.0, adding compatibility with PKWARE's large-file-support kludge. (Ideally the zipfile format itself should be overhauled, with clean support for large files, large file systems, and real timestamps. But that would have its own compatibility problems, of course.) It will also include multi-part archive support--something we've been begged to implement for years (and something that we would have, had we not been interrupted by far too many other eventful things)--since Zip 3.0 does.
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).
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:
|
As of 2007, the latest sources and binaries for Zip, UnZip, WiZ and MacZip (including encryption code) are available only at Info-ZIP's SourceForge site.
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:
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.
Copyright © 1995-2008
Greg Roelofs. UnZip is maintained by Christian Spieler. |