Bogus bugs (not our fault!):
---------------------------

 By far THE BIGGEST source of bug reports to Info-ZIP/zip-bugs is the
 incorrect transfer of zipfiles (or of the UnZip executable itself).
 ALWAYS TRANSFER IN BINARY MODE!  This includes ftp transfers and *both*
 ends of a Kermit connection ("set file type binary").  If your copy
 isn't exactly the same size as the original, you made a mistake.

 Another common source of errors such as "compression method 8 not sup-
 ported" is the existence of an old version of UnZip somewhere in your
 path.  Make sure you're using the version you think you're using; give
 the full path explicitly if necessary.  Executing "unzip" without any
 options will print a help screen, at the top of which is the UnZip
 version number and release date; and executing "unzip -v" without any
 zipfile or other options will give information about what compiler was
 used, the target operating system, any special UnZip options, and the 
 date of compilation--only for version 5.11 and later, though!  (Also,
 under Unix C shell and some Bourne shells, "which unzip" will print 
 the path of the unzip you're actually using.  Under OS/2 and MS-DOS,
 whch21gr.zip [on SimTel mirror sites] will do the same thing; in addi-
 tion, "which -a unzip" will show *all* copies of unzip in your path.)


Bugs (real and/or imagined):
---------------------------

 - MKS Korn shell:  unzip assumes the MKS-style command-line environment
    options are relevant to it, but this is not the case if unzip was called
    by another program (e.g., from a .BAT file).  A fix for this exists for
    Borland compilers but not for MSC, Watcom, djgpp, etc.
 - OS/2:  for paths with one long component, the .LONGNAME EA may be saved for
    all components (waste of disk space):  how to check??
 - VMS:  for extracting to other directories, only the VMS-style "-d [.foo]"
    format is accepted; "-d foo" should also be allowed.  Long filenames are
    not automatically truncated to 39.39.  Even with -o specified, the user
    is queried before overwriting; without -o, there are two levels of query.
 - Novell Netware:  Netware drives may clear the archive bit on extracted
    files under OS/2 and/or MS-DOS.  UnZip always *tries* to set the archive
    bit, however.  [pynq@uchicago, 940527]
 - DEC Ultrix:  on long zipfiles, unzip will sometimes fail (bad CRC, not always
    reproducible); this is apparently due either to a hardware bug (cache mem)
    or OS bug (page faults?) [Igor, Jean-loup, bottom of BUGS.long]
 - Pyramid:  USE_FWRITE causes CRC errors (???) [Kevin]
 - funzip/more/decryption/no-echo bug:  race condition(?) causes terminal to
    be "reset" to no-echo state
 - directory dates/times (special Unix perms?) not restored
 - Macintosh (100200), Atari (020000) external file attributes not interpreted
    correctly (both unzip and zipinfo)
 - pkbug error:  zipfile with incorrect csize and/or ucsize--check for end of
    compressed (csize) data in uncompression routines:
      unreduce.c:    while (((outpos + outcnt) < ucsize) && (!zipeof)) {
    [James Birdsall, Mark, bottom of BUGS.long]
 - OS/2:  directory EAs not restored if directory exists [Kai Uwe, KG27515@uark]
    (subsequent note:  no way to determine which EAs are newer ==> cannot 
    restore without user input)
 - MS-DOS:  Borland executables don't allow other than 80-column, 25/43/50-line
    screen modes (Borland bug) [Michael Stillwell]


Features (possible and/or definite):
-----------------------------------

 - put man pages in more "proper" nroff format
 - ignore case for internal filename match on non-Unix systems, unless file-
    specs enclosed in single quotes
 - save/extract Unix mtime/ctime/atime/UID/GID info (Unix extra field)
 - modify to decompress input stream if part of a pipe, but continue using
    central directory if not (BIG job!)--extended local header capability
 - add zipinfo option(s) to sort alphabetically, by date/time, in reverse, etc.
 - add "near" to global vars [Steve Salisbury, 92.4.21]
 - modify set_file_time routines to share common code (macro?)
 - when listing filenames, use '?' for non-printables? [Thomas Wolff, 92.6.1]
 - add zipinfo "in-depth" option? (check local vs. central filenames, etc.)
 - create zipcat program to concatenate zipfiles
 - assembly-language routines?
 - VM/CMS version (Walter Moore, Phil Howard, Chua Kong Sian, others)
 - add -oo option (overwrite and override)?  no user queries (if bad password,
    skip file; if disk full, take default action; if VMS special on non-VMS,
    unpack anyway; etc.)
 - add -Q[Q[Q]] option (quiet mode on comments, cautions, warnings and errors)?
    forget -oo, or make synonym?  Default level -Q?
 - add OS/2 .INF format helpfiles for UnZip and ZipInfo?
