Bugs (real and/or imagined): --------------------------- - Watcom C getch() broken; password echos (reported to Watcom by K.U.Rommel) - VMS docs out of date - Amiga port broken? - VMS unzip no longer sets permissions correctly - Macintosh file attributes not interpreted correctly (both unzip, zipinfo) - errno declaration conflicts with several compilers' definitions: change logic so undeclared by default? How many systems affected? - (?) add ifndef MODERN around srand, rand prototypes in crypt.c? [James Birdsall, 4/23] - pkbug error: zipfile with incorrect csize and/or ucsize--check for end of compressed (csize) data in uncompression routines: unimplod.c: while ((!zipeof) && ((outpos + outcnt) < ucsize)) { unreduce.c: while (((outpos + outcnt) < ucsize) && (!zipeof)) { (James Birdsall, Mark, bottom of BUGS.long) - if PK signature not found, append .zip and try again without error messages (Jean-loup, others, bottom of BUGS.long) - disk full: a few files clear some pointer; continuing beyond "Continue?" prompt, regardless of answer, kills unzip--stack too small? (doesn't seem to matter) Bug in MSC write() function? Subsequent write code isn't any different from -t option, so unlikely to be bug in uncompress routines... File descriptor bad/close() failure? (workaround: ^C at prompt) - textfile conversions on a PC system add extra CR to lines which already have CR/LF combo; other directions probably don't work, either (Mac/Unix/...): rewrite "dos2unix" and make general - compressed symlinks are allowed: revise symlink code - fix "no errors detected" message for errors occurring *before* extract_or_ test_files(); count errors? differentiate between errors and warnings? Features (possible and/or definite): ----------------------------------- - add -x "exclude following files" option to unzip and zipinfo - make use of FILE_IO_C and similar defines to avoid including unnecessary header files in various modules (unzip.h) - add "near" to global vars [Steve Salisbury, 4/21] - construct CRC table dynamically? [Jean-loup, 5/12] - when listing filenames, use '?' for non-printables? [Thomas Wolff, 6/1] - modify to decompress input stream if part of a pipe, but continue using central directory if not (BIG job!)--extended local header capability - need zipinfo target(s) in makefile.dos - build in capability to check text/binary type and warn if -a (if version < 1.1 and not made on DOS--i.e., not early Info-ZIP versions) - allow wildcards in zipfile name (loop through each one) - test/incorporate Martin Schulz optimization patch (still useful?) - 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? - incorporate Atari patches - rewrite mapname() - modify set_file_time routines to share common code (macro?) - add zipinfo "in-depth" option? (check local vs. central filenames, etc.) - create zipcat program to concatenate zipfiles - create zipfix program to rebuild/salvage damaged zipfiles - assembly-language routines? - add -i (ignore case for internal filename match) option? (maybe not) - CP/M version (Jeffery Foy) - VM/CMS version (Chua Kong Sian, others) - put man pages in more "proper" nroff format - add OS/2 .INF format helpfiles for UnZip and ZipInfo