summaryrefslogtreecommitdiffstats
path: root/upstream/fedora-40/man1/zipinfo.1
diff options
context:
space:
mode:
Diffstat (limited to 'upstream/fedora-40/man1/zipinfo.1')
-rw-r--r--upstream/fedora-40/man1/zipinfo.1517
1 files changed, 517 insertions, 0 deletions
diff --git a/upstream/fedora-40/man1/zipinfo.1 b/upstream/fedora-40/man1/zipinfo.1
new file mode 100644
index 00000000..428e4b97
--- /dev/null
+++ b/upstream/fedora-40/man1/zipinfo.1
@@ -0,0 +1,517 @@
+.\" Copyright (c) 1990-2009 Info-ZIP. All rights reserved.
+.\"
+.\" See the accompanying file LICENSE, version 2009-Jan-02 or later
+.\" (the contents of which are also included in unzip.h) for terms of use.
+.\" If, for some reason, all these files are missing, the Info-ZIP license
+.\" also may be found at: ftp://ftp.info-zip.org/pub/infozip/license.html
+.\"
+.\" zipinfo.1 by Greg Roelofs and others.
+.\"
+.\" =========================================================================
+.\" define .X macro (for long-line ZipInfo output examples; small Courier):
+.de X
+.nf
+.ft CW
+.ie n .ti -5
+.el \{ .ti +2m
+.ps -1 \}
+\&\\$1
+.ie n .ti +5
+.el \{ .ti -2m
+.ps +1 \}
+.ft
+.fi
+..
+.\" define .EX/.EE (for multiline user-command examples; normal Courier font)
+.de EX
+.in +4n
+.nf
+.ft CW
+..
+.de EE
+.ft
+.fi
+.in -4n
+..
+.\" =========================================================================
+.TH ZIPINFO 1L "20 April 2009 (v3.0)" "Info-ZIP"
+.SH NAME
+zipinfo \- list detailed information about a ZIP archive
+.PD
+.SH SYNOPSIS
+\fBzipinfo\fP [\fB\-12smlvhMtTz\fP] \fIfile\fP[\fI.zip\fP]
+[\fIfile(s)\fP\ .\|.\|.] [\fB\-x\fP\ \fIxfile(s)\fP\ .\|.\|.]
+.PP
+\fBunzip\fP \fB\-Z\fP [\fB\-12smlvhMtTz\fP] \fIfile\fP[\fI.zip\fP]
+[\fIfile(s)\fP\ .\|.\|.] [\fB\-x\fP\ \fIxfile(s)\fP\ .\|.\|.]
+.PD
+.\" =========================================================================
+.SH DESCRIPTION
+\fIzipinfo\fP lists technical information about files in a ZIP archive, most
+commonly found on MS-DOS systems. Such information includes file access
+permissions, encryption status, type of compression, version and operating
+system or file system of compressing program, and the like. The default
+behavior (with no options) is
+to list single-line entries for each file in the archive, with header and
+trailer lines providing summary information for the entire archive. The
+format is a cross between Unix ``\fCls \-l\fR'' and ``\fCunzip \-v\fR''
+output. See
+.B "DETAILED DESCRIPTION"
+below. Note that \fIzipinfo\fP is the same program as \fIunzip\fP (under
+Unix, a link to it); on some systems, however, \fIzipinfo\fP support may
+have been omitted when \fIunzip\fP was compiled.
+.PD
+.\" =========================================================================
+.SH ARGUMENTS
+.TP
+.IR file [ .zip ]
+Path of the ZIP archive(s). If the file specification is a wildcard,
+each matching file is processed in an order determined by the operating
+system (or file system). Only the filename can be a wildcard; the path
+itself cannot. Wildcard expressions are similar to Unix \fIegrep\fP(1)
+(regular) expressions and may contain:
+.RS
+.IP *
+matches a sequence of 0 or more characters
+.IP ?
+matches exactly 1 character
+.IP [.\|.\|.]
+matches any single character found inside the brackets; ranges are specified
+by a beginning character, a hyphen, and an ending character. If an exclamation
+point or a caret (`!' or `^') follows the left bracket, then the range of
+characters within the brackets is complemented (that is, anything \fIexcept\fP
+the characters inside the brackets is considered a match). To specify a
+verbatim left bracket, the three-character sequence ``[[]'' has to be used.
+.RE
+.IP
+(Be sure to quote any character that might otherwise be interpreted or
+modified by the operating system, particularly under Unix and VMS.) If no
+matches are found, the specification is assumed to be a literal filename;
+and if that also fails, the suffix \fC.zip\fR is appended. Note that
+self-extracting ZIP files are supported, as with any other ZIP archive;
+just specify the \fC.exe\fR suffix (if any) explicitly.
+.IP [\fIfile(s)\fP]
+An optional list of archive members to be processed, separated by spaces.
+(VMS versions compiled with VMSCLI defined must delimit files with commas
+instead.)
+Regular expressions (wildcards) may be used to match multiple members; see
+above. Again, be sure to quote expressions that would otherwise be expanded
+or modified by the operating system.
+.IP [\fB\-x\fP\ \fIxfile(s)\fP]
+An optional list of archive members to be excluded from processing.
+.\" =========================================================================
+.SH OPTIONS
+.TP
+.B \-1
+list filenames only, one per line. This option excludes all others; headers,
+trailers and zipfile comments are never printed. It is intended for use in
+Unix shell scripts.
+.TP
+.B \-2
+list filenames only, one per line, but allow headers (\fB\-h\fP), trailers
+(\fB\-t\fP) and zipfile comments (\fB\-z\fP), as well. This option may be
+useful in cases where the stored filenames are particularly long.
+.TP
+.B \-s
+list zipfile info in short Unix ``\fCls \-l\fR'' format. This is the default
+behavior; see below.
+.TP
+.B \-m
+list zipfile info in medium Unix ``\fCls \-l\fR'' format. Identical to the
+\fB\-s\fP output, except that the compression factor, expressed as a
+percentage, is also listed.
+.TP
+.B \-l
+list zipfile info in long Unix ``\fCls \-l\fR'' format. As with \fB\-m\fP
+except that the compressed size (in bytes) is printed instead of the
+compression ratio.
+.TP
+.B \-v
+list zipfile information in verbose, multi-page format.
+.TP
+.B \-h
+list header line. The archive name, actual size (in bytes) and total number
+of files is printed.
+.TP
+.B \-M
+pipe all output through an internal pager similar to the Unix \fImore\fP(1)
+command. At the end of a screenful of output, \fIzipinfo\fP pauses with a
+``\-\-More\-\-'' prompt; the next screenful may be viewed by pressing the
+Enter (Return) key or the space bar. \fIzipinfo\fP can be terminated by
+pressing the ``q'' key and, on some systems, the Enter/Return key. Unlike
+Unix \fImore\fP(1), there is no forward-searching or editing capability.
+Also, \fIzipinfo\fP doesn't notice if long lines wrap at the edge of the
+screen, effectively resulting in the printing of two or more lines and the
+likelihood that some text will scroll off the top of the screen before being
+viewed. On some systems the number of available lines on the screen is not
+detected, in which case \fIzipinfo\fP assumes the height is 24 lines.
+.TP
+.B \-t
+list totals for files listed or for all files. The number of files listed,
+their uncompressed and compressed total sizes , and their overall compression
+factor is printed; or, if only the totals line is being printed, the values
+for the entire archive are given. The compressed total size does not include
+the 12 additional header bytes of each encrypted entry. Note that the total
+compressed (data) size will never match the actual zipfile size, since the
+latter includes all of the internal zipfile headers in addition to the
+compressed data.
+.TP
+.B \-T
+print the file dates and times in a sortable decimal format (yymmdd.hhmmss).
+The default date format is a more standard, human-readable version with
+abbreviated month names (see examples below).
+.TP
+.B \-U
+[UNICODE_SUPPORT only] modify or disable UTF-8 handling.
+When UNICODE_SUPPORT is available, the option \fB\-U\fP forces \fIunzip\fP
+to escape all non-ASCII characters from UTF-8 coded filenames as ``#Uxxxx''.
+This option is mainly provided for debugging purpose when the fairly new
+UTF-8 support is suspected to mangle up extracted filenames.
+.IP
+The option \fB\-UU\fP allows to entirely disable the recognition of UTF-8
+encoded filenames. The handling of filename codings within \fIunzip\fP falls
+back to the behaviour of previous versions.
+.TP
+.B \-z
+include the archive comment (if any) in the listing.
+.PD
+.\" =========================================================================
+.SH "DETAILED DESCRIPTION"
+.I zipinfo
+has a number of modes, and its behavior can be rather difficult to fathom
+if one isn't familiar with Unix \fIls\fP(1) (or even if one is). The default
+behavior is to list files in the following format:
+.PP
+.X "-rw-rws--- 1.9 unx 2802 t- defX 11-Aug-91 13:48 perms.2660"
+.PP
+The last three fields are the modification date and time of
+the file, and its name. The case of the filename is respected; thus
+files that come from MS-DOS PKZIP are always capitalized. If the file
+was zipped with a stored directory name, that is also displayed as part
+of the filename.
+.PP
+The second and third fields indicate that the file was zipped under
+Unix with version 1.9 of \fIzip\fP. Since it comes from Unix, the file
+permissions at the beginning of the line are printed in Unix format.
+The uncompressed file-size (2802 in this example) is the fourth field.
+.PP
+The fifth field consists of two characters, either of which may take
+on several values. The first character may be either `t' or `b', indicating
+that \fIzip\fP believes the file to be text or binary, respectively;
+but if the file is encrypted, \fIzipinfo\fP
+notes this fact by capitalizing the character (`T' or `B'). The second
+character may also take on four values, depending on whether there is
+an extended local header and/or an ``extra field'' associated with the
+file (fully explained in PKWare's APPNOTE.TXT, but basically analogous to
+pragmas in ANSI C--i.e., they provide a standard way to include non-standard
+information in the archive). If neither exists, the character
+will be a hyphen (`\-'); if there is an extended local header but no extra
+field, `l'; if the reverse, `x'; and if both exist, `X'. Thus the
+file in this example is (probably) a text file, is not encrypted, and
+has neither an extra field nor an extended local header associated with it.
+The example below, on the other hand, is an encrypted binary file with an
+extra field:
+.PP
+.X "RWD,R,R 0.9 vms 168 Bx shrk 9-Aug-91 19:15 perms.0644"
+.PP
+Extra fields are used for various purposes (see discussion of the \fB\-v\fP
+option below) including the storage of VMS file attributes, which is
+presumably the case here. Note that the file attributes are listed in
+VMS format. Some other possibilities for the host operating system (which
+is actually a misnomer--host file system is more correct) include
+OS/2 or NT with High Performance File System (HPFS), MS-DOS, OS/2 or NT
+with File Allocation Table (FAT) file system, and Macintosh. These are
+denoted as follows:
+.PP
+.X "-rw-a-- 1.0 hpf 5358 Tl i4:3 4-Dec-91 11:33 longfilename.hpfs"
+.X "-r--ahs 1.1 fat 4096 b- i4:2 14-Jul-91 12:58 EA DATA. SF"
+.X "--w------- 1.0 mac 17357 bx i8:2 4-May-92 04:02 unzip.macr"
+.PP
+File attributes in the first two cases are indicated in a Unix-like format,
+where the seven subfields indicate whether the file: (1) is a directory,
+(2) is readable (always true), (3) is writable, (4) is executable (guessed
+on the basis of the extension--\fI.exe\fP, \fI.com\fP, \fI.bat\fP, \fI.cmd\fP
+and \fI.btm\fP files are assumed to be so), (5) has its archive bit set,
+(6) is hidden, and (7) is a system file. Interpretation of Macintosh file
+attributes is unreliable because some Macintosh archivers don't store any
+attributes in the archive.
+.PP
+Finally, the sixth field indicates
+the compression method and possible sub-method used. There are six methods
+known at present: storing (no compression), reducing, shrinking, imploding,
+tokenizing (never publicly released), and deflating. In addition, there are
+four levels of reducing (1 through 4); four types of imploding (4K or 8K
+sliding dictionary, and 2 or 3 Shannon-Fano trees); and four levels of
+deflating (superfast, fast, normal, maximum compression). \fIzipinfo\fP
+represents these methods and their sub-methods as follows: \fIstor\fP;
+\fIre:1\fP, \fIre:2\fP, etc.; \fIshrk\fP; \fIi4:2\fP, \fIi8:3\fP, etc.;
+\fItokn\fP; and \fIdefS\fP, \fIdefF\fP, \fIdefN\fP, and \fIdefX\fP.
+.PP
+The medium and long listings are almost identical to the short format except
+that they add information on the file's compression. The medium format lists
+the file's compression factor as a percentage indicating the amount of space
+that has been ``removed'':
+.PP
+.X "-rw-rws--- 1.5 unx 2802 t- 81% defX 11-Aug-91 13:48 perms.2660"
+.PP
+In this example, the file has been compressed by more than a factor of
+five; the compressed data are only 19% of the original size. The long
+format gives the compressed file's size in bytes, instead:
+.PP
+.X "-rw-rws--- 1.5 unx 2802 t- 538 defX 11-Aug-91 13:48 perms.2660"
+.PP
+In contrast to the \fIunzip\fP listings, the compressed size figures in
+this listing format denote the complete size of compressed data, including
+the 12 extra header bytes in case of encrypted entries.
+.PP
+Adding the \fB\-T\fP option changes the file date and time to decimal
+format:
+.PP
+.X "-rw-rws--- 1.5 unx 2802 t- 538 defX 910811.134804 perms.2660"
+.PP
+Note that because of limitations in the MS-DOS format used to store file
+times, the seconds field is always rounded to the nearest even second.
+For Unix files this is expected to change in the next major releases of
+\fIzip\fP(1L) and \fIunzip\fP.
+.PP
+In addition to individual file information, a default zipfile listing
+also includes header and trailer lines:
+.PP
+.X "Archive: OS2.zip 5453 bytes 5 files"
+.X ",,rw, 1.0 hpf 730 b- i4:3 26-Jun-92 23:40 Contents"
+.X ",,rw, 1.0 hpf 3710 b- i4:3 26-Jun-92 23:33 makefile.os2"
+.X ",,rw, 1.0 hpf 8753 b- i8:3 26-Jun-92 15:29 os2unzip.c"
+.X ",,rw, 1.0 hpf 98 b- stor 21-Aug-91 15:34 unzip.def"
+.X ",,rw, 1.0 hpf 95 b- stor 21-Aug-91 17:51 zipinfo.def"
+.X "5 files, 13386 bytes uncompressed, 4951 bytes compressed: 63.0%"
+.PP
+The header line gives the name of the archive, its total size, and the
+total number of files; the trailer gives the number of files listed,
+their total uncompressed size, and their total compressed size (not
+including any of \fIzip\fP's internal overhead). If, however, one or
+more \fIfile(s)\fP are provided, the header and trailer lines are
+not listed. This behavior is also similar to that of Unix's ``\fCls \-l\fR'';
+it may be overridden by specifying the \fB\-h\fP and \fB\-t\fP options
+explicitly.
+In such a case the listing format must also be specified explicitly,
+since \fB\-h\fP or \fB\-t\fP (or both) in the absence of other options implies
+that ONLY the header or trailer line (or both) is listed. See the
+\fBEXAMPLES\fP section below for a semi-intelligible translation of this
+nonsense.
+.PP
+The verbose listing is mostly self-explanatory. It also lists file
+comments and the zipfile comment, if any, and the type and number of bytes
+in any stored extra fields. Currently known types of extra fields include
+PKWARE's authentication (``AV'') info; OS/2 extended attributes; VMS
+filesystem info, both PKWARE and Info-ZIP versions; Macintosh resource
+forks; Acorn/Archimedes SparkFS info; and so on. (Note
+that in the case of OS/2 extended attributes--perhaps the most common
+use of zipfile extra fields--the size of the stored EAs as reported by
+\fIzipinfo\fP may not match the number given by OS/2's \fIdir\fP command:
+OS/2 always reports the number of bytes required in 16-bit format, whereas
+\fIzipinfo\fP always reports the 32-bit storage.)
+.PP
+Again, the compressed size figures of the individual entries include the
+12 extra header bytes for encrypted entries. In contrast, the archive total
+compressed size and the average compression ratio shown in the summary
+bottom line are calculated \fBwithout\fP the extra 12 header bytes of
+encrypted entries.
+.PD
+.\" =========================================================================
+.SH "ENVIRONMENT OPTIONS"
+Modifying \fIzipinfo\fP's default behavior via options placed in
+an environment variable can be a bit complicated to explain, due to
+\fIzipinfo\fP's attempts to handle various defaults in an intuitive,
+yet Unix-like, manner. (Try not to laugh.) Nevertheless, there is some
+underlying logic. In brief,
+there are three ``priority levels'' of options: the default options;
+environment options, which can override or add to the defaults; and
+explicit options given by the user, which can override or add to
+either of the above.
+.PP
+The default listing format, as noted above, corresponds roughly
+to the "\fCzipinfo \-hst\fR" command (except when individual zipfile members
+are specified).
+A user who prefers the long-listing format (\fB\-l\fP) can make use of the
+\fIzipinfo\fP's environment variable to change this default:
+.TP
+Unix Bourne shell:
+\f(CW\&ZIPINFO=\-l; export ZIPINFO\fP
+.TP
+Unix C shell:
+\f(CW\&setenv ZIPINFO \-l\fP
+.TP
+OS/2 or MS-DOS:
+\f(CW\&set ZIPINFO=\-l\fP
+.TP
+VMS (quotes for \fIlowercase\fP):
+\f(CW\&define ZIPINFO_OPTS "\-l"\fP
+.EE
+.PP
+If, in addition, the user dislikes the trailer line, \fIzipinfo\fP's
+concept of ``negative options'' may be used to override the default
+inclusion of the line. This is accomplished by preceding the undesired
+option with one or more minuses: e.g., ``\fC\-l\-t\fR'' or ``\fC\-\-tl\fR'',
+in this example. The first hyphen is the regular switch character, but the
+one before the `t' is a minus sign. The dual use of hyphens may seem a
+little awkward, but it's reasonably intuitive nonetheless: simply ignore
+the first hyphen and go from there. It is also consistent with the behavior
+of the Unix command \fInice\fP(1).
+.PP
+As suggested above, the default variable names are ZIPINFO_OPTS for VMS
+(where the symbol used to install \fIzipinfo\fP as a foreign command
+would otherwise be confused with the environment variable), and ZIPINFO
+for all other operating systems. For compatibility with \fIzip\fP(1L),
+ZIPINFOOPT is also accepted (don't ask). If both ZIPINFO and ZIPINFOOPT
+are defined, however, ZIPINFO takes precedence. \fIunzip\fP's diagnostic
+option (\fB\-v\fP with no zipfile name) can be used to check the values
+of all four possible \fIunzip\fP and \fIzipinfo\fP environment variables.
+.PD
+.\" =========================================================================
+.SH EXAMPLES
+To get a basic, short-format listing of the complete contents of a ZIP
+archive \fIstorage.zip\fP, with both header and totals lines, use only
+the archive name as an argument to zipinfo:
+.PP
+.EX
+zipinfo storage
+.EE
+.PP
+To produce a basic, long-format listing (not verbose), including header and
+totals lines, use \fB\-l\fP:
+.PP
+.EX
+zipinfo \-l storage
+.EE
+.PP
+To list the complete contents of the archive without header and totals
+lines, either negate the \fB\-h\fP and \fB\-t\fP options or else specify the
+contents explicitly:
+.PP
+.EX
+zipinfo \-\-h\-t storage
+zipinfo storage \e*
+.EE
+.PP
+(where the backslash is required only if the shell would otherwise expand
+the `*' wildcard, as in Unix when globbing is turned on--double quotes around
+the asterisk would have worked as well). To turn off the totals line by
+default, use the environment variable (C shell is assumed here):
+.PP
+.EX
+setenv ZIPINFO \-\-t
+zipinfo storage
+.EE
+.PP
+To get the full, short-format listing of the first example again, given
+that the environment variable is set as in the previous example, it is
+necessary to specify the \fB\-s\fP option explicitly, since the \fB\-t\fP
+option by itself implies that ONLY the footer line is to be printed:
+.PP
+.EX
+setenv ZIPINFO \-\-t
+zipinfo \-t storage \fR[only totals line]\fP
+zipinfo \-st storage \fR[full listing]\fP
+.EE
+.PP
+The \fB\-s\fP option, like \fB\-m\fP and \fB\-l\fP, includes headers and
+footers by default, unless otherwise specified. Since the environment
+variable specified no footers and that has a higher precedence than the
+default behavior of \fB\-s\fP, an explicit \fB\-t\fP option was necessary
+to produce the full listing. Nothing was indicated about the header,
+however, so the \fB\-s\fP option was sufficient. Note that both the
+\fB\-h\fP and \fB\-t\fP options, when used by themselves or with
+each other, override any default listing of member files; only the header
+and/or footer are printed. This behavior is useful when \fIzipinfo\fP is
+used with a wildcard zipfile specification; the contents of all zipfiles
+are then summarized with a single command.
+.PP
+To list information on a single file within the archive, in medium format,
+specify the filename explicitly:
+.PP
+.EX
+zipinfo \-m storage unshrink.c
+.EE
+.PP
+The specification of any member file, as in this example, will override
+the default header and totals lines; only the single line of information
+about the requested file will be printed. This is intuitively what one
+would expect when requesting information about a single file. For multiple
+files, it is often useful to know the total compressed and uncompressed
+size; in such cases \fB\-t\fP may be specified explicitly:
+.PP
+.EX
+zipinfo \-mt storage "*.[ch]" Mak\e*
+.EE
+.PP
+To get maximal information about the ZIP archive, use the verbose
+option. It is usually wise to pipe the output into a filter such as
+Unix \fImore\fP(1) if the operating system allows it:
+.PP
+.EX
+zipinfo \-v storage | more
+.EE
+.PP
+Finally, to see the most recently modified files in the archive, use
+the \fB\-T\fP option in conjunction with an external sorting utility
+such as Unix \fIsort\fP(1) (and \fIsed\fP(1) as well, in this example):
+.PP
+.EX
+zipinfo \-T storage | sort -nr -k 7 | sed 15q
+.EE
+.PP
+The \fB\-nr\fP option to \fIsort\fP(1) tells it to sort numerically
+in reverse order rather than in textual order, and the \fB\-k\ 7\fP option
+tells it to sort on the seventh field. This
+assumes the default short-listing format; if \fB\-m\fP or \fB\-l\fP is
+used, the proper \fIsort\fP(1) option would be \fB\-k\ 8\fP.
+Older versions of \fIsort\fP(1) do not support the \fB\-k\fP option,
+but you can use the traditional \fB\+\fP option instead, e.g.,
+\fB\+6\fP instead of \fB\-k\ 7\fP. The \fIsed\fP(1)
+command filters out all but the first 15 lines of the listing. Future
+releases of \fIzipinfo\fP may incorporate date/time and filename sorting
+as built-in options.
+.PD
+.\" =========================================================================
+.SH TIPS
+The author finds it convenient to define an alias \fIii\fP for \fIzipinfo\fP
+on systems that allow aliases (or, on other systems, copy/rename the
+executable, create a link or create a command file with the name \fIii\fP).
+The \fIii\fP usage parallels the common \fIll\fP alias for long listings in
+Unix, and the similarity between the outputs of the two commands was
+intentional.
+.PD
+.\" =========================================================================
+.SH BUGS
+As with \fIunzip\fP, \fIzipinfo\fP's \fB\-M\fP (``more'') option is overly
+simplistic in its handling of screen output; as noted above, it fails to detect
+the wrapping of long lines and may thereby cause lines at the top of the screen
+to be scrolled off before being read. \fIzipinfo\fP should detect and treat
+each occurrence of line-wrap as one additional line printed. This requires
+knowledge of the screen's width as well as its height. In addition,
+\fIzipinfo\fP should detect the true screen geometry on all systems.
+.PP
+\fIzipinfo\fP's listing-format behavior is unnecessarily complex and should
+be simplified. (This is not to say that it will be.)
+.PP
+.\" =========================================================================
+.SH "SEE ALSO"
+\fIls\fP(1), \fIfunzip\fP(1L), \fIunzip\fP(1L), \fIunzipsfx\fP(1L),
+\fIzip\fP(1L), \fIzipcloak\fP(1L), \fIzipnote\fP(1L), \fIzipsplit\fP(1L)
+.PD
+.\" =========================================================================
+.SH URL
+The Info-ZIP home page is currently at
+.EX
+\fChttp://www.info-zip.org/pub/infozip/\fR
+.EE
+or
+.EX
+\fCftp://ftp.info-zip.org/pub/infozip/\fR .
+.EE
+.PD
+.\" =========================================================================
+.SH AUTHOR
+Greg ``Cave Newt'' Roelofs. ZipInfo contains pattern-matching code
+by Mark Adler and fixes/improvements by many others. Please refer to the
+CONTRIBS file in the UnZip source distribution for a more complete list.