Added:
vendor/zip/
vendor/zip/current/
vendor/zip/current/BUGS
vendor/zip/current/CHANGES
vendor/zip/current/INSTALL
vendor/zip/current/LICENSE
vendor/zip/current/MANUAL
vendor/zip/current/README
vendor/zip/current/README.CR
vendor/zip/current/TODO
vendor/zip/current/USexport.msg
vendor/zip/current/WHATSNEW
vendor/zip/current/WHERE
vendor/zip/current/acorn/
vendor/zip/current/acorn/GMakefile
vendor/zip/current/acorn/ReadMe
vendor/zip/current/acorn/ReadMe.GMakefile
vendor/zip/current/acorn/RunMe1st
vendor/zip/current/acorn/acornzip.c
vendor/zip/current/acorn/makefile
vendor/zip/current/acorn/match.s
vendor/zip/current/acorn/osdep.h
vendor/zip/current/acorn/riscos.c
vendor/zip/current/acorn/riscos.h
vendor/zip/current/acorn/sendbits.s
vendor/zip/current/acorn/srcrename (contents, props changed)
vendor/zip/current/acorn/swiven.h
vendor/zip/current/acorn/swiven.s
vendor/zip/current/acorn/zipup.h
vendor/zip/current/amiga/
vendor/zip/current/amiga/LMKfile
vendor/zip/current/amiga/README
vendor/zip/current/amiga/amiga.c
vendor/zip/current/amiga/amiga.h
vendor/zip/current/amiga/amigazip.c
vendor/zip/current/amiga/crc_68.a
vendor/zip/current/amiga/deflate.a
vendor/zip/current/amiga/filedate.c
vendor/zip/current/amiga/makefile.azt
vendor/zip/current/amiga/match.a
vendor/zip/current/amiga/match_68.a
vendor/zip/current/amiga/osdep.h
vendor/zip/current/amiga/smakefile
vendor/zip/current/amiga/stat.c
vendor/zip/current/amiga/z-stat.h
vendor/zip/current/amiga/zipup.h
vendor/zip/current/aosvs/
vendor/zip/current/aosvs/aosvs.c
vendor/zip/current/aosvs/make.cli
vendor/zip/current/api.c
vendor/zip/current/api.h
vendor/zip/current/atari/
vendor/zip/current/atari/Makefile
vendor/zip/current/atari/README
vendor/zip/current/atari/atari.c
vendor/zip/current/atari/make_all.mup
vendor/zip/current/atari/make_zip.mup
vendor/zip/current/atari/osdep.h
vendor/zip/current/atari/zipup.h
vendor/zip/current/atheos/
vendor/zip/current/atheos/Contents
vendor/zip/current/atheos/Makefile
vendor/zip/current/atheos/README
vendor/zip/current/atheos/atheos.c
vendor/zip/current/atheos/osdep.h
vendor/zip/current/atheos/zipup.h
vendor/zip/current/beos/
vendor/zip/current/beos/Contents
vendor/zip/current/beos/Makefile
vendor/zip/current/beos/README
vendor/zip/current/beos/beos.c
vendor/zip/current/beos/osdep.h
vendor/zip/current/beos/zipup.h
vendor/zip/current/cmsmvs/
vendor/zip/current/cmsmvs/README.CMS
vendor/zip/current/cmsmvs/README.MVS
vendor/zip/current/cmsmvs/README.MVS.LE
vendor/zip/current/cmsmvs/cczip.exec
vendor/zip/current/cmsmvs/cms.c
vendor/zip/current/cmsmvs/cmsmvs.c
vendor/zip/current/cmsmvs/cmsmvs.h
vendor/zip/current/cmsmvs/cstat.h
vendor/zip/current/cmsmvs/mc.exec
vendor/zip/current/cmsmvs/mvs.c
vendor/zip/current/cmsmvs/mvs.h
vendor/zip/current/cmsmvs/mvs.mki
vendor/zip/current/cmsmvs/pipzip.rexx
vendor/zip/current/cmsmvs/zip.exec
vendor/zip/current/cmsmvs/zip.makefile
vendor/zip/current/cmsmvs/zipcloak.exec
vendor/zip/current/cmsmvs/zipmvsc.job
vendor/zip/current/cmsmvs/zipname.conven
vendor/zip/current/cmsmvs/zipnote.exec
vendor/zip/current/cmsmvs/zipsplit.exec
vendor/zip/current/cmsmvs/zipup.h
vendor/zip/current/cmsmvs/zipvmc.exec
vendor/zip/current/crc32.c
vendor/zip/current/crc_i386.S
vendor/zip/current/crctab.c
vendor/zip/current/crypt.c
vendor/zip/current/crypt.h
vendor/zip/current/deflate.c
vendor/zip/current/ebcdic.h
vendor/zip/current/file_id.diz
vendor/zip/current/fileio.c
vendor/zip/current/globals.c
vendor/zip/current/human68k/
vendor/zip/current/human68k/Makefile
vendor/zip/current/human68k/Makefile.gcc
vendor/zip/current/human68k/crc_68.s
vendor/zip/current/human68k/deflate.s
vendor/zip/current/human68k/human68k.c
vendor/zip/current/human68k/match.s
vendor/zip/current/human68k/osdep.h
vendor/zip/current/human68k/zipup.h
vendor/zip/current/macos/
vendor/zip/current/macos/Contents
vendor/zip/current/macos/HISTORY.TXT
vendor/zip/current/macos/README.TXT
vendor/zip/current/macos/ZipLib.h
vendor/zip/current/macos/ZipSx.h
vendor/zip/current/macos/ZpPrj.hqx
vendor/zip/current/macos/osdep.h
vendor/zip/current/macos/readme.1st
vendor/zip/current/macos/source/
vendor/zip/current/macos/source/VolWarn.h
vendor/zip/current/macos/source/charmap.h
vendor/zip/current/macos/source/extrafld.c
vendor/zip/current/macos/source/getenv.c
vendor/zip/current/macos/source/helpers.c
vendor/zip/current/macos/source/helpers.h
vendor/zip/current/macos/source/macglob.h
vendor/zip/current/macos/source/macopen.c
vendor/zip/current/macos/source/macopen.h
vendor/zip/current/macos/source/macos.c
vendor/zip/current/macos/source/macstuff.c
vendor/zip/current/macos/source/macstuff.h
vendor/zip/current/macos/source/mactime.c
vendor/zip/current/macos/source/mactime.h
vendor/zip/current/macos/source/pathname.c
vendor/zip/current/macos/source/pathname.h
vendor/zip/current/macos/source/recurse.c
vendor/zip/current/macos/source/recurse.h
vendor/zip/current/macos/source/unixlike.c
vendor/zip/current/macos/source/unixlike.h
vendor/zip/current/macos/source/zip_rc.hqx
vendor/zip/current/macos/zipup.h
vendor/zip/current/man/
vendor/zip/current/man/zip.1
vendor/zip/current/match.S
vendor/zip/current/msdos/
vendor/zip/current/msdos/README.DOS
vendor/zip/current/msdos/crc_i86.asm
vendor/zip/current/msdos/makefile.bor
vendor/zip/current/msdos/makefile.dj1
vendor/zip/current/msdos/makefile.dj2
vendor/zip/current/msdos/makefile.emx
vendor/zip/current/msdos/makefile.msc
vendor/zip/current/msdos/makefile.tc
vendor/zip/current/msdos/makefile.wat
vendor/zip/current/msdos/match.asm
vendor/zip/current/msdos/msdos.c
vendor/zip/current/msdos/osdep.h
vendor/zip/current/msdos/zipup.h
vendor/zip/current/os2/
vendor/zip/current/os2/makefile.os2
vendor/zip/current/os2/match32.asm
vendor/zip/current/os2/os2.c
vendor/zip/current/os2/os2acl.c
vendor/zip/current/os2/os2acl.h
vendor/zip/current/os2/os2zip.c
vendor/zip/current/os2/os2zip.h
vendor/zip/current/os2/osdep.h
vendor/zip/current/os2/zip.def
vendor/zip/current/os2/zipup.h
vendor/zip/current/proginfo/
vendor/zip/current/proginfo/3rdparty.bug
vendor/zip/current/proginfo/ZipPorts
vendor/zip/current/proginfo/algorith.txt
vendor/zip/current/proginfo/extra.fld
vendor/zip/current/proginfo/fileinfo.cms
vendor/zip/current/proginfo/infozip.who
vendor/zip/current/proginfo/nt.sd
vendor/zip/current/proginfo/perform.dos
vendor/zip/current/proginfo/timezone.txt
vendor/zip/current/proginfo/txtvsbin.txt
vendor/zip/current/proginfo/ziplimit.txt
vendor/zip/current/qdos/
vendor/zip/current/qdos/IZREADME.SMS
vendor/zip/current/qdos/Makefile.qdos
vendor/zip/current/qdos/Makefile.qlzip
vendor/zip/current/qdos/config.s
vendor/zip/current/qdos/crc68.s
vendor/zip/current/qdos/match.s
vendor/zip/current/qdos/osdep.h
vendor/zip/current/qdos/qdos.c
vendor/zip/current/qdos/qfileio.c
vendor/zip/current/qdos/zipup.h
vendor/zip/current/revision.h
vendor/zip/current/tailor.h
vendor/zip/current/tandem/
vendor/zip/current/tandem/DOIT
vendor/zip/current/tandem/HISTORY
vendor/zip/current/tandem/README
vendor/zip/current/tandem/commacs
vendor/zip/current/tandem/macros
vendor/zip/current/tandem/make
vendor/zip/current/tandem/tandem.c
vendor/zip/current/tandem/tandem.h
vendor/zip/current/tandem/tannsk.h
vendor/zip/current/tandem/tanzip.c
vendor/zip/current/tandem/tanzip.h
vendor/zip/current/tandem/zipup.h
vendor/zip/current/theos/
vendor/zip/current/theos/Makefile
vendor/zip/current/theos/README
vendor/zip/current/theos/_chmod.c
vendor/zip/current/theos/_fprintf.c
vendor/zip/current/theos/_isatty.c
vendor/zip/current/theos/_rename.c
vendor/zip/current/theos/_setargv.c
vendor/zip/current/theos/_stat.c
vendor/zip/current/theos/charconv.h
vendor/zip/current/theos/osdep.h
vendor/zip/current/theos/stat.h
vendor/zip/current/theos/theos.c
vendor/zip/current/theos/zipup.h
vendor/zip/current/timezone.c
vendor/zip/current/timezone.h
vendor/zip/current/tops20/
vendor/zip/current/tops20/make.mic
vendor/zip/current/tops20/osdep.h
vendor/zip/current/tops20/rename.mic
vendor/zip/current/tops20/tops20.c
vendor/zip/current/tops20/zipup.h
vendor/zip/current/trees.c
vendor/zip/current/ttyio.c
vendor/zip/current/ttyio.h
vendor/zip/current/unix/
vendor/zip/current/unix/Makefile
vendor/zip/current/unix/Packaging/
vendor/zip/current/unix/Packaging/README
vendor/zip/current/unix/Packaging/pkginfo.in
vendor/zip/current/unix/Packaging/postinstall
vendor/zip/current/unix/Packaging/preinstall.in
vendor/zip/current/unix/Packaging/prototype
vendor/zip/current/unix/README.OS390
vendor/zip/current/unix/configure
vendor/zip/current/unix/osdep.h
vendor/zip/current/unix/unix.c
vendor/zip/current/unix/zipup.h
vendor/zip/current/util.c
vendor/zip/current/vms/
vendor/zip/current/vms/00binary.vms
vendor/zip/current/vms/00readme.txt
vendor/zip/current/vms/cmdline.c
vendor/zip/current/vms/cvthelp.tpu
vendor/zip/current/vms/descrip.mms
vendor/zip/current/vms/link_zip.com
vendor/zip/current/vms/make_zip.com
vendor/zip/current/vms/makefile.vms
vendor/zip/current/vms/osdep.h
vendor/zip/current/vms/vms.c
vendor/zip/current/vms/vms.h
vendor/zip/current/vms/vms_im.c
vendor/zip/current/vms/vms_pk.c
vendor/zip/current/vms/vms_zip.rnh
vendor/zip/current/vms/vmsdefs.h
vendor/zip/current/vms/vmsmunch.c
vendor/zip/current/vms/vmsmunch.h
vendor/zip/current/vms/vmszip.c
vendor/zip/current/vms/zip_cli.cld
vendor/zip/current/vms/zip_cli.help
vendor/zip/current/vms/zipup.h
vendor/zip/current/win32/
vendor/zip/current/win32/README.NT
vendor/zip/current/win32/README.TZ
vendor/zip/current/win32/crc_i386.asm
vendor/zip/current/win32/crc_i386.c
vendor/zip/current/win32/crc_lcc.asm
vendor/zip/current/win32/gvmat64.asm
vendor/zip/current/win32/lm32_lcc.asm
vendor/zip/current/win32/makefile.a64
vendor/zip/current/win32/makefile.bor
vendor/zip/current/win32/makefile.dj
vendor/zip/current/win32/makefile.emx
vendor/zip/current/win32/makefile.gcc
vendor/zip/current/win32/makefile.ibm
vendor/zip/current/win32/makefile.lcc
vendor/zip/current/win32/makefile.w10
vendor/zip/current/win32/makefile.w32
vendor/zip/current/win32/makefile.wat
vendor/zip/current/win32/match32.asm
vendor/zip/current/win32/nt.c
vendor/zip/current/win32/nt.h
vendor/zip/current/win32/osdep.h
vendor/zip/current/win32/readme.a64
vendor/zip/current/win32/rsxntwin.h
vendor/zip/current/win32/vc6/
vendor/zip/current/win32/vc6/zip.dsp
vendor/zip/current/win32/vc6/zip.dsw
vendor/zip/current/win32/vc6/zipcloak.dsp
vendor/zip/current/win32/vc6/zipnote.dsp
vendor/zip/current/win32/vc6/zipsplit.dsp
vendor/zip/current/win32/win32.c
vendor/zip/current/win32/win32zip.c
vendor/zip/current/win32/win32zip.h
vendor/zip/current/win32/zip.def
vendor/zip/current/win32/zipup.h
vendor/zip/current/windll/
vendor/zip/current/windll/contents
vendor/zip/current/windll/csharp/
vendor/zip/current/windll/csharp/readmeCS.txt
vendor/zip/current/windll/csharp/zip/
vendor/zip/current/windll/csharp/zip/App.ico (contents, props changed)
vendor/zip/current/windll/csharp/zip/AssemblyInfo.cs
vendor/zip/current/windll/csharp/zip/CSharpInfoZip_ZipSample.csproj
vendor/zip/current/windll/csharp/zip/Form1.cs
vendor/zip/current/windll/csharp/zip/Form1.resx
vendor/zip/current/windll/csharp/zip/Zip.cs
vendor/zip/current/windll/csharp/zip/ZipDLLPrintMessageEventArgs.cs
vendor/zip/current/windll/csharp/zip/ZipDLLServiceMessageEventArgs.cs
vendor/zip/current/windll/example.c
vendor/zip/current/windll/example.h
vendor/zip/current/windll/resource.h
vendor/zip/current/windll/structs.h
vendor/zip/current/windll/vb/
vendor/zip/current/windll/vb/VBZIP.vbw
vendor/zip/current/windll/vb/VBZipBas.bas
vendor/zip/current/windll/vb/Vbzip.vbp
vendor/zip/current/windll/vb/Vbzipfrm.frm
vendor/zip/current/windll/vb/readmeVB.txt
vendor/zip/current/windll/visualc/
vendor/zip/current/windll/visualc/dll/
vendor/zip/current/windll/visualc/dll/zip32.dsp
vendor/zip/current/windll/visualc/dll/zip32.dsw
vendor/zip/current/windll/visualc/dll/zip32.mak
vendor/zip/current/windll/visualc/lib/
vendor/zip/current/windll/visualc/lib/zip32.dsp
vendor/zip/current/windll/visualc/lib/zip32.dsw
vendor/zip/current/windll/visualc/lib/zip32.mak
vendor/zip/current/windll/windll.c
vendor/zip/current/windll/windll.h
vendor/zip/current/windll/windll.rc
vendor/zip/current/windll/windll.txt
vendor/zip/current/windll/windll16.def
vendor/zip/current/windll/windll32.def
vendor/zip/current/windll/ziplib.def
vendor/zip/current/windll/zipver.h
vendor/zip/current/zip.c
vendor/zip/current/zip.h
vendor/zip/current/zip232.ann
vendor/zip/current/zipcloak.c
vendor/zip/current/ziperr.h
vendor/zip/current/zipfile.c
vendor/zip/current/zipnote.c
vendor/zip/current/zipsplit.c
vendor/zip/current/zipup.c
Log:
zip 2.3.2 imported
Added: vendor/zip/current/BUGS
==============================================================================
--- (empty file)
+++ vendor/zip/current/BUGS Sun Jun 15 20:45:02 2008
@@ -0,0 +1,9 @@
+This file is likely out of date
+17 May 2006
+
+- zip sometimes crashes on some versions of NetBSD (0.8, 0.9 and early
+ 0.9-current), FreeBSD (<= 1.1) and BSDI (< 1.1) . This is due to a
+ bug in stdio.
+ Upgrading the stdio package in /usr/src/lib/libc/stdio should
+ fix the problem. See *BSD mirrors in src/lib/libc/stdio
+ You must at least replace setvbuf.o in all the libc's with a newer version.
Added: vendor/zip/current/CHANGES
==============================================================================
--- (empty file)
+++ vendor/zip/current/CHANGES Sun Jun 15 20:45:02 2008
@@ -0,0 +1,1308 @@
+------------------------- August 7th 1996 version 2.2a ------------------
+ 1. QDOS port (Jonathan Hudson)
+ 2. win32 volumelabel handling (Paul)
+ 3. VM/CMS clean up (Greg Hartwig)
+ 4. leading "../" in internal filenames are allowed (Paul)
+ 5. System V packages support (John Bush)
+ 6. Fix handling of atx in zipup() (Onno, Greg)
+ 7. Fixed typo that caused zip -R to dump core (Onno)
+ 8. msdos/makefile.dj2: fix for command line too long when linking zip.exe
+ 9. win95 long filename support with djgpp v2 (Onno, Kimio Itoh)
+------------------------- August 9th 1996 version 2.2b ------------------
+ 1. windll: use wiz instead of wizip (Mike)
+ 2. use z->name NOT z->zname to open files (Onno, Mike)
+------------------------ September 1st 1996 version 2.2c ------------------
+ 1. windll: use fprintf instead of putc to send data to std{out,err} (Mike)
+ 2. os2: make borlandc version detection equal to unzip 5.30d (Kai Uwe)
+ 3. use #elif constructions for msdos,os2 and win32 compiler detection (Onno)
+ 4. fix for incorrect free in zip.c (Onno, Mike, Steve)
+ 5. BeBox port from Chris
+ 6. unix/{configure,Makefile} fixes for SCO Xenix 286 (Tom Schmidt)
+ 7. remove zilog entry from unix/Makefile (Onno)
+ 8. man page fixes (Tom Schmidt)
+ 9. SCO ODT {3,5} fixes (Bill Davidsen)
+------------------------ October 8th 1996 version 2.2d ------------------
+ 1. Fix bug in QDOS patch that broke zipsplit.c (Onno, Paul)
+ 2. Fix a couple of warnings from BorlandC (Mike)
+ 3. msdos/makefile.wat: Delete some more files when cleaning up (Paul)
+ 4. store msdos volumelabels without a dot in them (Paul)
+ 5. clean up of unix/{Makefile,configure,packaging} (Tom Schmidt)
+ 6. make QDOS port case independent (Jonathan Hudson)
+ 7. new amiga SASC makefile (Walter Haidinger)
+ 8. don't truncate filenames in win32's in2ex() (Paul)
+ 9. os2/makefile.os2 update for emx 0.9c (Kai Uwe)
+10. password() function for QDOS (Jonathan)
+11. fix the last(?) free() related bug (Mike)
+12. win32: security descriptors operations (Scott Field)
+13. win32: FILE_SHARE_DELETE is not defined in some win32 compilers (Onno)
+14. win32: fix makefile.wat to include nt.c (Onno)
+------------------------ January 17th 1997 version 2.2e ------------------
+ 1. define USE_CASE_MAP in osdep.h for those ports that need it (Onno)
+ 2. define PROCNAME in osdep.h for those ports that need it (Onno)
+ 3. wild() prototype decl only if PROCNAME defined => delete MSVMS
define (Onno)
+ 4. add DOS EMX makefile (E-Yen Tan)
+ 5. include <qdos.h> a little earlier in qdos/qdos.c (Jonathan)
+ 6. add ttyio.o to OBJZ in qdos/Makefile.qdos (Jonathan)
+ 7. remove unused fprintebc define from zip.c (Onno)
+ 8. use the right password routine in ttyio.c for unzip (Mike)
+ 9. BeOS update from Chris
+10. Fix for 'zip -r foo x:' (Paul)
+11. Fix library bug on beos (Chris)
+12. Fix calculating version number (kit...@mix.or.jp, Walter Haidinger)
+13. IsWinNT always returned TRUE (Mike)
+14. Windll update from Mike
+15. Improved crc routines for x86 from Scott Field
+16. Detect in unix/configure if we can use crc_i386.S (Onno)
+17. Fix spurious internal logic error (Paul)
+18. Fix to include directory names on the Acorn when needed (Sergio)
+19. include zip.h in mvs.h (Onno, George Carr)
+20. add workaround for AZTEC C compiler bug to revision.h (Paul, Walter)
+21. MVS doesn't have rmdir (George Carr)
+22. define and use USE_ZIPMAIN for WINDLL en VM_CMS (Onno)
+23. Fixes from Greg Hartwig to make CMS standalone versions possible.
+24. Move OS specific encryption stuff to the os specific directories (Christian)
+25. Change password fetching interface in ttyio and crypt (Christian)
+26. Update emx support for 0.9c (Christian)
+27. Define WINDLL instead of MSWIN (Christian)
+28. Extended time stamp extra field format support (Christian)
+29. Support for rsxnt-emx 0.9c win32 compiler (Christian)
+30. Use izshr017b (Christian)
+------------------------ March 11th 1997 version 2.2f ------------------
+ 1. Move makefile.emx, rsxwinnt.h and zip.def to win32 subdir (Kai Uwe)
+ 2. Add win32 target to makefile.os2 to allow cross compilation (Kai Uwe)
+ 3. Fix NTSD_EAS link time failures with win32 (Paul)
+ 4. Fix buffer freed too early in password verification code (Mike)
+ 5. Remove unix/zipgrep and man/zipgrep.1 (san...@ctv.es)
+ 6. Only use crc_i386.o when we're using an x86 (Onno, Mark)
+ 7. Remove carriage returns from amiga/crc_68.a (Paul)
+ 8. New windll from Mike
+ 9. Fix typo in os2/os2zip.c (Kai Uwe)
+10. Don't use ctime (last file status change) for unix and qdos cross compile
+ (Greg)
+11. added gccwin32 crosscompilation target (RSXNT) to os2/makefile.os2
(Kai Uwe)
+12. fixed the OS/2 file attribute and time stamp generation for zipping
+ stdin ("-") (Kai Uwe)
+13. fixed the atime and ctime stat fields for the OS/2 Watcom C library
+ (Kai Uwe)
+14. added atime and ctime support for the UT extra field when
generated under
+ OS/2, the atime and ctime values are only stored when zipping (Kai Uwe)
+15. qdos patches from Jonathan Hudson mainly for extended time flag handling
+16. amiga aztec compiler bug workaround (Paul)
+17. fix -v output of zipcloak, zipnote and zipsplit (Paul)
+18. new amiga/makefile.azt with targets for debug versions (Paul)
+------------------------ March 31st 1997 version 2.2g ------------------
+ 1. remove -I/usr/local/include from unix/Makefile (Chris)
+ 2. Update versinfolines in revision.h (Greg)
+ 3. change 1U to 0x1 to accomodate non ANSI compilers (Onno, Rodney Brown)
+ 4. win32zip.c: cast buffer parameter in memcompress() to char * (Mike)
+ 5. remove beos/zipgrep (Chris)
+ 6. correct the -e password verification check in zip.c (Christian)
+ 7. use ZCONST instead of const in the generic code. (Christian)
+ 8. fix mktime timezone correction when time is near to daylight/nodaylight
+ switch points. (Christian)
+ 9. correct dependencies in makefile.os2 (Christian)
+10. use a more sensible default for iztime.ctime than "0" when system
does not
+ not support creation time stamps. (Christian)
+11. fix VMS_PK_EXTRA function interface declarations. (Christian)
+12. implement atime/ctime support in win32. (Christian)
+13. win32/win32.c: replacement getch() for Watcom. (Paul)
+14. win32/makefile.wat: debug object files kept separate. (Paul)
+15. msdos/makefile.wat: debug object files kept separate. (Paul)
+16. Fix extended time defines for the acorn. (Sergio)
+17. Define PROCNAME() in acorn/osdep.h (Sergio)
+18. Ignore exit status of ${INSTALL_D} in unix/Makefile (Chris)
+19. Add Metroworks and BEOS info to version() in several files (Chris)
+20. Move defines for the password fetch to zip.h (Christian)
+21. Support the obsolete version rsxnt 1.1 / emx 0.9b (Christian)
+22. Remove obsolete "#define PROCNAME ..." from cmsmvs/cmsmvs.h (Christian)
+23. Fix extended time defines for qdos (Jonathan Hudson)
+24. Use watcom getch() from unz530q in win32/win32.c (Onno)
+25. Don't install zipgrep via the unix package tools (John Bush)
+26. use izshr021 (Onno)
+27. Fix zipnote: use iname not zname in zipnote.c (Onno)
+28. Create proginfo directory (Christian)
+------------------------ May 5th 1997 version 2.2h --------------------
+ 1. Fix vms/zipup.h: iztime --> iztimes (Onno, Mike Freeman)
+ 2. Remove windll/wizdll.def (Mike)
+ 3. Add a couple of external variable declaration to windll.h (Mike)
+ 4. Remove zipgrep from install in unix/Makefile (Onno)
+ 5. Make updating .zip files with extended time fields possible (Kai Uwe)
+ 6. Delete beos/Makefile.gcc, beos/Makefiles handles both compilers (Chris)
+ 7. Fixes for unused variables (Chris)
+ 8. Added very simplistic example how to load and call the windll (Mike)
+ 9. Updated windll documentation to note this example (Mike)
+10. Removed an unused member of a structure in windll (Mike)
+11. Add BUGS instead of infozip.who and algorith.doc with the packaging
+ tools (John Bush)
+12. tailor.h: increment NUM_HOSTS to keep in sync with UnZip (Christian)
+13. win32/osdep.h: remove NO_SECURE_TESTS define (Christian)
+14. zip.h: add declaration for free_crc_table() (Christian)
+15. windll: move everything that's not windows specific into api.* (Mike)
+16. use iname when checking for directory names in zipfile.c (Sergio)
+17. improved mktime.c with better error checking (Christian)
+18. improved crc routines (Christian, Rodney Brown)
+19. get the -z option working again (Onno, Brad Clarke)
+20. define BROKEN_FSEEK and seekable() for those systems where fseek()
+ always returns 0 (== OK) (Onno, Jeffrey Altman)
+------------------------ May 10th 1997 version 2.2i --------------------
+ 1. win32's seekable should only check for FILE_TYPE_DISK (Onno,
Jeffrey Altman)
+ 2. add (ulg) cast to zipbeg = ~0 in zipfile.c (Steve)
+ 3. seekable() *really* belongs in flush_block, keep it there (Onno)
+ 4. seekable() calls fseekable(FILE *) (Onno)
+ 5. define HAVE_FSEEKABLE if a port has their own fseekable (Onno)
+ 6. WatCom doesn't have _get_osfhandle, use _os_handle instead (Paul)
+ 7. upgrade to Mike's latest windll sources (Mike)
+ 8. add -P option so you can specify a password on the commandline (Onno)
+ 9. Get -@ working again (Onno)
+10. emx+RSXNT doesn't know about _get_osfhandle() (Kai Uwe)
+11. fix a couple of typos in the OS/2 makefiles (Kai Uwe)
+12. fix initialization bug in windll code (Mike)
+13. tweak deletedir for RISC OS (Sergio)
+14. RISCOS doesn't know about fstat() (Sergio)
+15. Remove acorn/acorn (Sergio)
+16. Delete debugging statements from version_local() in msdos.c (Greg)
+17. Fix huge bug in readzipfile() (Onno)
+------------------------ May 18th 1997 version 2.2j --------------------
+ 1. Add missing ';' after return ZE_PARMS in zip.c (Mike)
+ 2. Remove obsolete 'struct stat st' in zipfile.c (Onno)
+ 3. Get Amiga SFX handling working again (Paul)
+ 4. Get zip -A working again (Onno)
+ 5. Change an && to & in zipfile.c (Johnny)
+ 6. Fix handling of empty sfx archives (Onno, Mike)
+ 7. Remove experimental entries from the makefiles (Jean-loup)
+ 8. Add exit codes to the manual page (Onno)
+ 9. Remove lines from the help screen that contain lesser used options (Onno)
+------------------------ June 8th 1997 version 2.2k --------------------
+ 1. use zip -t ddmmyyyy for year 2000 stuff (Greg)
+ 2. zip -@ only handles ONE filename per line (Jean-loup)
+ 3. beos support for DR9 filesystem and symlinks (Chris)
+ 4. VB support for windll (Mike)
+------------------------ June 10th 1997 version 2.2l -------------------
+ 1. beos filetype support (Chris)
+ 2. fill the buffer in getnam() to get it working again (Onno)
+ 3. implement -x@filename and -i@filename (Onno)
+------------------------ June 22nd 1997 version 2.2m -------------------
+ 1. Add a ; after de nextarg label in main() (Onno, Erik Baatz)
+ 2. Initialize p to NULL in get_filters() (Onno, Frank Donahoe)
+ 3. Fix typo in first if statement in filetypes() (Johnny Lee)
+ 4. zip -A works again (Onno, Greg)
+ 5. don't free zipbuf for VMS and CMS_MVS in main() (Onno, Mike Freeman)
+ 6. fix make_zip.com, link_zip.com and vmsdefs.h for gcc 2.6.3 on VMS (Onno)
+ 7. clarify -g option in the man page (Jean-loup)
+------------------------ July 6th 1997 version 2.2n -------------------
+ 1. use local in readzipfile2() declaration (Onno, Mike Freeman)
+ 2. return values with windll in get_filters() (Mike)
+ 3. a couple of minor patches for BEOS (Chris)
+ 4. zip -g works again (Onno, Chris)
+ 5. Some more Visual Basic dll support (Mike)
+ 6. Fix stack overflow in readzipfile() for DOS (Onno, Michael Mauch)
+------------------------ August 19th 1997 version 2.2o -------------------
+ 1. beos README and Makefile tweaks from Chris.
+ 2. Syntax corrections for README and man/zip.1 (Frank Donahoe)
+ 3. Use name not iname when deleting directories in trash() (Christian)
+ 4. change several wkuvx1 to lists in e-mail addresses (Christian)
+ 5. default to PK style extra fields for VMS (Christian)
+ 6. use izshr023 (Christian)
+ 7. replace buggy time library functions (Walter Haidinger, Paul, Christian)
+ 8. in2ex() and stat() are needed also when UTIL isn't defined (Greg Hartwig)
+ 9. don't use type=record in fopen() for MVS and CMS (Greg Hartwig)
+10. Change P and K literals to hex for EBCDIC systems (Greg Hartwig)
+11. Add output path support for CMS and MVS (Greg Hartwig)
+12. Add memtoasc and memtoebc for EBCDIC systems (Greg Hartwig)
+13. Handle comments correctly to fix zipnote for CMS and MVS (Greg Hartwig)
+14. Add -tt option (do not operate on files after date mmddyy) (Christian)
+15. move alloc routines for DOS into the !UTIL block (Christian)
+16. move UTIL blocks and version_local() functions to a more logical place
+ (Christian)
+17. Handle -P, -R, -x@, -i@ and -tt for the VMS CLI (Christian)
+18. Update VMS help file with the new options (Christian)
+19. Use iname in MATCH, not zname (Jonathan Hudson)
+20. windll: more Visual Basic support (Mike)
+21. windll: more project makefiles (Mike)
+22. windll: insert Zip in front of global variable names (Mike)
+------------------------ August 25th 1997 version 2.2p -------------------
+ 1. Remove unused flags from LFLAGS2 in unix/Makefile (Onno)
+ 2. SunOS make bug: change unix_.o rule in unix/Makefile (Onno, Mike Freeman)
+ 3. ZipIsWinNT() instead of IsWinNT() in zip.h (Mike)
+ 4. Fix -t and -tt behaviour for windll (Mike)
+ 5. Remove windll makefiles that are now elsewhere (Mike)
+ 6. BEOS: preserve file attributes associated with symbolic links (Chris)
+ 7. No need to use in2ex() for ziputils (Christian)
+ 8. Fix comment handling for EBCDIC systems (Christian)
+ 9. EBCDIC conversion for entry names read from zipfile in UTIL mode (Christian)
+10. Fix "fatal" error messages on EBCDIC systems (Christian)
+11. zipnote.c: Fix handling of entry name changes for EBCDIC systems (Christian)
+12. removed a large part of "dead" code from ziputils version (Christian)
+13. use z->iname in comparison functions for sorting (Christian)
+14. new installation utils for the acorn (Sergio)
+15. use LSSTAT in set_extra_field for unix and beos (Onno)
+16. perror(z->zname) instead of perror("zip warning") (Onno, Geoff Pennington)
+17. Amiga SFX should work again (Paul)
+18. refer to zip22 in install.doc (Frank Donahoe)
+------------------------ September 10th 1997 version 2.2q -------------------
+ 1. Change .doc to .txt, these aren't MS-Word documents (John D. Mitchell)
+ 2. Change msdos$_(OBJ) to msdos_$(OBJ) (Kai Uwe)
+ 3. Fix a couple of amiga related glitches (Paul)
+ 4. Support for DOS packed .exe files in makefile.dj2 (Frank Donahoe)
+ 5. Change warning message for zip -A (Greg)
+------------------------ September 29th 1997 version 2.2r -------------------
+ 1. Fix make svr4package (Eric Baatz)
+ 2. Fix VMS warning (Mike Freeman, Christian)
+ 3. Clean up beos gcc port and beos README (Chris)
+-------------------------- October 6th 1997 version 2.2s --------------------
+ 1. Change lpPrint to lpZipPrint for windll (Mike)
+ 2. Change lpPassword to lpZipPassword for windll (Mike)
+ 3. Amiga timezone fixes (Paul)
+ 4. WatCom C 11.0 makefile fixes (Paul)
+ 5. Tandem port from Dave Smith
+ 6. Corrections and updates for install.txt (Christian)
+ 7. Minor VMS README update (Christian)
+-------------------------- October 12th 1997 version 2.2t --------------------
+ 1. qdos compiler bug workaround (Jonathan)
+ 2. prevent storing qdos specific filenames that exceed filesystem limits
+ (Jonathan)
+ 3. fix undelimited comment in fileio.c (Frank Donahoe)
+ 4. disable storing of symlinks in BEOS until OS support is available (Chris)
+ 5. Init hash_head to 0 in amiga/deflate.a (Paul)
+ 6. Upgrade to izshr025 (Christian)
+ 7. don't add ".zip" to ZIP name for TANDEM (Dave Smith)
+ 8. use zipup.h not tandem.h in zipup.c (Dave Smith)
+ 9. rename history to CHANGES (Onno)
+10. rename install.txt to INSTALL (Onno)
+11. rename zip.txt to ZIPMAN (Onno)
+12. create WHATSNEW (Onno)
+-------------------------- October 15th 1997 version 2.2u --------------------
+ 1. Use Info-ZIP instead of Info-Zip (Christian)
+ 2. Note recent filename changes in several files (Christian)
+ 3. Remove a couple of items from the TODO list (Christian, Onno)
+ 4. Add windll port, zip -t yyyymmdd and zip -R to WHATSNEW (Christian)
+ 5. VMS documentation cleanups and clarifications (Christian)
+ 6. dist entry in unix/Makefile (Onno)
+ 7. remove duplicate amiga/timezone.txt (Christian)
+ 8. rename ZIPMAN to MANUAL and update a couple of files regarding
this (Onno)
+-------------------------- October 24th 1997 version 2.2v --------------------
+ 1. izshr026: in WHERE wiz40 instead of wiz30 (Christian)
+ 2. izshr026: another couple of Info-ZIP spelling fixes (Christian)
+ 3. Remove zipgrep from the makefiles that still had it (Christian)
+ 4. Update makefiles to handle the MANUAL renaming change (Christian)
+ 5. Fix the last daylight savings bug on the Amiga (Paul)
+ 6. Fix the SCO Unix specialty detection in unix/configure (Onno,
+ bug reported by Bo Kullmar for Solaris 2.6 and with uname -X output
+ for SCO Unix from k...@apisys.com and dgs...@vnet.ibm.com)
+ 7. Update WHERE and amiga/time_lib.c from unzip 5.32g (Greg)
+-------------------------- October 26th 1997 version 2.2w --------------------
+ 1. Additional +Onolimit check in unix/configure (Onno, Peter Jones)
+ 2. Use ZIPERR macro instead of ziperr (Christian)
+ 3. initialize z->lflg for zip entries without extra field (Christian)
+ 4. "local (+ locextend)" vs. "central" header consistency check (Christian)
+ 5. Override local header values with central header values with -A
+ and differences between these headers (Christain)
+ 6. made "deltaoff" signed long; offset adjustment may be negative (Christian)
+ 7. fix a number of "wild" deallocation bugs (Christian)
+ 8. When zipping from a FAT drive (only 8.3 DOS names) under OS/2 or
+ WIN32, set z->vem to "OS_DOS | <real zip version number>".
+ Mark as "made by DOS PKZIP 2.0" only when dosify was requested. (Christian)
+ 9. DOS port should not store fake unix style external attributes. (Christian)
+10. amiga/time_lib.c from izshr028 (Christian)
+-------------------------- October 31st 1997 version 2.2y --------------------
+ 1. amiga/time_lib.c from izshr029 (Christian)
+ 2. Turbo C++ version code clarification (E-Yen Tan)
+ 3. Fix spelling in cmsvms/zipname.conven (Rodney Brown)
+ 4. Fix memset check in unix/configure for Unixware 2.1.1 (Rodney Brown)
+ 5. Forward declaration fixes for HP-UX bundled compiler (Rodney Brown)
+-------------------------- November 3rd 1997 version 2.2 --------------------
+ 1. Update WHERE (Greg).
+-------------------------- January 4th 1998 version 2.21a -------------------
+ 1. BSD friendly version of version_local() in unix/unix.c (Onno)
+ 2. No NT versions in DOS version_local() (Steve Salisbury)
+ 3. -t mmddyyyy instead of -t ddmmyyyy in WHATSNEW (Walter Haidinger)
+ 4. use generic fseekable() for rsxnt (Christian)
+ 5. Fix MSC 8.x warnings (Christian, Steve Salisbury)
+ 6. win32 Borland C++ makefile (E-Yen Tan)
+ 7. Tandem doesn't know about extensions like .zip,.arj, ... (Dave Smith)
+ 8. Use dosmatch for EMX and DJGPP too (Christian)
+ 9. dummy djgpp startup functions to remove command line globbing and
+ recognition of environment variables from djgpp.env (Christian)
+10. include DJGPP_MINOR in DOS version_local() (Christian)
+11. TC 2.0 doesn't have mktime() (Christian, m...@earthling.net)
+12. VMS: rename opendir() to zopendir() so avoiding name clash with
+ VMS 7.x POSIX libraries (Christian, Martin Zinser)
+13. Add support for VMS DEC C V 5.6 features (Christian)
+14. Use iname for comparison in check_dup (Christian Spieler,
Christian Michel)
+15. Fix access to uninitialized ioctx records in vms_get_attributes()
+ Christian, Robert Nielsen)
+16. Parenthesis around MAX_MATCH>>1 in match.S (Greg)
+17. Use strchr() not strrchr() for -i and -x to get -i@ and -x@ really
+ working (Onno, Kai Uwe)
+18. add chmod statements to unix/Makefile (Quentin Barnes)
+19. Windll: handle both -r and -R (Mike)
+20. Windll: general error handler in main() via setjmp/longjmp (Mike)
+21. Don't allow zip -...@x.lst foo.zip (Onno)
+22. vms/link_zip.com: use .eqs. not .nes. when checking with f$search
+ for the zip AXP object library (David Dachtera)
+23. rsxnt 1.3.1 fixes (E-Yen Tan)
+-------------------------- January 20th 1998 version 2.21b -------------------
+ 1. Bigger PATH_MAX for win32's windll (Mike)
+ 2. Update windll.txt w.r.t. PATH_MAX (Mike)
+ 3. Amiga SAS/C fixes (Walter, Paul)
+ 4. zip -i@ and -x@ should *really* work now ...... (Onno)
+-------------------------- February 20th 1998 version 2.21c -------------------
+ 1. make -f unix/Makefile qnx needs LN=ln in its options (Chris)
+ 2. Support Metroworks Codewarrior/x86 on BEOS (Chris)
+ 3. Add Norbert Pueschel to proginfo/infozip.who (Walter)
+ 4. Use big endian for Be types (Chris)
+ 5. zip -i and -x were broken by the -i@ fix last time around (Christian)
+ 6. win32 stat bandaid (Paul)
+ 7. acorn filetype and timestamp fixes (Sergio, D. Krumbholz)
+ 8. update to izshr30 (Christian)
+ 9. Support for NTSD in the RSXNT environment (Christian)
+10. restructure readzipfile() (Christian)
+11. Where needed define MATCH in osdep.h (Christian)
+12. version_local() fixes for RSXNT (Christian)
+13. New vmsmunch.c (Christian)
+-------------------------- March 15th 1998 version 2.3a -------------------
+ 1. Fixes for the windll API (Mike)
+ 2. Use CPUTYPE in BorlandC Makefile for DOS (E-Yen Tan)
+ 3. BEOS: -rostr not available for the x86 compiler (Chris)
+ 4. preserve file attributes of a symlink on BEOS (Chris)
+ 5. New VM/CMS README.CMS and version_local() (Ian Gorman)
+ 6. INSTALL fixes from Takahiro Watanabe
+ 7. OS/390 port from Paul von Behren
+ 8. new api.h from Mike
+-------------------------- April 19th 1998 version 2.3b -------------------
+ 1. Improve Tandem file I/O performance (Dave Smith)
+ 2. New VM/CMS README.CMS and version_local() (Ian Gorman)
+ 3. cygwin32 port from Cosmin Truta
+ 4. Workaround for tasm32 5.0 bug in win32/crc_i386.asm (Cosmin Truta)
+ 5. win32/match32.asm fixes for tasm 5.0 (Cosmin Truta)
+ 6. simplify OS/390 port (Christian)
+ 7. win32 timezone handling fixes (Christian)
+ 8. fix 40-bit time conversion on the acorn (Sergio and Christian)
+ 9. strip network part from UNC type filenames (Christian)
+10. Makefile for OpenMVS (Ian Gorman)
+11. Use the Watcom getch() for cygwin32 (Christian)
+12. Borland C++ 5.x added to win32's version_local() (Cosmin Truta)
+13. Borland C++ needs tzset() in win32 (Christian, Cosmin Truta)
+-------------------------- May 21st 1998 version 2.3c -------------------
+ 1. Better error messages for -i and -x (Christian)
+ 2. Win32 stat() wrapper needs dos2unixtime (Christian,Paul,Mike)
+ 3. DJGPP: use _chmod to handle LFN attributes correctly (Michael Mauch)
+ 4. Fix Borlandc warnings (Mike)
+ 5. win32/makefile.bor fixes from Michael Mauch
+ 6. win32/makefile.{dj,emx} fixes from E-Yen Tan
+ 7. Use izshr031 (Christian)
+ 8. CMS: use RECFM=V LRECL=32760 by adding "byteseek" (Greg Hartwig)
+ 9. Check external name for trailing "/" (Greg Hartwig)
+10. More specific info in CMS version_local() (Greg Hartwig)
+11. Changed usage info to refer to "fm" rather than "path" on CMS
(Greg Hartwig)
+12. No more "extra data" messages when using the same OS (Greg Hartwig)
+13. Rewritten README.CMS, one version for ZIP and UNZIP (Greg Hartwig)
+14. DOS/OS2/WIN32/UNIX: ex2in() strips off "//host/share/" from UNC
names (SPC)
+-------------------------- June 23rd 1998 version 2.3d -------------------
+ 1. Fixed Win32's stat() bandaid handling of time stamps (SPC)
+ 2. General fix of file selections for DELETE and FRESHEN action (SPC)
+ 3. CMS_MVS: Use ASCII coding for TIME extra field ID (SPC)
+ 4. EBCDIC: Repaired bogus CMS_MVS fix in zipup.c; check the internal
+ name for trailing (ASCII) '/' to detect directory entries (SPC)
+ 5. Use explicit ASCII coding when comparing or setting chars in iname (SPC)
+ 6. Fixed win32/makefile.bor, win32/makefile.dj (support NTSD),
+ win32/makefile.emx (SPC)
+ 7. Replaced win32/makefile.cyg by win32/makefile.gcc, containing new
+ support for mingw32 GCC environment (SPC)
+ 8. Use izshr032 (SPC)
+ 9. Modified zipup.c to hold (un)compressed lengths in "ulg"
variables, in
+ an attempt to support handling of huge (>2GByte) files. (SPC)
+10. Removed some duplicate #defines from api.h, they are now in
crypt.h (SPC)
+11. Reenabled "extra data size" info messages in noisy mode for all systems
+ except RISCOS and CMS_MVS (SPC)
+12. For EMX 0.9c, the runtime lib contains a working mktime(), use it (SPC)
+13. Miscellanous cosmetic changes (SPC)
+14. Move win32/makefile.emx to msdos (E-Yen Tan)
+15. make api.h work with zcrypt2.8 (Mike)
+16. define ydays differently in api.h to avoid linking problems (Mike)
+17. New windll.txt (Mike)
+18. win32 lcc patches (E-Yen Tan)
+19. win32 lcc makefile (E-Yen Tan)
+20. Multiple inclusion bug: no malloc.h when using lcc-win32 (E-Yen Tan)
+21. New VB support files for windll (Mike Le Voi, Raymond King)
+22. MacOS port by Dirk Haase
+-------------------------- August 1st 1998 version 2.3e -------------------
+ 1. Generalized check for validy of TZ timezone setup info, similar to
+ UnZip; use it on AMIGA and MSDOS, as before. (SPC)
+ 2. Apply TZ validy check on OS/2 and enable creation of UT e.f. (SPC)
+ 3. BEOS: New Makefile, updates for README and Contents (Chris Herborth)
+ 4. beos/beos.c: declare some private functions as "local" (SPC)
+ 5. Include memcompress() code only for ports that make use of it, controlled
+ by preprocessor symbol ZP_NEED_MEMCOMPR (SPC)
+ 6. cmsmvs/README.CMS fix: Zip archive entries to be extracted into var-length
+ records CMS files should >>NOT<< contain binary data ... (SPC)
+ 7. crc32.c, crctab.c: the crc polynom table is ZCONST (SPC)
+ 8. trees.c: fixed a bug in the deflate algorithm that limited the compressed
+ size of an archive member to 512 MByte (SPC)
+ 9. deflate.c: Integrated the changes found in zlib that are
neccessary to make
+ the deflate algorithm deterministic; modified msdos/match.asm to take
+ care of the "nice_match" global no longer being constant. (SPC)
+10. deflate.c, trees.c, zipup.c: Reorganized and simplified deflate's
+ compressed output buffer handling. I/O and compression code are now
+ separated more cleanly. (SPC)
+11. Killed bits.c by moving its contents into trees.c resp. zipup.c;
+ synchronized all Makefiles and Make procedures with this change. (SPC)
+12. Integrated support for optionally replacement of deflate and crc32 by
+ public domain zlib code. (SPC)
+13. Synchronize the different variants (UNIX/GNU C, OS/2, WIN32) of i386
+ assembler replacement for deflate's longest_match() (SPC)
+14. Moved the EMX+rsxnt Makefile.emx from msdos/ back into win32/ (SPC)
+15. Restored a separate Makefile.emx for DOS; on DOS, some make
programs may
+ have difficulties with recursive invokation (SPC)
+16. Fixed the "include header mess" of the new MACOS port and removed the
+ "work-around hacks" caused by these bad MACOS .h-file includes (SPC)
+17. Integrated Dirk Haase's beta4 (27-Jun-98) release of MacZIP (Dirk Haase)
+18. Added support for MS Quick C in the MSDOS version_local() report (SPC)
+19. Added WIN32 rsxnt targets linking against the emx crtl DLL to Makefile.emx
+ in os2/ and win32/ (SPC)
+20. Fixed typo in os2/os2.c wild() function. (Kai Uwe Rommel)
+21. Removed ChangeNameForFAT() from os2/os2.c in2ex() to fix problem with
+ long filename support. (Kai Uwe Rommel)
+22. os2/os2zip.[ch]: correct type of DOS-style timestamp data is "ulg" (SPC)
+23. vms/cmdline.c: Removed wrong ';' behind if condition (Johnny Lee)
+24. VMS: Preliminary preparations in C code for supporting GNU C on OpenVMS
+ Alpha (Onno van der Linden, Christian Spieler)
+25. VMS: Fixed check against adding zipfile to itself in fileio.c (SPC)
+26. WIN32: Added lcc-Win32 variants of i386 assembler code for crc32() and
+ longest_match(). (SPC)
+27. WIN32: Removed bogus type-cast in assignment to statb st_mode
member (SPC)
+28. zip.c: Fixed MACOS-related typo that broke "-@" command option (SPC)
+29. zipup.c: Fixed messed-up expression for assignment to z->ver (SPC)
+30. MACOS extra fields: check realloc return values (Onno, Johnny Lee)
+31. Fix the PUTBYTE macro in trees.c: >= instead of < (Onno)
+-------------------------- September 6th 1998 version 2.3f -------------------
+ 1. Add zp_tz_is_valid to globals.c (Onno, Frank Donahoe)
+ 2. Updated tandem files from Dave Smith
+ 3. Windll: allow comments to zip archive with VB (Mike)
+ 4. Windll: add support for -b and update the documentation (Mike)
+ 5. win32: use wbS for FOPW to handle large zip files better (Steve Miller)
+ 6. MVS fix: use fseek();clearerr() instead of rewind() (Onno, Lee Burton)
+ 7. Updated VB examples for windll (Mike)
+ 8. Tandem: use UTC timestamps and GID/UID in extra field (Dave Smith)
+ 9. Tandem: handle -o option (Dave Smith)
+10. default for ZCONST is const in tailor.h, override in osdep.h (Onno)
+11. additional Macintosh options in zip.c (Dirk Haase)
+12. additional Macintosh options in zip.1 and MANUAL (Onno, Dirk Haase)
+13. Integrate Beta 5 of the Macintosh Port (Dirk Haase)
+-------------------------- October 27th 1998 version 2.3g -------------------
+ 1. zip_tz_is_valid should be zp_tz_is_valid (Kai Uwe)
+ 2. MVS native (not OE) beta fixes (Keith Owens)
+ 3. LynxOS support from Giuseppe Guerrini
+ 4. MVS already has stat() and fstat() so use 'em (Keith Owens)
+ 5. MVS fix in readzipfile() for new, unopened dataset without EOF marker
+ (Keith Owens)
+ 6. Remove 16-bit stuff from windll/windll.rc (Mike)
+ 7. Windll: Use hCurrentInst not hInst (Mike)
+ 8. In util.c compare strchr() return value with NULL (Onno, Frank Donahoe)
+ 9. unix/unix.c: initialize variable t in ex2in() (Onno, Frank Danahoe)
+10. Remove windll/borland subdirectory (Mike)
+11. Really fix extra field realloc() for BeOS and MacOS (Christian)
+12. Fix the dj2 LFN related access violation bug (Christian, Joe Forster)
+13. proginfo/3rdparty.bug: Added more info about other Zip clone's bugs.
+14. The global copyright definitions in revision.h now depend on DEFCPYRT
+ (Christian).
+15. tandem/macros: removed obsolete object file references (Christian)
+16. fix memory leak with the "filter" patterns (Christian, Leah Kramer)
+17. zip.c: completed the support for MacOS specific -N (Christian)
+18. reorganized the Mac specific help screen code (Christian)
+19. zipup.c: corrected the USE_ZLIB code to emit "stored" entries under
+ the same conditions as the "native deflate" code (Christian)
+20. A couple of vars that will never be negative should be unsigned (Christian)
+-------------------------- November 18th 1998 version 2.3h -------------------
+ 1. DJGPP: When compressing from stdin don't set binary mode if stdin is
+ a terminal (E-Yen Tan)
+ 2. Fix signed/unsigned comparisons in fileio.c, util.c and zipcloak.c
+ (Frank Donahoe)
+ 3. Move macgetch() prototype from macos/source/macos.c to macos/osdep.h
+ (Christian)
+ 4. _doserrno should have type int, not unsigned int (Christian)
+ 5. In zipfile.c init a file pointer with NULL to fix gcc warning (Christian)
+ 6. Upgrade to MacOS beta 7 (Dirk Haase)
+ 7. Move the #pragma statements from generic sources to cmsmvs.h (Christian)
+ 8. Support for QNX/Neutrino 2.0 (Chris)
+ 9. Default to -r in help screen add -R at the bottom (Chris)
+10. Clean up Makefile for BeOS R4 on x86 (Chris)
+11. Beos: If not storing symlinks store attributes of symlink target (Chris)
+12. Use izshr037 (Christian)
+13. Remove ZIPERR() macro from in {msdos,win32}/osdep.h (Christian)
+14. win32/win32.c: Fix 1-day offset in non-64bit FileTime2utime() (Christian)
+15. win32: enable 64-bit FileTime2utime() for MS VC++ >= 5.0 (Christian)
+16. cygwin32 only has _P_WAIT (Thomas Klausner)
+17. msname() should *really* ignore illegal characters (Thomas Klausner)
+18. Fix a missing ')' in Opendir() from win32zip.c (Thomas Klausner)
+-------------------------- December 5th 1998 version 2.3i -------------------
+ 1. Remove the #pragma statements that were forgotten the first time (Ian)
+ 2. Remove obsolete macos/source/CharMap.h (Steve Salisbury)
+ 3. isatty(fileno(zstdin)) in zipup.c should be isatty(zstdin)
+ (Onno, E-Yen Tan)
+ 4. several "shut up warnings from compiler" fixes (Christian)
+ 5. several cosmetic source changes (Christian)
+ 6. win32: make NTSD handling to be robust against alignment and structure
+ padding problems (Christian)
+ 7. Apply don't set binary mode when stdin is a terminal in zipup.c for
+ MSDOS and human68k (Christian)
+ 8. Upgrade to MacOS beta 8 (Dirk Haase)
+ 9. Add callback for WINDLL to handle user termination (Mike)
+10. Fix typo in acornzip.c (Darren Salt)
+11. acorn/sendbits.s: pass correct parameters to flush_outbuf()
(Darren Salt)
+12. Fixes for IBM C/C++ 3.6 where time_t is a double (Kai Uwe)
+13. Fixes for IBM Visual Age C++ for win32 (Douglas Hendrix)
+14. man/zip.1: some version numbers in the text were still "2.2" (Christian)
+15. win32/makefile.emx: added a compilation variant that generates
+ standalone executables (Christian)
+16. change __CYGWIN32__ into __CYGWIN__ and add compatiblity
definition for
+ B19 and older (Cosmin Truta)
+17. create uniform win32 getch() replacement (Christian)
+18. put back in define of USE_EF_UT_TIME in tandem.h (Dave Smith)
+19. put back in define of USE_CASE_MAP in tandem.h (Dave Smith)
+20. updates to make/macros to allow the object to be licensed (Dave Smith)
+21. updates to macros/doit to remove mktime.c (Dave Smith)
+22. updates to tandem.c for in2ex/mapname/chmod amendments to match Unzip
+ (Dave Smith)
+23. Use izshr039.zip (Christian)
+24. Init filenotes to 0 for the amiga too (Onno)
+25. get_filters(): remove one flag=0 statement to make -R work again (Onno)
+-------------------------- December 17th 1998 version 2.3j ------------------
+ 1. FOPWT defines opening a temp file for writing (Ian)
+ 2. Remove handling of bits.c from a couple of tandem files (Christian)
+ 3. A couple of "shut up warnings from compiler" fixes (Christian)
+ 4. win32/osdep.h: removed duplicate "IZ_PACKED" definition (Christian)
+ 5. win32/zipup.h: remove invalid "elseif" preprocessor token (Christian)
+ 6. sync MacOS help screen with other ports (Christian)
+ 7. get_filters(): set flag to 0 when -R isn't used (Christian)
+ 8. "local extra != central extra" now has "info" status (Christian)
+ 9. use windll directory as "home" directory for builds (Mike)
+10. CMS/MVS: define FOPWT (Ian)
+11. Upgrade to MacOS beta 9 (Dirk Haase)
+-------------------------- January 17th 1999 version 2.3k ------------------
+ 1. Change FOPW into FOPW_TMP (Christian)
+ 2. win32: #include uses paths relative to the parent directory (Christian)
+ 3. Use forward slashes as path separator in #include statements (Christian)
+ 4. windll: fix descriptions of f{In,Ex}cludeDate (Christian)
+ 5. win32/makefile.lcc: add some -I<path> options to find files in the
+ right places (Christian)
+ 6. Supply default empty IZ_PACKED define (Christian)
+ 7. windll: Fix some typos, descriptions (Christian)
+ 8. windll project files: use relative paths, no specific root directory
+ (Christian)
+ 9. windll project files: remove link references to import libraries that
+ are not used by the zip library (Christian)
+10. windll: fix potential infinite loop in a VB sample (Mike)
+11. windll/windll.txt: remove "may not work with VB" statement (Mike)
+12. Multibyte character set support from Yoshioka Tsuneo
+13. Theos port from Jean-Michel Dubois
+14. Tandem: added simple handling of Enscribe files by converting them into
+ text type files (Dave Smith)
+15. Tandem Extra Field ("TA") containing Tandem File Attributes (Dave Smith)
+16. Tandem history file showing background info to (UN)ZIP ports (Dave Smith)
+17. create ZIP file on tandem with special file code (1001) (Dave Smith)
+18. made tandem.c & tandem.h code completely the same as UNZIP (Dave Smith)
+19. unix/configure: move +Onolimit and -Olimit into the machine specific
+ section (Onno, John Wiersba)
+-------------------------- February 21st 1999 version 2.3l ------------------
+ 1. Fix qdos Makefile (Jonathan Hudson)
+ 2. fgets instead of gets in zipnote to fix linker warnings (Jonathan Hudson)
+ 3. Theos: remove _setargv.c and a reference in zip.c (Jean-Michel Dubois)
+ 4. Theos README (Jean-Michel Dubois)
+ 5. interchanged the fRecurse flag values for "-R" and "-r" (Christian)
+ 6. add "z" pr prefix to MBCS functions to avoid name clashes (Christian)
+ 7. Whenever the position of the increment operator does not matter, the
+ INCSTR variant is used, which has been mapped to the {PRE|POS}INCSTR
+ variant that is more efficient. (Christian)
+ 8. fixed the "-R" handling in fileio.c, filter() function (Christian)
+ 9. simplified some THEOS specific code additions (Christian)
+10. changed the line break of the compiler version message in version_local()
+ for MSDOS and Win32 to take into account some verbose compilers (Christian)
+11. removed the THEOS changes from ttyio.c. Instead, a THEOS specific
+ setup was added to ttyio.h (Christian)
+12. sync vms/link_zip.com with the corresponding make_zip.com (Christian)
+13. added compatibility settings for support of MBCS on Win32 with all tested
+ compilers to win32/osdep.h
+14. added type-casts to isalpha() macro calls (Christian)
+15. fixed win32's wild_match which was clobbered by the MBCS addition
+ (Christian)
+16. finished up the "potential infinite loop" problems in the VB sample
+ that Mike started to repair (Christian)
+17. in ziperr.h, AZTEK C might require the false comma that was removed
+ to satisfy THEOS C (Christian)
+18. removed the bogus THEOS specific isdir check in zipup.c (Christian)
+19. modified the code for line ending translation to be independent
+ of the local system's convention for '\n' and '\r'; this allowed
+ the removal of the THEOS specialities (Christian)
+20. Tandem: -B option to zip Enscribe files with no record delimiters
+ (Dave Smith)
+21. Tandem: attempt to catch Large Transfer mode failure (Dave Smith)
+22. Theos: Fixed keyboard entry functions. (Jean-Michel Dubois)
+23. Theos: workaround for the argument wild card expansion that is bugged
+ in the standard library. Managed by MAINWA_BUG flag. (Jean-Michel Dubois)
+24. Theos: support for filenames and notes with accented characters.
+ (Jean-Michel Dubois)
+25. Upgrade to MacOS final (Dirk Haase)
+-------------------------- March 31st 1999 version 2.3m -------------------
+ 1. Theos: for relative paths to root directory cause open, fopen and stat
+ failure, workaround this. (Jean-Michel Dubois)
+ 2. Theos: when no path is indicated in a file or directory name and the
+ file or directory doesn't exist in the current directory it looks for
+ the file or directory in the root directory, workaround this.
+ (Jean-Michel Dubois)
+ 3. Corrected some typos and spelling error in macos/HISTORY.TXT; skipped
+ off invisible trailing whitespace (Christian)
+ 4. proginfo/extra.fld: added documentation for Tandem and Theos extra
+ field layout (Christian with Dave D Smith resp. Jean-Michel Dubois)
+ 5. qdos/Makefile.qdos: The build of ZipCloak requires inclusion of
+ the crctab object module; qfileio_.o compilation requires the -DUTIL
+ flag (Christian)
+ 6. win32: fix incorrect MB_CUR_MAX macro for mingw32 and lcc (Christian)
+ 7. theos/_fprintf.c, theos/_rename.c, theos/osdep.h: Some function
+ parameters require the "const" attribute to achieve compatibility
+ with ANSI C requirements (Christian)
+ 8. theos/theos.c: map Theos' (No)Hidden file attribute to MSDOS Hidden
+ bit in the MSDOS part of zipentry header's external attribute field;
+ 9. theos/stat.h: prevent multiple inclusions
+10. Theos: Fixed wild card management for options other than adding
+ (Jean-Michel Dubois)
+11. Theos: Removed modifications of const strings (Jean-Michel Dubois)
+12. Split tandem.c up into separate zip/unzip parts (Dave Smith, Christian)
+13. Move inclusion of OS specific zipup.h files to tailor.h (Onno)
+-------------------------- August 14th 1999 version 2.3n -------------------
+ 1. Move inclusion of OS specific zipup.h files back to zipup.c (Onno)
+ 2. Remove getline() from zipnote.c and use gets() again (Onno)
+ 3. BeOS PowerPC R4.1 support (Chris)
+ 4. New DOIT and MACROS files for the tandem port (Dave Smith)
+ 5. Don't switch the console to binary mode (Michel de Ruiter)
+ 6. In some circumstances undosm could be freed twice (Mike)
+ 7. Also define const in tailor.h for ultrix (Onno, Foppa Uberti Massimo)
+ 8. Tandem: Change zopen in TANZIPC to allow opening of files with missing
+ alt keys (err 4) (Dave Smith)
+ 9. Tandem: Assume not DST if can't resolve time (no DST table available)
+ (Dave Smith)
+10. WIN32: skip trailing dots and spaces in getnam (Onno, Dan Kegel)
+11. Use ZE_NONE when nothing to freshen or update (Onno, Yuri Sidorenko)
+12. Remove tabs from files that don't need them (Onno)
+13. Remove tabs and spaces from the end of a text line (Onno)
+14. Upgrade macos to 1.04b2 (Dirk)
+15. Add -Q documentation to manual page (Jonathan Hudson)
+16. Copy hiperspace files instead of renaming them (Keith Owens)
+17. Disallow some more characters to appear in DOS filenames when
using -k
+ (Onno, Thomas Klausner)
+18. Document missing options and environment variables in the manual (Onno)
+19. New acorn/GMakefile to compile with gcc on RISCOS (Darren Salt)
+20. ISO 8601 date format support for -t and -tt (Rodney Brown)
+-------------------------- September 21st 1999 version 2.3o -------------------
+ 1. Sync zip.h license with LICENSE (Onno)
+ 2. Add copyright notice to README, os2zip.c and os2.zip.h (Onno, Greg)
+ 3. Fix the ASM variable in acorn/GMakefile (Darren Salt)
+ 4. Add another requirement to acorn/ReadMe.GMakefile (Darren Salt)
+ 5. Fix unbalanced parenthesis in vms_get_attributes declaration in zip.h
+ and move it to vms/zipup.h (Onno, Mike Freeman)
+ 6. Make a couple of os2 files public domain (Kai Uwe)
+ 7. Change and rename disclaimer array in revision.h (Onno)
+ 8. Change copyright array in revision.h (Onno)
+ 9. macstuff.c copyright is the same as macstuff.h (Christian)
+10. WHATSNEW: add ISO 8601 dates supported (Christian)
+11. fileio.c - msname(): strip off leading dots, these are illegal for
+ MSDOS compatible names (Christian)
+13. fileio.c - replace(): deactivate "dead" code for CMS_MVS (Christian)
+14. man/zip.1: "-$" option is also used for WIN32 ports
+15. msdos/msdos.c - version_local(): break the version line for
+ GNU compilers too (Christian)
+16. tailor.h: added typecasts to MBCS macros, to suppress "type mismatch"
+ warnings (Christian)
+17. util.c, zip.h, zipfile.c: ZCONSTify several pointers (Christian)
+18. util.c - recmatch(), zip.c - version_info(): add compile time option
+ WILD_STOP_AT_DIR (Christian, Darren Salt)
+19. util.c - envargs(): MBCS related fixes (Christian)
+20. win32/lm32_lcc.asm: add TAB characters that are required by the lcc
+ assembler source parser (Christian)
+21. zip.c: fix the "is a console" check (Christian)
+22. zipnote.c: use getline() (Christian)
+23. zipup.c: use zclose() in case of I/O errors (Christian)
+24. zipup.c: use ZE_WRITE when a write error occurs (Christian)
+25. win32/win32.c: HAVE_INT64 is used by mingw32 (Cosmin Truta)
+26. update shared sources to match izshr041 (Christian)
+-------------------------- November 29th 1999 version 2.3 ------------------
+ 1. Missing parenthesis in win32/win32.c (Steve Salisbury)
+ 2. Add Cosmin Truta to proginfo/infozip.who (Onno)
+ 3. Remove one parenthesis pair too many from vms_get_attributes() declaration
+ in vms/zipup.h (Mike Freeman)
+ 4. qdos .s are expected to start with a #, work around it (Jonathan Hudson)
+ 5. tandem: -B0 should be deflating not storing (Dave Smith)
+ 6. human68k updates from Shimazaki Ryo
+ 7. beos Makefile cleanup (Chris)
+ 8. workaround for fseek to negativate offset behaviour of the RISC OS
+ SharedCLibrary (Darren Salt)
+ 9. set file type for RISC OS in zipcloak.c (Darren Salt)
+10. change tandem zgetch() to allow crypt version to work (Dave Smith)
+11. fix a comment typo in acorn/riscos.c (Christian)
+12. fileio.c: two type-cast to shut up noisy compilers (Christian)
+13. human68k: fix missing case_flag argmument (Christian)
+14. win32/win32.c: remove HAVE_INT64 completely (Christian)
+15. zip.c: raise "cannot zip to console" error when stdout IS a tty (Christian)
+16. zip.h: don't use dummy argument names in declarations (Christian)
+17. Add missing semicolon in fileio.c (Shimazaki Ryo)
+18. win32.c: IBMC compiler >= 3.50 have int64 (Kai Uwe)
+19. Handle initialization error return value from MVS stat() in procname()
+ (Keith Owens)
+20. Use RISC OS instead of RiscOS in the manual (Darren Salt)
+21. Use # instead of ? as single character wildcard on RISC OS (Darren Salt)
+22. New windll example.c (Mike)
+23. Correct storage of 8-bit char filenames with RSXNT (Burkhard Hirzinger)
+24. fix install in unix/Makefile (Santiago Vila, Onno)
+25. Fix zip -L output (Santiago Vila, Onno)
+26. Ignore unix special files (Jonathan O'Brien)
+27. Upgrade to izshr042 (Onno)
+28. Make copyright notice the same as in izshr042 (Onno)
+29. Make copyright notice in zip.h the same as LICENSE (Christian)
+30. Set tempzf to NULL _after_ it has been closed (Chris Kacher)
+31. Change email address for Jonathan Hudson (Jonathan Hudson)
+32. Remove win32/winzip.c.orig (Steve Salisbury)
+33. Use 'Steve Salisbury' throughout the documentation (Steve Salisbury)
+34. Change email address for Steve Salisbury (Steve Salisbury)
+35. Change email address for Chris Herborth (Chris Herborth)
+36. Use zip23 in INSTALL (Roger Cornelius)
+37. Use zcrypt28 in INSTALL (Onno)
+38. New acorn/srcrename (Darren Salt)
+39. amiga/makefile.azt: make clean should remove some more items (Paul)
+40. Change email address for Cosmin Truta (Cosmin Truta)
+------------------------ December 10th 2004 version 2.31a ------------------
+This is a patch to Zip 2.3 including various bug fixes.
+See Zip 3.0 for the latest additional features.
+ 1. Crypt added to source by default now that export restrictions have been
+ relaxed (Ed Gordon)
+ 2. Debian patch 001 for bug 99659 - Converted quoted strings in
version compile
+ information to defines (Debian patch 001, Ed)
+ 3. Debian patch 002 - Sets the "normal" unix permissions in the
Makefile, so
+ don't have to change them in debian/rules (Debian patch 002, Ed)
+ 4. Debian patch 003 - to support DEB_BUILD_OPTIONS as required by latest
+ policy. The LFLAGS1 thing could be considered debian-specific, but
+ INSTALL_PROGRAM thing should be in the upstream version (Debian
patch 003, Ed)
+ 5. Debian patch 004 - Make gcc happy (probably gcc 3.x) - apply 2.4i configure
+ changes to remove need for -fno-builtin in unix/configure (Onno, Ed)
+ 6. Debian patch 005 for bug 279867 - Fix for FNMAX path bug that
could crash
+ on large paths and create security problem (Greg)
+------------------------ December 17th 2004 version 2.31b ------------------
+ 1. File cleanup (Ed)
+------------------------ December 30th 2004 version 2.31c ------------------
+ 1. Add VMS tempname (Steven Schweda (SMS))
+ 2. Add VMS option -VV for archiving most all file types on VMS and
fix -V to create
+ more portable archives (SMS)
+ 3. Update VMS command line interface
+ 4. Update README (Ed)
+------------------------ January 1st 2005 version 2.31d ------------------
+ 1. Delete duplicate free(name) in filetime in unix/unix.c (Johnny Lee)
+------------------------ January 8th 2005 version 2.31e ------------------
+ 1. Change zfstat to fstat in unix/unix.c (Ed)
+------------------------ January 22nd 2005 version 2.31f ------------------
+ 1. Update file_id.diz (Cosmin Truta)
+ 2. Initialize use_longname_ea under both OS2 and WIN32. zip.c (Cosmin)
+ 3. Enclose option -! and use_privileges under NTSD_EAS guard. api.c,
+ zip.c (Cosmin)
+ 4. Implement partial support for Cygwin inside the Unix port (Cosmin)
+ 5. Add i586, i686 and Cygwin to version_local(). unix/unix.c (Cosmin)
+ 6. Ensure stat'ing always works on file names with trailing '/' in
+ set_extra_field(). unix/unix.c (Cosmin)
+ 7. Define ASM_CRC by default. win32/osdep.h (Cosmin)
+ 8. Update from zip24h. win32/makefile.bor, win32/makefile.w32 (Cosmin)
+ 9. Enable the i686-optimized code by default. crc_i386.S,
+ win32/crc_i386.asm, win32/crc_i386.c (Cosmin)
+10. Replaced win32/VC6.dsp with a complete Visual C++ 6.0 project to build
+ zip, zipnote, zipsplit and zipcloak, with both ASM and non-ASM settings.
+ (Note that win32/VC6.dsp was a new addition since Zip 2.3 and at this
+ point won't be released since this new workspace is better. Ed)
+ win32/vc6/zip.dsw (new) (Cosmin)
+11. Add AtheOS port (Ruslan Nickolaev, Ed)
+12. Formatting and consistency fixes (Johnny Lee, Ed)
+13. Add kluge to api.c so zip32.dll supports string parameters in Visual
+ Basic. See VB project files (Ed)
+------------------------ January 28th 2005 version 2.31g ------------------
+ 1. Adjust binary detection in trees.c by changing 20% binary (4 out
of 5
+ ascii) to 2% (64 out of 65) (Ed)
+ 2. Update license and license headers (Ed)
+ 3. Update Install and Readme.cr (Ed)
+ 4. Update windll.rc (Ed)
+ 5. Update Readme (Ed)
+ 6. Update Manual (Ed)
+------------------------ February 5th 2005 version 2.31h ------------------
+ 1. Add error return for filetime() FXMAX bug fix where missed in acornzip.c,
+ atari.c, beos.c, human68k.c, msdos.c, os2.c, theos.c, tops20.c, and
+ win32zip.c (Ed)
+ 2. Move -r and -R code in api.c lower down to avoid -R bug (Ed)
+ 3. Update VB project ReadmeVB files and notes in new VB project (Ed)
+ 4. Update license. revision.h (Ed)
+ 5. Update Readme.cr with updated encryption information and update zip.c
+ to include encryption notice in version information (Ed)
+ 6. Remove win32/VC6-old.dsp (Cosmin)
+ 7. Check for symlink support in procname(). unix/unix.c (Cosmin)
+ 8. Define (again) ASM_CRC by default. win32/osdep.h (Cosmin)
+ 9. Use the right type (DWORD) for volSerNo, maxCompLen and fileSysFlags
+ in FSusesLocalTime(). win32/win32.c (Cosmin)
+10. Update win32/makefile.bor, win32/makefile.gcc, win32/makefile.w32 (Cosmin)
+11. Update Readme (Ed)
+------------------------ February 15th 2005 version 2.31i ------------------
+ 1. WHERE updated (Cosmin, Christian)
+ 2. Allow for reverting to Win32 time handling using NO_W32TIMES_IZFIX.
+ win32/win32.c, win32/win32zip.h, zip.c (Christian)
+ 3. Update crypt comments and default behavior. crypt.h
+ 4. Kludge to work around non-standard S_IFREG flag used in DJGPP V2.x,
+ compiler version strings changes. msdos/msdos.c (Christian)
+ 5. Changes to MS rtl function declarations. win32/osdep.h (Christian)
+ 6. Time changes including GetPlatformLocalTimezone; force use of registry
+ to get timezone info with MS C rtl. win32/win32.c (Christian)
+ 7. Compiler version string changes. win32/win32.c (Christian, Brad Clarke)
+ 8. Changes to extra field bytes to compress. win32/win32zip.c (Christian)
+ 9. Changes to get_filters(), changes to help and version option detection
+ (allow redirection of version screen to file), add set dosflag for
DOS to
+ force the use of msdos style when updating zip entries originally created
+ under non-DOS OS. zip.c (Christian)
+10. License update. zip.h (Christian)
+11. Rename errors array to ziperrors to avoid MacOSX library clash.
+ ziperr.h (Mark)
+12. Updates to zipcloak.c for crypt and other changes. (Christian)
+13. Updates to zipsplit.c (use ZCONST in prototypes where appropiate).
+ (Christian)
+14. Update version. windll/zipver.h (Mike)
+15. Makefile updates (use UPX compressor and ...). msdos/makefile.bor,
+ msdos/makefile.dj2, msdos/makefile.msc, msdos/makefile.tc (Christian)
+16. Detect Turbo C 2.01 in msdos/osdep.h NO_MKTIME definition. (Brian Lindholm)
+17. Readme update. msdos/README.DOS (Christian, Ed)
+18. Change Zip limits description. msdos/README.DOS (Christian)
+19. Fixed ASFLAGS for watcom16dos. os2/makefile.os2 (Christian)
+20. Changes to GetLongPathEA(); fix OS/2's ACL compression code.
+ os2/os2zip.c, os2/os2zip.h (Christian, Kai Uwe)
+21. Changes to acorn. acorn/acornzip.c, acorn/GMakefile, acorn/makefile,
+ acorn/osdep.h, acorn/ReadMe.GMakefile, acorn/riscos.c, acorn/riscos.h,
+ acorn/RunMe1st (Darren Salt, Andy Wingate, Christian)
+22. Update proginfo/extra.fld (and appnote.iz). (Christian)
+23. Correct translation of EBCDIC passwords to ASCII. (Christian)
+------------------------ February 19th 2005 version 2.31j ------------------
+ 1. Data corruption, buffer size, type cast and other fixes for VMS.
+ vms/vms_pk.c, vms/vmsmunch.c (SMS)
+ 2. Update version in file_id.diz. (Cosmin)
+ 3. Update file version. readme.cr (Cosmin)
+ 4. Put mktemp() declaration inside the NO_PROTO guard. tailor.h (Cosmin)
+ 5. Remove getenv() declaration. util.c (Cosmin)
+ 6. Document and implement a new text detection scheme in set_file_type().
+ proginfo/txtvsbin.txt, trees.c (Cosmin)
+ 7. Set the "zip Debug" configuration as default. win32/vc6/zip.dsp (Cosmin)
+ 8. Move new encryption notice from zip.c into revision.h where the other
+ notice texts reside. (Cosmin)
+ 9. Change USE_ZLIB compiler message from -v to show version. zip.c (Cosmin)
+10. Removed change of Zip 2.31i to MS rtl function declarations.
+ win32/osdep.h (Cosmin, Christian)
+11. Don't use mmap for stored entries. zipup.c (Christian)
+12. msdos/msdos.c, corrected missing change in version_local. (Christian)
+13. BIG_MEM and MMAP cannot be defined at the same time. tailor.h (Christian)
+14. Update LICENSE to include the new Zip maintainer Ed Gordon and
+ Cosmin Truta. LICENSE, revision.h (Christian)
+15. Format changes. LICENSE, revision.h (Cosmin, Christian, Ed)
+16. WHERE: URLs updated, removed last zcrXXX references. (Christian)
+17. Note that ZIP64 enhancements will (probably) never be applicable for
+ MSDOS. msdos/README.DOS (Christian, Ed)
+18. msdos/makefile.wat, win32/makefile.wat: bug-fixes (added creation of
+ intermediate object directories). (Christian)
+19. win32/win32.c, minor indentation and code format changes. (Christian)
+20. Modified zipnote.c to handle line widths of at least 2047
characters in
+ write mode. (Christian)
+------------------------ February 20th 2005 version 2.31k ------------------
+ 1. Update to msdos/README.DOS noting splits can support some Zip64 features
+ but we may not get to most Zip64 features for MSDOS. (Christian, Ed)
+ 2. Move encryption notice in revision.h and delete blank line. (Christian)
+ 3. Change old binary detection to new black list version. Provided by
+ Cosmin. trees.c (Cosmin, Johnny, Christian)
+ 4. Update documentation for new binary detection. trees.c
(Christian, Ed)
+ 5. Set debug directory to od32w. win32/makefile.wat (Christian, Ed)
+ 6. Allow -@ and - (stdout) at same time. The check for -@ and - was
+ intended to prevent having both file contents and file names from stdin
+ at the same time but prevented this case instead. The case where both
+ -@ and - (stdin) is used at the same time was not trapped before and
+ is still not trapped in Zip 2.31. It apparently results in an empty
+ file called "-" in the archive. (This may be fixed in a later Zip 2.x
+ release. It is fixed in the Zip 3.0 beta. Ed) (Christian)
+ 7. Update zip.h with new license (Christian)
+ 8. Update version. revision.h (Ed)
+ 9. Add check for file size beyond 4 GB limit to file_read but should only
+ get used for OS that support large files but Zip was not compiled with
+ large file support. zipup.c (Christian)
+10. Allow store method in memcompress. zipup.c (Christian)
+11. Add note to ToDo (Ed)
+12. Update ZE_BIG to include reading and writing. ziperr.h (Ed)
+13. Update Whatsnew (Ed)
+------------------------ February 26th 2005 version 2.31l ------------------
+ 1. License date change, ftp site change from ftp.uu.net to ftp.info-zip.org,
+ and other minor changes in Readme (Ed)
+ 2. Update windll/VB-orig/readmeVB.txt, windll/VB/readmeVB.txt (Ed)
+ 3. Update man page including updating the date, notes about wildcard
+ escaping on various ports, add a note to -ll about binary detection,
+ note on -v now allowing stdin to print version, and update error
code 6
+ (ZE_BIG) to include read and written files. man/zip.1 (Ed)
+ 4. Remove zip32-old.dsp from windll/visualc/dll and
windll/visualc/lib (Ed)
+ 5. Update notes on crypt, TZ, WIN32, and WINDLL. INSTALL (Christian)
+ 6. Update indentation and add Steven Schweda to LICENSE (Christian)
+ 7. Add Steven Schweda to license. zip.h (Ed)
+ 8. Update copyright and version in atheos/Makefile (Christian)
+ 9. Format changes. atheos/README, athoes/atheos.c, atheos/osdep.h (Christian)
+10. Update header and error 6 in ziperr.h (Christian)
+11. Change 64k entries note, add Zip64 note, and add Zip 3 and UnZip 6 note.
+ proginfo/ziplimit.txt (Christian)
+11. Update report problems address. proginfo/ziplimit.txt (Ed)
+12. Add Steven Schweda to license. revision.h (Ed)
+13. Add directory for files. makefile.w10 (Christian)
+14. Change ob32w to od32w for debugging. makefile.wat (Christian)
+15. Remove Borland and Win16 support. windll/contents (Christian)
+16. Update formatting of license. zip.h (Christian)
+------------------------ February 28th 2005 version 2.31m ------------------
+ 1. Update txtvsbin.txt. proginfo/txtvsbin.txt (Cosmin)
+ 2. Changes to comments for binary detection. trees.c (Cosmin)
+ 3. Add USE_ZLIB note. zip.c (Cosmin)
+ 4. Update zipcloak.c to use new crypto notice (Cosmin)
+ 5. Remove duplicate license copyright note. zipnote.c (Cosmin)
+ 6. Remove duplicate license copyright note. zipsplit.c (Cosmin)
+ 7. Format change in LICENSE (Christian)
+ 8. Update copyright. atheos/zipup.h (Christian)
+ 9. Update license to match final official version. revision.h (Christian)
+10. Update license to match final official version. zip.h (Christian)
+11. Update version to Zip 2.31 for release. revision.h (Ed)
+12. Update notes in VB files. windll/vb/vbzipfrm.frm,
+ windll/vb/readmeVB.txt (Ed)
+13. Formatting fixes for Manual to get dashes to be consistent and other
+ changes. man/zip.1 (Cosmin)
+14. Change Makefile to filter out tabs using col -bx to create MANUAL to
+ avoid problems with spacing on WIN32. unix/Makefile (Ed)
+15. Additional formatting and other changes to manual (Ed)
+16. Recompile MANUAL from man/zip.1 (Ed)
+17. Fix ZipCloak to remove old crypt comment and get encryption notice off
+ front page and move to the version page. zipcloak.c (Ed)
+18. Update file times on unchanged files that somehow became off 6 hours
+ to match times in Zip 2.3 release. Bugs, USexport.msg, and many files
+ in acorn, amiga, aosvs, atari, beos, cmsmvs, human68k, macos, msdos,
+ os2, proginfo, qdos, tandem, theos, tops20, unix, vms, win32, and
+ windll (Cosmin)
+19. Add new longest_match in WIN64 assembler. Must use the new makefile
+ to compile it. Also change win32/osdep.h to allow use of assembler
+ for longest_match without using assembler for CRC. THIS IS UNTESTED.
+ win32/gvmat64.asm, win32/readme.x64, win32/makefile.asm64,
+ win32/osdep.h (Gilles Vollant)
+20. Add note WIN64 assembler not completely tested. win32/readme.x64 (Ed)
+21. Minor change of wording on regulations involving crypt. readme.cr (Ed)
+22. Update release date to 28 Feb 2005 (Ed)
+23. Update USexport.msg (Greg)
+24. Rename makefile.asm64 to makefile.a64 to stay in 8.3 name restriction
+ if someone unpacks all this on MSDOS and rename readme.x64 to
+ readme.a64 to match. win32/readme.a64, win32/makefile.a64 (Ed)
+------------------------ March 4th 2005 version 2.31n ------------------
+ 1. Fix byte counts on exit in zipcloak() and zipbare() to fix
zipcloak bug.
+ crypt.c (Paul, Christian)
+ 2. Fix swlicense size from 40 to 50. revision.h (Cosmin)
+ 3. For ZLIB use www.zlib.net instead of www.zlib.org. WHERE (Cosmin)
+ 4. Remove windll/windll.aps as it is not needed (Cosmin)
+ 5. Update version date. revision.h (Ed)
+ 6. Remove windll/vb-orig project (Ed)
+ 7. Changes to VB project comments. readmeVB.txt, VBZipBas.bas (Ed)
+ 8. Change to ZCONST. amiga/amiga.c (Paul)
+ 9. Update Atheos port to most recent changes. zipup.c, zipnote.c, zip.h,
+ ttyio.c, tailor.h, atheos/atheos.c, atheos/contents, atheos/Makefile,
+ atheos/osdep.h, atheos/Readme, atheos/zipup.h (Ruslan Nickolaev, Ed)
+------------------------ March 8th 2005 version 2.31 ------------------
+ 1. Update gvmat64.asm (Gilles)
+ 2. Update version. revision.h (Ed)
+ 3. Update WhatsNew (Ed)
+------------------------ March 20th 2005 version 2.32a ------------------
+ 1. Change (INSTALL) to (INSTALL_PROGRAM). unix/Makefile (?, Ed)
+ 2. Update crypt comments. crypt.c, crypt.h (Christian)
+ 3. Add parentheses to fseek and put ZIP10 variable in ifdefs.
+ crypt.c (Christian)
+ 4. Update release date and change crypt version from 2.9 to 2.10.
+ crypt.h (Christian)
+ 5. Update license header. crypt.c, crypt.h, deflate.c, fileio.c,
+ zip.c (Christian)
+ 6. Force flush when FORCE_METHOD. Move FLUSH_BLOCK(). deflate.c (Christian)
+ 7. Update filter to use global pcount, icount, and Rcount, collapse i
and R
+ loops into one loop using switch, add comments, fix rough edges in
+ filter matching. fileio.c (Christian)
+ 8. Update tempname() to avoid name contention if two zips are running.
+ fileio.c (Christian)
+ 9. Add attempts count on seeking a name in tempname(). fileio.c (Ed)
+10. Update version. revision.h (Christian, Ed)
+11. Add INSTALL and update INSTALL_PROGRAM defines and remove duplicate
+ SYSV. unix/Makefile (Christian)
+12. Formatting changes. unix/unix.c (Christian)
+13. Add counts for R filters in get_filter(). Format change for k.
+ Format changes. Add Rcount to zip.h. zip.c, zip.h (Christian)
+------------------------ April 16th 2005 version 2.32b ------------------
+ 1. Initialized mesg in zipcloak.c, zipnote.c, zipsplit.c to fix access
+ violation crashes. (Christian)
+ 2. Added -q (Quiet mode) option to zipcloak, zipnote, zipsplit. (Christian)
+ 3. Changed exit(0) to exit(ZE_OK). qdos/qdos (Christian)
+ 4. Change INSTALL_PROGRAM to INSTALL [probably not needed as now both are
+ defined - Ed]. unix/Makefile (Christian)
+ 5. Increment IDENT and change formatting. vms/cvthelp.tpu (Christian)
+ 6. Update copyright. vms/cvthelp.tpu (Christian, Ed)
+ 7. Change DIAG_FLAG from verbose to (verbose >= 2). vms/vms.c (Christian)
+ 8. Change EXIT(0) to EXIT(ZE_LOGIC) for ziperr recursion, change
EXIT(0) to
+ EXIT(ZE_OK) for successful returns. zip.c (Christian)
+ 9. Add support for SIGABRT, SIGBREAK, SIGBUS, SIGILL, and SIGSEGV [indented
+ these - Ed]. zip.c (Christian)
+10. Change EXIT(0) to EXIT(ZE_OK). zipcloak.c, zipnote.c, zipsplit.c (Christian)
+11. Change getline to zgetline. zipnote.c (Christian)
+12. Add ifndef VMS for adding / to end of path. zipsplit.c (Christian)
+13. Control the POSIX emulation provided by some Unix-on-Windows compiler
+ distributions, such as Cygwin, via the FORCE_WIN32_OVER_UNIX macro.
+ tailor.h, win32/Makefile.gcc (Cosmin)
+14. Synchronize ttyio.c and ttyio.h with the unzip-5.52 source, including
+ changes on how VMS does io and many other changes and combining and
+ add support for screen columns (Cosmin)
+15. Remove #undef WIN32, leaving both defined. See tailor.h. unix/osdep.h
+ (Cosmin)
+16. Enable binary file operations for DJGPP, besides Cygwin;
+ define FOPW as "wb" instead of "wbS". unix/osdep.h (Cosmin)
+17. Stylistic fix inside ex2in(). unix/unix.c (Cosmin)
+18. Use correct dependence in target crc_i386.obj. win32/Makefile.w32 (Cosmin)
+19. Cosmetic fix. win32/makefile.bor (Cosmin)
+20. Fix win32/vc6/zip.dsp by moving End Custom Build (Cosmin)
+------------------------ June 17th 2005 version 2.32c ------------------
+ 1. Spelling fix in manual. man/zip.1 (Debian)
+ 2. Add check_for_windows() to DOS version. zip.c, msdos/msdos.c,
+ msdos/osdep.h (Johnny)
+ 3. Add support for signals SIGABRT, SIGBREAK, SIGBUS, SIGILL, and SIGSEGV
+ to utilities. zipcloak.c, zipnote.c, zipsplit.c (Christian)
+ 4. Compacted Copyright note into a single line (Christian)
+ 5. Change putend() to use unsigned. zip.h, zipfile.c (Christian)
+ 6. Add the CSharp projects from Adrian Maull. Add new readmeCS.txt file.
+ windll/csharp (Adrian Maull, Ed)
+ 7. Moved check_for_windows() DOS checks to help and version screens
but still
+ on error message and reduced to one line. msdos/msdos.c, zip.c (Ed)
+------------------------ June 26th 2005 version 2.32d ------------------
+ 1. Add directory search improvements to Win32 (within recursion,
reuse attribs
+ from directory lookup to avoid calling stat()). win32/win32zip.c (Johnny)
+ 2. Cache result of IsFileSystemOldFAT() to avoid repetitive system calls
+ for identical information. win32/win32.c (Johnny)
+ 3. Add optimization to dosmatch(): apply alternate shortcut code when the
+ pattern to match consists of one multichar wildcard ('*') followed
+ by a fixed string. util.c (Johnny)
+------------------------ July 11th 2005 version 2.32e ------------------
+ 1. Add directory search improvements to MSDOS. msdos/msdos.c (Johnny)
+ 2. Additional changes to directory search improvements, including
+ a) MSDOS port fixes for Turbo C++ compiler
+ b) In both Win32 and MSDOS, change getDirEntryAttr() into macro,
+ saving one function call overhead
+ c) Add explaining comment to optimized procname_{local} code
+ d) In util.c, move "*literal" pattern-matching optimization from
+ dosmatch() to recmatch(). Advantages:
+ - optimization used for all systems
+ - optimization applied to all occurences where a "*" is last wildcard
+ in pattern
+ - "dosmatch()" only preconditoning wrapper for matching workhorse
+ "recmatch()", it should not implement matching algorithms itself
+ - optimization not applied for WILD_STOP_AT_DIR option
+ e) >>>disabled<<< "*literal" optimization for all MBCS-aware environments,
+ because suspect that supplied optimization code is not MBCS-clean
+ (for details see the comment within the patch), so IS NOT USED for
+ win32 port! Can force activation of match optimization by specifying
+ conditional compilation symbol TEST_FOR_MBCS_CLEAN.
+ (Christian)
+ 3. Add and move comments for directory search improvements. util.c (Ed)
+ 4. In win32/win32.c, IsFileSystemOldFAT(), add declarations of static
+ caching variables where missing to fix win32 compilation bug (Christian)
+ 5. Correct changed arguments in the RSXNT-only character set conversion
+ call. win32/win32zip.c (Christian)
+ 6. Debian Bug #312090 fix. Reworded man page to give multiple
examples of
+ recursion, not just zip -r foo foo. man/zip.1 (Ed)
+------------------------ July 11th 2005 version 2.32f ------------------
+ 1. Fix unsigned char to char in recmatch(), add casts for compares. util.c
+ (Ed)
+------------------------ July 13th 2005 version 2.32g ------------------
+ 1. Change shmatch() from uch to char and change parameters to recmatch().
+ Change dosmatch(). util.c (SMS, Rodney, Ed)
+------------------------ July 16th 2005 version 2.32h ------------------
+ 1. Delete unused getDirEntryAttribs(). msdos/msdos.c (Christian)
+ 2. Change warning when running msdos version on Windows.
msdos/msdos.c (Ed)
+ 3. Change to recmatch() for MBCS matching. util.c (Christian)
+ 4. Remove unzip C# example which should go in unzip. windll/csharp/unzip
+ (Christian, Ed)
+ 5. Update readmeCS. windll/csharp/readmeCS.txt (Ed)
+ 6. Update Readme (Ed)
+ 7. Update WhatsNew (Ed)
+------------------------ August 4th 2005 version 2.32i ------------------
+ 1. Clean up old code. unix/osdep.h (Cosmin)
+ 2. Add stsdef.h include for VMS and convert unzip test return to VMS
+ result for VMS. zip.c (SMS)
+ 3. Format Windows warning message. msdos/msdos.c (Christian)
+ 4. Format changes. util.c (Christian)
+ 5. Move ziptyp() for VMS. zipfile.c, vms/vms.c (SMS)
+ 6. VMS tempname() from Zip 3 including error messages. vms/vms.c (SMS)
+ 7. Move NAM[L] macros from vms.c. vms/vms.c, vms/vms.h (SMS)
+ 8. Update vms_stat(). vms/vms.c (SMS)
+------------------------ August 12th 2005 version 2.32j ------------------
+ 1. Change DOS to WATCOM_DSEG to use correct data segment and fix compiler
+ error. msdos/makefile.wat (Christian)
+ 2. Add zq for Watcom. os2/makefile.os2 (Christian)
+ 3. Add ASM_CRC to enable assembler. Add WATCOM_DSEG to use correct
+ data segment. os2/makefile.os2 (Christian)
+ 4. Fix header. os2/match32.asm (Christian)
+ 5. Fix header. win32/crc_lcc.asm (Christian)
+ 6. Add WATCOM_DSEG. win32/makefile.wat (Christian)
+ 7. Fix header. Add DGROUP. win32/match32.asm (Christian)
+ 8. Some VMS comment changes. zipfile.c (Christian)
+ 9. Update INSTALL (Ed)
+10. Update README (Ed)
+------------------------ October 20th 2005 version 2.32k ------------------
+ 1. Remove "#include <starlet.h>" from zipfile.c for VMS. zipfile.c (SMS)
+ 2. Save parse name before search and use that on failure. Change name
+ parsing in ziptyp() to solve a problem with search-list logical name
+ device directory specs. vms/vms.c (SMS)
+------------------------ January 23th 2006 version 2.32l ------------------
+ 1. Handle VMS ... case. util.c (SMS)
+ 2. Include VMS option -VV in help. zip.c (SMS)
+ 3. Remove __GNUC__ check. Update VMS CLI help. vms/cmdline.c (SMS)
+ 4. Change lib$initialize to LIB$INITIALIZE. vms/vms.c (SMS)
+ 5. Update copyright to 2006. revision.h (Ed)
+ 6. Update WhatsNew (Ed)
+ 7. Update README (Ed)
+------------------------ January 28th 2006 version 2.32m ------------------
+ 1. Remove debugging code. crypt.c (Christian)
+ 2. Add const to check_for_windows(). msdos/msdos.c (Christian)
+ 3. Remove debugging case from example. windll/vb/vbzipfrm.frm (Christian)
+ 4. Put quotes around -R in help for VMS. zip.c (Christian)
+ 5. Update VMS link and make. vms/descrip.mms, vms/link_zip.com,
+ make_zip.com (SMS)
+------------------------ February 16th 2006 version 2.32n ------------------
+ 1. Remove trailing space from the default COMPILER_NAME. unix/unix.c
+ (Cosmin)
+ 2. Use FILE_FLAG_BACKUP_SEMANTICS and a less demanding access mode
+ in CreateFile() when retrieving file attributes. Fixes a problem
+ when adding a directory entry from an NTFS or a CDFS partition
+ (i.e. one that stores timestamps using universal time), and the
+ directory timestamp is not the same daylight savings time setting.
+ The effect is an offset in the timestamp by one hour, if zip is
+ built using NT_TZBUG_WORKAROUND. The problem is not exposed, however,
+ if NO_W32TIMES_IZFIX is defined and Zip is neither linked against
+ cygwin C runtime or old MS crtdll.dll. (In the latter cases, the problem
+ appeared not on NTFS/CDFS, but on (V)FAT). win32/win32.c (Cosmin)
+ 3. Update WhatsNew to note NTFS time fix. WhatsNew (Ed)
+------------------------ February 18th 2006 version 2.32o ------------------
+ 1. Use correct dependency in target crc_i386.obj. win32/Makefile.w32
+ (Cosmin)
+ 2. Prepend '-' to commands from target clean. win32/Makefile.w32,
+ win32/Makefile.bor (Cosmin)
+ 3. Must not call putenv() in iz_w32_prepareTZenv() under Cygwin.
+ win32/osdep.h (Cosmin)
+ 4. Enable browse info in Debug modes in the Visual C++ 6 project.
+ win32/vc6/zip.dsp, win32/vc6/zipcloak.dsp, win32/vc6/zipsplit.dsp,
+ win32/vc6/zipnote.dsp (Cosmin)
+ 5. Remove win32/vc6/zip.mak (Cosmin)
+------------------------ February 20th 2006 version 2.32p ------------------
+ 1. Do not use -O2 for flags. unix/makefile (SMS)
+ 2. Check for compiler type and set -O2 or -O3. unix/configure (SMS)
+ 3. Note SUNPRO, HP, and DECC compiler types. unix/unix.c (SMS)
+ 4. Add missing "NT_TZBUG_WORKAROUND" fix to win32 stamp() function (used
+ with "-o" option). win32/win32.c, win32/win32zip.c (Christian)
+ 5. Change HAVE_VAXC_VAX to HAVE_VAXC. vms/make_zip.com (Christian)
+ 6. Fix encryption problem where a large file with uncompressable data
+ can cause deflate to store bad data. See crypt.c for details.
+ Thanks to the nice people at WinZip for finding and providing the
+ details of this problem. crypt.c (Ed)
+------------------------ March 5th 2006 version 2.32q ------------------
+ 1. Update delete selection code using update from Zip 3.0. This fixes
+ delete selection date problem. zip.c (Ed)
+ 2. Update WhatsNew. WhatsNew (Ed)
+ 3. Update Readme. Readme (Ed)
+------------------------ March 7th 2006 version 2.32r ------------------
+ 1. Move encryption fix from crypt.c to trees.c so can use existing
+ buffer instead of allocating a new buffer in zfwrite(). crypt.c,
+ trees.c (Christian)
+ 2. Remove copyrighted Amiga time fix and replace with Info-ZIP code
+ from UnZip. mktime.c (removed), timezone.c, timezone.h, util.c,
+ amiga/amiga.c, amiga/filedate.c, amiga/lmkfile, amiga/makefile.azt,
+ amiga/osdep.h, amiga/smakefile, amiga/stat.c, amiga/time_lib.c
+ (removed), amiga/z-stat.h, amiga/z-time.h (removed) (Christian)
+ 3. Move timezone doc to proginfo. amiga/timezone.doc,
+ proginfo/timezone.txt (Christian)
+ 4. Add UT extra field support to delete select fix. zip.c (Christian)
+ 5. Disable command line globbing for MINGW32 if USE_MINGW_GLOBBING is
+ not defined. win32/win32.c (Christian)
+------------------------ April 3rd 2006 version 2.32s ------------------
+ 1. Small change to encryption buffer fix description. trees.c (Ed)
+ 2. Update description. file_id.diz (Ed)
+ 3. Update contents. windll/contents (Ed)
+ 4. Update readme. windll/vb/readmeVB.txt (Ed)
+ 5. Update docs. INSTALL, WhatsNew, zip232.ann (Ed)
+ 6. Add -M option that tells Zip it must read all files and any read
+ failure on an input file is an error. Normally Zip would finish
+ and create the archive but return error code 18 (ZE_OPEN) but
+ -M forces an immediate exit with no archive created. Note that
+ not being able to match an input pattern is not the same and
+ does not result in an error with or without -M. zip.c (Ed)
+ 7. Update manual. man/zip.1, MANUAL (Ed)
+ 8. Update WhatsNew. whatsnew (Ed)
+ 9. Change -M to also be error whenever the "name not matched" warning
+ would be issued. zip.c (Ed)
+------------------------ April 14th 2006 version 2.32t ------------------
+ 1. Change -M to -MM and make -mm an error to avoid accidental use of
+ -m for -M which could delete files. zip.c (Ed)
+ 2. Update manual. man/zip.1, MANUAL (Ed)
+ 3. Update announcement. zip232.ann (Ed)
+ 4. Update WhatsNew. whatsnew (Ed)
+ 5. Update ReadMe. README (Ed)
+ 6. Update VMS installation. INSTALL (SMS)
+ 7. Add VMS CLI support for /MUST_MATCH (-MM) and /VERBOSE=COMMAND
+ (show Unix command line). vms/cmdline.c, vms/vms_zip.rnh (SMS)
+ 8. Update VMS option help. vms/zip_cli.cld, vms/zip_cli.help (SMS)
+------------------------ April 22th 2006 version 2.32u ------------------
+ 1. Minor changes to VMS command line and help, including adding VERBOSE
+ NORMAL mode. vms/cmdline.c, vms/zip_cli.cld, vms/zip_cli.help (SMS)
+ 2. Add last_o to zipup() to check for ftell() wrap around indicating
+ that the valid range for seeks was exceeded. zipup.c (Ed)
+ 3. Update Zip version. unix/makefile (SMS)
+ 4. Update mailing address. unix/packaging/preinstall.in (SMS, Ed)
+ 5. Update DLL version. windll/windll.rc, windll/zipver.h (SMS, Ed)
+ 6. Update WhatsNew. whatsnew (Ed)
+ 7. Add fflush() to where dots are output. zipup.c (Ed)
+ 8. Add fflush() to zipwarn(). zip.c (Ed)
+------------------------ May 17th 2006 version 2.32v ------------------
+ 1. Add support for Unix FIFO (named pipe). unix/unix.c (Ed)
+ 2. Update announcement. zip232.ann (Ed)
+ 3. Add note. Bugs (Ed)
+ 4. Update WhatsNew. WhatsNew (Ed)
+------------------------ May 26th 2006 version 2.32w ------------------
+ 1. Update date. zipup.c (Ed)
+------------------------ June 4th 2006 version 2.32x ------------------
+ 1. Update VMS install information. INSTALL, vms/descrip.mms (SMS)
+ 2. Introduce the CR_VERSION symbol, and change zcrypt version from
+ 2.10 to 2.91 as the next version after 2.9. crypt.h, zip.c,
+ README.CR, file_id.diz (Cosmin, Ed)
+ 3. Update WHERE to zip 2.32 and zcrypt 2.91. WHERE (Cosmin)
+ 4. Update binary detection information. proginfo/txtvsbin.txt
+ (Cosmin)
+ 5. Shut up annoying Visual C++ 2005 warnings about standard C
+ deprecation. Move zip.h include before ctype.h include.
+ win32/osdep.h, trees.c, zipup.c (Cosmin)
+ 6. Allow the Unix port to compile if S_IFIFO is missing. unix/unix.c
+ (Cosmin)
+ 7. Fix the positioning of some #ifdef NO_W32TIMES_IZFIX guards.
+ win32/win32.c (Cosmin)
+ 8. Stop enumerating every single Win32 flavor in version_local().
+ win32/win32.c (Cosmin)
+------------------------ June 15th 2006 version 2.32y ------------------
+ 1. Update comments. vms/descrip.mms (SMS)
+ 2. Update License copyright. License (Cosmin)
+ 3. Update WhatsNew. WhatsNew (Ed)
+------------------------ June 19th 2006 version 2.32z ------------------
+ 1. Change vms/ to [.VMS] in VMS section as that's more like what a VMS
+ user would expect. INSTALL (SMS)
+ 2. Change top line in license to not refer to copyright as license date
+ and copyright date are separate. License (Cosmin)
+ 3. Update version to release. revision.h (Ed)
+ 4. Change STS$M_SUCCESS to STS$K_SUCCESS. zip.c, vms/vms.c (SMS)
+ 5. Change Windows version from the informal "2K" to "2000" in local
+ compiler information. win32/win32.c (Cosmin)
+ 6. Delete useless binary file. windll/windll.aps (Cosmin)
+ 7. Replace VAX/VMS with VMS. man/zip.1, MANUAL (SMS)
+------------------------ June 19th 2006 version 2.32 ------------------
+ 1. Update WhatsNew (Ed)
+ 2. Update announcement. zip232.ann (Ed)
+ 3. Update release date. man/zip.1, MANUAL (Cosmin)
Added: vendor/zip/current/INSTALL
==============================================================================
--- (empty file)
+++ vendor/zip/current/INSTALL Sun Jun 15 20:45:02 2008
@@ -0,0 +1,207 @@
+HOW TO INSTALL ZIP
+
+ Zip is distributed as C source code that can be compiled on a
+ wide range of systems: Unix, VMS, MSDOS, OS/2, NT, Amiga, Atari,
+ BeOS, VM/CMS, ... You will need Unzip 5.0p1 (under any system) or
+ PKUNZIP 2.04g or later (under MSDOS) to unpack the distribution
+ file, zip232.zip. But since you read this, you have unpacked it
+ already, or you cheated and got a tar.Z file...
+
+Installation on Unix (see below for installation on other systems)
+
+ Let's assume that you start from scratch and have not yet
+ unpacked the sources. First, unpack the source as follows,
+ assuming that you have zip232.zip in the current directory.
+
+ mkdir zipsrc
+ cd zipsrc
+ unzip ../zip232
+
+ This extracts all source files and documentation in the
+ directory called "zipsrc". This release now includes the standard
+ encryption code previously in the separate package zcrypt29.zip,
+ but you still can decide whether to activate the crypt code or not.
+ Crypt is enabled by default, but you may disable it by specifying
+ the option -DNO_CRYPT in the LOCAL_ZIP environment variable (or by
+ adding this option to the compilation options in the appropiate
+ makefile).
+ See Readme.cr for more on crypt.
+
+ You then do:
+
+ make -f unix/Makefile system
+
+ where "system" is one of: generic, generic_gcc,
+ att6300, coherent, cray_v3, minix, sco_x286, xenix, zilog.
+
+ Try "make -f unix/Makefile generic" first, this works on many systems.
+ If this fails, then use one of the special targets given above.
+
+ Among other special systems are Cray Unicos, Zilog Zeus and MINIX.
+
+ If you get error messages "constant expected" in deflate.c, add
+ -DDYN_ALLOC to CFLAGS in your makefile entry.
+
+ If you have lots of memory, try compiling with -DBIG_MEM. If your
+ system supports mmap(), try compiling with -DMMAP. This generally
+ gives faster compression but uses more memory. See the unix/Makefile
+ entry mmap_gcc for an example.
+
+ If none of these compiles, links, and functions properly on
+ your Unix system, see the file README for how to get help.
+
+ If the appropriate system was selected, then the executables zip,
+ zipcloak, zipnote and zipsplit will be created. You can copy them
+ to an appropriate directory in the search path using:
+
+ make -f unix/Makefile install
+
+ The defaults are /usr/local/bin for the executables and
+ /usr/local/man/man1 for the manual page. Change the macros
+ BINDIR and MANDIR in makefile if appropriate.
+
+ You can use the command "set" to see the current search
+ path. If you are using the C-Shell (csh), enter the com-
+ mand:
+
+ rehash
+
+ so csh can find the new command in the path. You are now
+ ready to use Zip.
+
+ You can get rid of the now unnecessary source and object
+ files with:
+
+ cd ..
+ rm -r zipsrc
+
+ This will remove the directory zip and its contents created
+ by unzip. You should keep the zip232.zip file around though,
+ in case you need to build it again or want to give it to a
+ colleague.
+
+ You can add the following lines to the file /etc/magic for
+ usage by the 'file' command:
+
+0 string PK Zip archive
+>4 byte 011 (at least v0.9 to extract)
+>4 byte 012 (at least v1.0 to extract)
+>4 byte 013 (at least v1.1 to extract)
+>4 byte 024 (at least v2.0 to extract)
+>4 byte 025 (at least v2.1 to extract)
+
+
+Installation on other systems
+
+ The steps for installation under VMS, MSDOS, OS/2, NT, Amiga and
+ Atari are similar to the above: first unzip the distribution
+ files into their own directory. The system dependant files are
+ stored in special subdirectories.
+
+ For all the non-unix ports which support the creation of "UT" extra
+ fields (these ports contain USE_EF_UT_TIME in the list of optional
+ features displayed with "zip -v"), the timezone environment
variable TZ
+ should be set according to the local timezone in order for the -f,
+ -u and -o options to work correctly. This is not needed for the WIN32
+ and WinDLL ports, since they get the timezone information from
the OS by
+ other means.
+
+ MSDOS:
+
+ Do one of:
+
+ make msdos\makefile.msc (Microsoft C 5.1)
+ nmake -f msdos\makefile.msc (Microsoft C 6.0 and newer)
+ make -fmsdos\makefile.bor -DCC_REV=1 (Borland Turbo C++ 1.0)
+ make -fmsdos\makefile.bor (Borland C++ 2.0 and newer)
+ make -fmsdos\makefile.tc (Borland Turbo C 2.0x)
+ make -f msdos/makefile.dj1 (DJGPP v1.12m4)
+ make -f msdos/makefile.dj2 (DJGPP v2.01 and newer)
+ make -f msdos/makefile.emx (gcc/emx 0.9b and newer)
+ make -f os2/makefile.os2 gccdos (gcc/emx 0.9b and newer)
+ wmake -f msdos\makefile.wat (Watcom C 11.x 16-bit)
+ wmake -f msdos\makefile.wat PM=1 (Watcom C 11.x 32-bit, PMODE/W)
+
+
+ for Microsoft, Borland C++ and Turbo C, Watcom C/C++ and the various
+ free GNU C implementations, respectively. More detailed instructions
+ can be found in the respective makefiles.
+
+
+ WIN32 (Windows NT/2K/XP/2K3 and Windows 95/98/ME):
+
+ Supported compilers are Microsoft Visual C++, Borland C++, Watcom C/C++,
+ and miscellaneous free GNU C implementations (gcc/mingw, CygWin, ...).
+ The makefiles supplied in the win32/ subdirectory contain further
+ information.
+
+ A Microsoft Visual C++ workspace is now included in win32/vc6
+ with zip, zipcloak, zipnote, and zipsplit projects.
+
+
+ Windows DLL (WIN32):
+
+ Supported environments are Visual C++ (32-bit only, 5.x and newer).
+ For instructions how to build the DLLs and where find the makefiles,
+ look into windll/contents.
+
+
+ OS/2:
+
+ Type
+
+ {make} -f os2/makefile.os2
+
+ to get a list of supported targets/compiling environments.
+ (replace "{make}" with the name of your OS/2 make utility.)
+
+ To initiate the actual compiling process, you have to specify
+ a system target:
+
+ {make} -f os2/makefile.os2 {system}
+
+ An example: type
+
+ nmake -f os2/makefile.os2 msc
+
+ for Microsoft C 6.00.
+
+
+ VMS (OpenVMS):
+
+ To build Zip, use the builder command procedure:
+
+ @ [.vms]make_zip.com
+
+ or use DEC/Compaq/HP MMS (or the free alternative, MMK) if available:
+
+ mms /descr=[.vms]descrip.mms /macro=(__ALPHA__=1) for Alpha
+ mms /descr=[.vms]descrip.mms /macro=(__IA64__=1) for IA64
+ mms /descr=[.vms]descrip.mms /macro=(__DECC__=1) for DEC
C on VAX
+ mms /descr=[.vms]descrip.mms /macro=(__VAXC__=1) for VAX C
+ mms /descr=[.vms]descrip.mms /macro=(__GNUC__=1) for GNU
C on VAX
+
+ Modern MMS and MMK versions should correctly determine the system type
+ without the "/macro=" qualifier, but on VAX the compiler should be
+ specified explicitly, and it should always be safe to specify the proper
+ system type. (If you have installed both DEC C and VAX C on your VAX
+ and want to use VAX C, you should define the macro "__FORCE_VAXC__"
+ instead of "__VAXC__".)
+
+ When the executables have been created (or located), most users
+ define foreign command symbols for the Zip executables, like this:
+
+ ZIP :== $ dev:[dir]ZIP.xxx_EXE ! UNIX-like command line.
+ or:
+ ZIP :== $ dev:[dir]ZIP_CLI.xxx_EXE ! VMS-like command line.
+
+ where "xxx_" depends on the system type and compiler. Such symbol
+ definitions are often added to a user's SYS$LOGIN:LOGIN.COM
+ procedure, or to a common, site-specific procedure, like
+ SYS$MANAGER:SYLOGIN.COM.
+
+ For further information please consult 00README.TXT in the [.VMS]
+ subdirectory.
+
+For command help on any of the zip* utilities, simply enter
+the name with no arguments.
Added: vendor/zip/current/LICENSE
==============================================================================
--- (empty file)
+++ vendor/zip/current/LICENSE Sun Jun 15 20:45:02 2008
@@ -0,0 +1,55 @@
+This is version 2005-Feb-10 of the Info-ZIP license.
+The definitive version of this document should be available at
+ftp://ftp.info-zip.org/pub/infozip/license.html indefinitely.
+
+
+Copyright (c) 1990-2006 Info-ZIP. All rights reserved.
+
+For the purposes of this copyright and license, "Info-ZIP" is defined as
+the following set of individuals:
+
+ Mark Adler, John Bush, Karl Davis, Harald Denker, Jean-Michel Dubois,
+ Jean-loup Gailly, Hunter Goatley, Ed Gordon, Ian Gorman, Chris Herborth,
+ Dirk Haase, Greg Hartwig, Robert Heath, Jonathan Hudson, Paul Kienitz,
+ David Kirschbaum, Johnny Lee, Onno van der Linden, Igor Mandrichenko,
+ Steve P. Miller, Sergio Monesi, Keith Owens, George Petrov, Greg Roelofs,
+ Kai Uwe Rommel, Steve Salisbury, Dave Smith, Steven M. Schweda,
+ Christian Spieler, Cosmin Truta, Antoine Verheijen, Paul von Behren,
+ Rich Wales, Mike White
+
+This software is provided "as is," without warranty of any kind, express
+or implied. In no event shall Info-ZIP or its contributors be held liable
+for any direct, indirect, incidental, special or consequential damages
+arising out of the use of or inability to use this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it
+freely, subject to the following restrictions:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ definition, disclaimer, and this list of conditions.
+
+ 2. Redistributions in binary form (compiled executables) must reproduce
+ the above copyright notice, definition, disclaimer, and this
list of
+ conditions in documentation and/or other materials provided
with the
+ distribution. The sole exception to this condition is redistribution
+ of a standard UnZipSFX binary (including SFXWiz) as part of a
+ self-extracting archive; that is permitted without inclusion of this
+ license, as long as the normal SFX banner has not been removed from
+ the binary or disabled.
+
+ 3. Altered versions--including, but not limited to, ports to new operating
+ systems, existing ports with new graphical interfaces, and dynamic,
+ shared, or static library versions--must be plainly marked as such
+ and must not be misrepresented as being the original source. Such
+ altered versions also must not be misrepresented as being Info-ZIP
+ releases--including, but not limited to, labeling of the altered
+ versions with the names "Info-ZIP" (or any variation thereof, including,
+ but not limited to, different capitalizations), "Pocket UnZip," "WiZ"
+ or "MacZip" without the explicit permission of Info-ZIP. Such altered
+ versions are further prohibited from misrepresentative use of the
+ Zip-Bugs or Info-ZIP e-mail addresses or of the Info-ZIP URL(s).
+
+ 4. Info-ZIP retains the right to use the names "Info-ZIP," "Zip," "UnZip,"
+ "UnZipSFX," "WiZ," "Pocket UnZip," "Pocket Zip," and "MacZip"
for its
+ own source and binary releases.
Added: vendor/zip/current/MANUAL
==============================================================================
--- (empty file)
+++ vendor/zip/current/MANUAL Sun Jun 15 20:45:02 2008
@@ -0,0 +1,844 @@
+ZIP(1L) ZIP(1L)
+
+NAME
+ zip, zipcloak, zipnote, zipsplit - package and compress
(archive) files
+
+SYNOPSIS
+ zip [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$] [-b path] [-n suffixes]
+ [-t mmddyyyy] [-tt mmddyyyy] [ zipfile [ file1 file2 ...]] [-xi list]
+
+ zipcloak [-dhL] [-b path] zipfile
+
+ zipnote [-hwL] [-b path] zipfile
+
+ zipsplit [-hiLpst] [-n size] [-b path] zipfile
+
+DESCRIPTION
+ zip is a compression and file packaging utility for Unix,
VMS, MSDOS,
+ OS/2, Windows NT, Minix, Atari and Macintosh, Amiga and Acorn
RISC OS.
+
+ It is analogous to a combination of the UNIX commands tar(1)
and com-
+ press(1) and is compatible with PKZIP (Phil Katz's ZIP for
MSDOS sys-
+ tems).
+
+ A companion program (unzip(1L)), unpacks zip archives. The
zip and
+ unzip(1L) programs can work with archives produced by PKZIP,
and PKZIP
+ and PKUNZIP can work with archives produced by zip. zip
version 2.32
+ is compatible with PKZIP 2.04. Note that PKUNZIP 1.10 cannot extract
+ files produced by PKZIP 2.04 or zip 2.32. You must use PKUNZIP
2.04g or
+ unzip 5.0p1 (or later versions) to extract them.
+
+ For a brief help on zip and unzip, run each without
specifying any
+ parameters on the command line.
+
+ The program is useful for packaging a set of files for distribution;
+ for archiving files; and for saving disk space by temporarily compress-
+ ing unused files or directories.
+
+ The zip program puts one or more compressed files into a
single zip
+ archive, along with information about the files (name, path,
date, time
+ of last modification, protection, and check information to
verify file
+ integrity). An entire directory structure can be packed into
a zip
+ archive with a single command. Compression ratios of 2:1 to
3:1 are
+ common for text files. zip has one compression method
(deflation) and
+ can also store files without compression. zip automatically chooses
+ the better of the two for each file to be compressed.
+
+ The basic command format is
+
+ zip options archive inpattern inpattern ...
+
+ where archive is a new or existing zip archive and
inpattern is a
+ directory or file path optionally including wildcards. When
given the
+ name of an existing zip archive, zip will replace
identically named
+ entries in the zip archive or add entries for new names. For example,
+ if foo.zip exists and contains foo/file1 and foo/file2, and the
direc-
+ tory foo contains the files foo/file1 and foo/file3, then:
+
+ zip -r foo.zip foo
+
+ or more concisely
+
+ zip -r foo foo
+
+ will replace foo/file1 in foo.zip and add foo/file3 to
foo.zip. After
+ this, foo.zip contains foo/file1, foo/file2, and
foo/file3, with
+ foo/file2 unchanged from before.
+
+ If the file list is specified as -@, [Not on MacOS] zip takes
the list
+ of input files from standard input. Under UNIX, this option
can be
+ used to powerful effect in conjunction with the find(1)
command. For
+ example, to archive all the C source files in the current
directory and
+ its subdirectories:
+
+ find . -name "*.[ch]" -print | zip source -@
+
+ (note that the pattern "*.[ch]" must be quoted to keep the
shell from
+ expanding it). zip will also accept a single dash ("-") as
the zip
+ file name, in which case it will write the zip file to standard output,
+ allowing the output to be piped to another program. For example:
+
+ zip -r - . | dd of=/dev/nrst0 obs=16k
+
+ would write the zip output directly to a tape with the
specified block
+ size for the purpose of backing up the current directory.
+
+ zip also accepts a single dash ("-") as the name of a file to
be com-
+ pressed, in which case it will read the file from standard
input,
+ allowing zip to take input from another program. For example:
+
+ tar cf - . | zip backup -
+
+ would compress the output of the tar command for the purpose of backing
+ up the current directory. This generally produces better compression
+ than the previous example using the -r option, because zip
can take
+ advantage of redundancy between files. The backup can be
restored using
+ the command
+
+ unzip -p backup | tar xf -
+
+ When no zip file name is given and stdout is not a terminal,
zip acts
+ as a filter, compressing standard input to standard output.
For exam-
+ ple,
+
+ tar cf - . | zip | dd of=/dev/nrst0 obs=16k
+
+ is equivalent to
+
+ tar cf - . | zip - - | dd of=/dev/nrst0 obs=16k
+
+ zip archives created in this manner can be extracted with the program
+ funzip which is provided in the unzip package, or by gunzip
which is
+ provided in the gzip package. For example:
+
+ dd if=/dev/nrst0 ibs=16k | funzip | tar xvf -
+
+ When changing an existing zip archive, zip will write a
temporary file
+ with the new contents, and only replace the old one when the
process of
+ creating the new version has been completed without error.
+
+ If the name of the zip archive does not contain an
extension, the
+ extension .zip is added. If the name already contains an extension
+ other than .zip the existing extension is kept unchanged.
+
+OPTIONS
+ -a [Systems using EBCDIC] Translate file to ASCII format.
+
+ -A Adjust self-extracting executable archive. A self-extracting
+ executable archive is created by prepending the SFX stub
to an
+ existing archive. The -A option tells zip to adjust
the entry
+ offsets stored in the archive to take into
account this
+ "preamble" data.
+
+ Note: self-extracting archives for the Amiga are a special
case. At
+ present, only the Amiga port of zip is capable of adjusting or updating
+ these without corrupting them. -J can be used to remove the
SFX stub
+ if other updates need to be made.
+
+ -B [VM/CMS and MVS] force file to be read binary (default
is text).
+
+ -Bn [TANDEM] set Edit/Enscribe formatting options with n
defined as
+ bit 0: Don't add delimiter (Edit/Enscribe)
+ bit 1: Use LF rather than CR/LF as delimiter (Edit/Enscribe)
+ bit 2: Space fill record to maximum record length (Enscribe)
+ bit 3: Trim trailing space (Enscribe)
+ bit 8: Force 30K (Expand) large read for unstructured files
+
+ -b path
+ Use the specified path for the temporary zip archive.
For exam-
+ ple:
+
+ zip -b /tmp stuff *
+
+ will put the temporary zip archive in the directory
/tmp, copy-
+ ing over stuff.zip to the current directory when
done. This
+ option is only useful when updating an existing archive,
and the
+ file system containing this old archive does not
have enough
+ space to hold both old and new archives at the same time.
+
+ -c Add one-line comments for each file. File operations (adding,
+ updating) are done first, and the user is then
prompted for a
+ one-line comment for each file. Enter the comment
followed by
+ return, or just return for no comment.
+
+ -d Remove (delete) entries from a zip archive. For example:
+
+ zip -d foo foo/tom/junk foo/harry/\* \*.o
+
+ will remove the entry foo/tom/junk, all of the files
that start
+ with foo/harry/, and all of the files that end with .o
(in any
+ path). Note that shell pathname expansion has been inhibited
+ with backslashes, so that zip can see the asterisks, enabling
+ zip to match on the contents of the zip archive
instead of the
+ contents of the current directory. You can also use
quotes to
+ escape wildcards, as in
+
+ zip -d foo foo/tom/junk "foo/harry/*" "*.o"
+
+ Under systems where the shell does not expand wildcards,
such as
+ MSDOS, the backslashes are not needed. The above would
then be
+
+ zip -d foo foo/tom/junk foo/harry/* *.o
+
+ Under MSDOS, -d is case sensitive when it matches names
in the
+ zip archive. This requires that file names be entered
in upper
+ case if they were zipped by PKZIP on an MSDOS system.
+
+ -df [MacOS] Include only data-fork of files zipped into the archive.
+ Good for exporting files to foreign operating-systems.
+ Resource-forks will be ignored at all.
+
+ -D Do not create entries in the zip archive for directories.
+ Directory entries are created by default so
that their
+ attributes can be saved in the zip archive. The environment
+ variable ZIPOPT can be used to change the default
options. For
+ example under Unix with sh:
+
+ ZIPOPT="-D"; export ZIPOPT
+
+ (The variable ZIPOPT can be used for any option except
-i and -x
+ and can include several options.) The option -D is a shorthand
+ for -x "*/" but the latter cannot be set as default
in the
+ ZIPOPT environment variable.
+
+ -e Encrypt the contents of the zip archive using a
password which
+ is entered on the terminal in response to a prompt
(this will
+ not be echoed; if standard error is not a tty, zip
will exit
+ with an error). The password prompt is repeated to
save the
+ user from typing errors. Note that this encrypts with standard
+ pkzip encryption which is considered weak.
+
+ -E [OS/2] Use the .LONGNAME Extended Attribute (if found)
as file-
+ name.
+
+ -f Replace (freshen) an existing entry in the zip archive
only if
+ it has been modified more recently than the version
already in
+ the archive; unlike the update option (-u) this will
not add
+ files that are not already in the zip archive. For example:
+
+ zip -f foo
+
+ This command should be run from the same directory
from which
+ the original zip command was run, since paths
stored in zip
+ archives are always relative.
+
+ Note that the timezone environment variable TZ should
be set
+ according to the local timezone in order for the -f ,
-u and -o
+ options to work correctly. The reasons behind this are somewhat
+ subtle but have to do with the differences between the Unix-for-
+ mat file times (always in GMT) and most of the other operating
+ systems (always local time) and the necessity to
compare the
+ two. A typical TZ value is ``MET-1MEST'' (Middle
European time
+ with automatic adjustment for ``summertime'' or Daylight Savings
+ Time).
+
+ -F Fix the zip archive. This option can be used if some
portions of
+ the archive are missing. It is not guaranteed to
work, so you
+ MUST make a backup of the original archive first.
+
+ When doubled as in -FF the compressed sizes given
inside the
+ damaged archive are not trusted and zip scans for
special signa-
+ tures to identify the limits between the archive
members. The
+ single -F is more reliable if the archive is not too
much dam-
+ aged, for example if it has only been truncated, so
try this
+ option first.
+
+ Neither option will recover archives that have been incorrectly
+ transferred in ascii mode instead of binary. After the repair,
+ the -t option of unzip may show that some files have a
bad CRC.
+ Such files cannot be recovered; you can remove them
from the
+ archive using the -d option of zip.
+
+ -g Grow (append to) the specified zip archive, instead of creating
+ a new one. If this operation fails, zip attempts to
restore the
+ archive to its original state. If the restoration
fails, the
+ archive might become corrupted. This option is
ignored when
+ there's no existing archive or when at least one
archive member
+ must be updated or deleted.
+
+ -h Display the zip help information (this also appears if
zip is
+ run with no arguments).
+
+ -i files
+ Include only the specified files, as in:
+
+ zip -r foo . -i \*.c
+
+ which will include only the files that end in .c in the current
+ directory and its subdirectories. (Note for PKZIP
users: the
+ equivalent command is
+
+ pkzip -rP foo *.c
+
+ PKZIP does not allow recursion in directories other
than the
+ current one.) The backslash avoids the shell filename substitu-
+ tion, so that the name matching is performed by
zip at all
+ directory levels. Not escaping wildcards on shells
that do
+ wildcard substitution before zip gets the command line
may seem
+ to work but files in subdirectories matching the
pattern will
+ never be checked and so not matched. For shells, such
as Win32
+ command prompts, that do not replace file patterns containing
+ wildcards with the respective file names, zip will do
the recur-
+ sion and escaping the wildcards is not needed.
+
+ Also possible:
+
+ zip -r foo . -...@include.lst
+
+ which will only include the files in the current
directory and
+ its subdirectories that match the patterns in
the file
+ include.lst, one file pattern per line.
+
+ -I [Acorn RISC OS] Don't scan through Image files. When
used, zip
+ will not consider Image files (eg. DOS partitions
or Spark
+ archives when SparkFS is loaded) as directories but
will store
+ them as single files.
+
+ For example, if you have SparkFS loaded, zipping a Spark archive
+ will result in a zipfile containing a directory (and
its con-
+ tent) while using the 'I' option will result in a
zipfile con-
+ taining a Spark archive. Obviously this second case will
also be
+ obtained (without the 'I' option) if SparkFS isn't loaded.
+
+ -j Store just the name of a saved file (junk the path),
and do not
+ store directory names. By default, zip will store the
full path
+ (relative to the current path).
+
+ -jj [MacOS] record Fullpath (+ Volname). The complete path including
+ volume will be stored. By default the relative path
will be
+ stored.
+
+ -J Strip any prepended data (e.g. a SFX stub) from the archive.
+
+ -k Attempt to convert the names and paths to conform
to MSDOS,
+ store only the MSDOS attribute (just the user write attribute
+ from UNIX), and mark the entry as made under MSDOS
(even though
+ it was not); for compatibility with PKUNZIP under
MSDOS which
+ cannot handle certain names such as those with two dots.
+
+ -l Translate the Unix end-of-line character LF into the
MSDOS con-
+ vention CR LF. This option should not be used on binary
files.
+ This option can be used on Unix if the zip file is
intended for
+ PKUNZIP under MSDOS. If the input files already contain
CR LF,
+ this option adds an extra CR. This ensures that unzip -a
on Unix
+ will get back an exact copy of the original file, to
undo the
+ effect of zip -l. See the note on binary detection
for -ll
+ below.
+
+ -ll Translate the MSDOS end-of-line CR LF into Unix LF.
This option
+ should not be used on binary files and a warning will
be issued
+ when a file is converted that later is detected to be binary.
+ This option can be used on MSDOS if the zip file is
intended for
+ unzip under Unix.
+
+ In Zip 2.31 and later, binary detection has been changed
from a
+ simple percentage of binary characters being
considered binary
+ to a more selective method that should consider files
in many
+ character sets, including UTF-8, that only include text charac-
+ ters in that character set to be text. This allows
unzip -a to
+ convert these files.
+
+ -L Display the zip license.
+
+ -m Move the specified files into the zip archive;
actually, this
+ deletes the target directories/files after making the specified
+ zip archive. If a directory becomes empty after
removal of the
+ files, the directory is also removed. No deletions
are done
+ until zip has created the archive without error. This
is useful
+ for conserving disk space, but is potentially dangerous
so it is
+ recommended to use it in combination with -T to test the archive
+ before removing all input files.
+
+ -MM All input patterns must match at least one file and
all input
+ files found must be readable. Normally when an input pattern
+ does not match a file the "name not matched" warning is
issued
+ and when an input file has been found but later is
missing or
+ not readable a missing or not readable warning is
issued. In
+ either case zip continues creating the archive, with
missing or
+ unreadable new files being skipped and files already
in the
+ archive remaining unchanged. After the archive is
created, if
+ any files were not readable zip returns the OPEN error
code (18
+ on most systems) instead of the normal success return (0
on most
+ systems). With -MM set, zip exits as soon as an input pattern
+ is not matched (whenever the "name not matched" warning
would be
+ issued) or when an input file is not readable. In
either case
+ zip exits with an OPEN error and no archive is created.
+
+ This option is useful when a known list of files is to
be zipped
+ so any missing or unreadable files will result in an
error. It
+ is less useful when used with wildcards, but zip will
still exit
+ with an error if any input pattern doesn't match at
least one
+ file and if any matched files are unreadable. If you
want to
+ create the archive anyway and only need to know if
files were
+ skipped, don't use -MM and just check the return code.
+
+ -n suffixes
+ Do not attempt to compress files named with the given suffixes.
+ Such files are simply stored (0% compression) in the
output zip
+ file, so that zip doesn't waste its time trying to compress
+ them. The suffixes are separated by either colons
or semi-
+ colons. For example:
+
+ zip -rn .Z:.zip:.tiff:.gif:.snd foo foo
+
+ will copy everything from foo into foo.zip, but will
store any
+ files that end in .Z, .zip, .tiff, .gif, or .snd without
trying
+ to compress them (image and sound files often have
their own
+ specialized compression methods). By default, zip does
not com-
+ press files with extensions in the
list
+ .Z:.zip:.zoo:.arc:.lzh:.arj. Such files are stored
directly in
+ the output archive. The environment variable ZIPOPT can
be used
+ to change the default options. For example under Unix
with csh:
+
+ setenv ZIPOPT "-n .gif:.zip"
+
+ To attempt compression on all files, use:
+
+ zip -n : foo
+
+ The maximum compression option -9 also attempts
compression on
+ all files regardless of extension.
+
+ On Acorn RISC OS systems the suffixes are actually
filetypes (3
+ hex digit format). By default, zip does not compress
files with
+ filetypes in the list DDC:D96:68E (i.e. Archives, CFS
files and
+ PackDir files).
+
+ -N [Amiga, MacOS] Save Amiga or MacOS filenotes as
zipfile com-
+ ments. They can be restored by using the -N option of
unzip. If
+ -c is used also, you are prompted for comments only
for those
+ files that do not have filenotes.
+
+ -o Set the "last modified" time of the zip archive to
the latest
+ (oldest) "last modified" time found among the entries in
the zip
+ archive. This can be used without any other
operations, if
+ desired. For example:
+
+ zip -o foo
+
+ will change the last modified time of foo.zip to the
latest time
+ of the entries in foo.zip.
+
+ -P password
+ use password to encrypt zipfile entries (if any). THIS
IS INSE-
+ CURE! Many multi-user operating systems provide ways
for any
+ user to see the current command line of any other user;
even on
+ stand-alone systems there is always the threat of over-the-
+ shoulder peeking. Storing the plaintext password as
part of a
+ command line in an automated script is even worse. Whenever
+ possible, use the non-echoing, interactive prompt to
enter pass-
+ words. (And where security is truly important, use
strong
+ encryption such as Pretty Good Privacy instead of the relatively
+ weak encryption provided by standard zipfile utilities.)
+
+ -q Quiet mode; eliminate informational messages and comment
+ prompts. (Useful, for example, in shell scripts and background
+ tasks).
+
+ -Qn [QDOS] store information about the file in the file
header with
+ n defined as
+ bit 0: Don't add headers for any file
+ bit 1: Add headers for all files
+ bit 2: Don't wait for interactive key press on exit
+
+ -r Travel the directory structure recursively; for example:
+
+ zip -r foo.zip foo
+
+ or a bit more concisely
+
+ zip -r foo foo
+
+ In this case, all the files and directories in foo are
saved in
+ a zip archive named foo.zip, including files with names starting
+ with ".", since the recursion does not use the shell's file-name
+ substitution mechanism. If you wish to include only a specific
+ subset of the files in directory foo and its
subdirectories, use
+ the -i option to specify the pattern of files to be included.
+ You should not use -r with the name ".*", since that matches
+ ".." which will attempt to zip up the parent directory (proba-
+ bly not what was intended).
+
+ -R Travel the directory structure recursively starting at
the cur-
+ rent directory; for example:
+
+ zip -R foo '*.c'
+
+ In this case, all the files matching *.c in the tree
starting at
+ the current directory are stored into a zip
archive named
+ foo.zip. Note for PKZIP users: the equivalent command is
+
+ pkzip -rP foo *.c
+
+ -S [MSDOS, OS/2, WIN32 and ATARI] Include system and hidden
files.
+ [MacOS] Includes finder invisible files, which are
ignored oth-
+ erwise.
+
+ -t mmddyyyy
+ Do not operate on files modified prior to the
specified date,
+ where mm is the month (0-12), dd is the day of the month (1-31),
+ and yyyy is the year. The ISO 8601 date format
yyyy-mm-dd is
+ also accepted. For example:
+
+ zip -rt 12071991 infamy foo
+
+ zip -rt 1991-12-07 infamy foo
+
+ will add all the files in foo and its subdirectories
that were
+ last modified on or after 7 December 1991, to the zip archive
+ infamy.zip.
+
+ -tt mmddyyyy
+ Do not operate on files modified after or at the
specified date,
+ where mm is the month (0-12), dd is the day of the month (1-31),
+ and yyyy is the year. The ISO 8601 date format
yyyy-mm-dd is
+ also accepted. For example:
+
+ zip -rtt 11301995 infamy foo
+
+ zip -rtt 1995-11-30 infamy foo
+
+ will add all the files in foo and its subdirectories
that were
+ last modified before 30 November 1995, to the zip archive
+ infamy.zip.
+
+ -T Test the integrity of the new zip file. If the check
fails, the
+ old zip file is unchanged and (with the -m option)
no input
+ files are removed.
+
+ -u Replace (update) an existing entry in the zip archive
only if it
+ has been modified more recently than the version
already in the
+ zip archive. For example:
+
+ zip -u stuff *
+
+ will add any new files in the current directory, and
update any
+ files which have been modified since the zip archive stuff.zip
+ was last created/modified (note that zip will not try
to pack
+ stuff.zip into itself when you do this).
+
+ Note that the -u option with no arguments acts
like the -f
+ (freshen) option.
+
+ -v Verbose mode or print diagnostic version info.
+
+ Normally, when applied to real operations, this option enables
+ the display of a progress indicator during
compression and
+ requests verbose diagnostic info about zipfile
structure oddi-
+ ties.
+
+ When -v is the only command line argument, and either
stdin or
+ stdout is not redirected to a file, a diagnostic
screen is
+ printed. In addition to the help screen header with program
+ name, version, and release date, some pointers to the Info-ZIP
+ home and distribution sites are given. Then, it shows informa-
+ tion about the target environment (compiler type and
version, OS
+ version, compilation date and the enabled optional
features used
+ to create the zip executable.
+
+ -V [VMS] Save VMS file attributes and use portable
form. zip
+ archives created with this option are truncated at EOF
but still
+ may not be usable on other systems depending on the
file types
+ being zipped.
+
+ -VV [VMS] Save VMS file attributes. zip archives created
with this
+ option include the entire file and should be able to recreate
+ most VMS files on VMS systems but these archives will generally
+ not be usable on other systems.
+
+ -w [VMS] Append the version number of the files to
the name,
+ including multiple versions of files. (default: use
only the
+ most recent version of a specified file).
+
+ -x files
+ Explicitly exclude the specified files, as in:
+
+ zip -r foo foo -x \*.o
+
+ which will include the contents of foo in foo.zip while exclud-
+ ing all the files that end in .o. The backslash
avoids the
+ shell filename substitution, so that the name matching
is per-
+ formed by zip at all directory levels. If you do
not escape
+ wildcards in patterns it may seem to work but files in subdirec-
+ tories will not be checked for matches.
+
+ Also possible:
+
+ zip -r foo foo -...@exclude.lst
+
+ which will include the contents of foo in foo.zip while exclud-
+ ing all the files that match the patterns in
the file
+ exclude.lst (each file pattern on a separate line).
+
+ -X Do not save extra file attributes (Extended Attributes
on OS/2,
+ uid/gid and file times on Unix).
+
+ -y Store symbolic links as such in the zip archive, instead
of com-
+ pressing and storing the file referred to by the
link (UNIX
+ only).
+
+ -z Prompt for a multi-line comment for the entire zip
archive. The
+ comment is ended by a line containing just a period,
or an end
+ of file condition (^D on UNIX, ^Z on MSDOS, OS/2, and
VMS). The
+ comment can be taken from a file:
+
+ zip -z foo < foowhat
+
+ -# Regulate the speed of compression using the specified
digit #,
+ where -0 indicates no compression (store all files),
-1 indi-
+ cates the fastest compression method (less
compression) and -9
+ indicates the slowest compression method (optimal compression,
+ ignores the suffix list). The default compression level
is -6.
+
+ -! [WIN32] Use priviliges (if granted) to obtain all
aspects of
+ WinNT security.
+
+ -@ Take the list of input files from standard input. Only
one file-
+ name per line.
+
+ -$ [MSDOS, OS/2, WIN32] Include the volume label for
the drive
+ holding the first file to be compressed. If you want to include
+ only the volume label or to force a specific drive,
use the
+ drive name as first file name, as in:
+
+ zip -$ foo a: c:bar
+
+EXAMPLES
+ The simplest example:
+
+ zip stuff *
+
+ creates the archive stuff.zip (assuming it does not exist) and
puts all
+ the files in the current directory in it, in compressed form (the .zip
+ suffix is added automatically, unless that archive name given contains
+ a dot already; this allows the explicit specification of
other suf-
+ fixes).
+
+ Because of the way the shell does filename substitution, files starting
+ with "." are not included; to include these as well:
+
+ zip stuff .* *
+
+ Even this will not include any subdirectories from the
current direc-
+ tory.
+
+ To zip up an entire directory, the command:
+
+ zip -r foo foo
+
+ creates the archive foo.zip, containing all the files and directories
+ in the directory foo that is contained within the current directory.
+
+ You may want to make a zip archive that contains the files
in foo,
+ without recording the directory name, foo. You can use the -j
option
+ to leave off the paths, as in:
+
+ zip -j foo foo/*
+
+ If you are short on disk space, you might not have enough room
to hold
+ both the original directory and the corresponding
compressed zip
+ archive. In this case, you can create the archive in steps
using the
+ -m option. If foo contains the subdirectories tom, dick, and
harry,
+ you can:
+
+ zip -rm foo foo/tom
+ zip -rm foo foo/dick
+ zip -rm foo foo/harry
+
+ where the first command creates foo.zip, and the next two
add to it.
+ At the completion of each zip command, the last created
archive is
+ deleted, making room for the next zip command to function.
+
+PATTERN MATCHING
+ This section applies only to UNIX, though the ?, *, and [] special
+ characters are implemented on other systems including MSDOS and
Win32.
+ Watch this space for details on MSDOS and VMS operation.
+
+ The UNIX shells (sh(1) and csh(1)) do filename substitution on command
+ arguments. The special characters are:
+
+ ? match any single character
+
+ * match any number of characters (including none)
+
+ [] match any character in the range indicated within the brackets
+ (example: [a-f], [0-9]).
+
+ When these characters are encountered (without being
escaped with a
+ backslash or quotes), the shell will look for files relative
to the
+ current path that match the pattern, and replace the
argument with a
+ list of the names that matched.
+
+ The zip program can do the same matching on names that are in
the zip
+ archive being modified or, in the case of the -x
(exclude) or -i
+ (include) options, on the list of files to be operated on,
by using
+ backslashes or quotes to tell the shell not to do the name expansion.
+ In general, when zip encounters a name in the list of files to
do, it
+ first looks for the name in the file system. If it finds it,
it then
+ adds it to the list of files to do. If it does not find it,
it looks
+ for the name in the zip archive being modified (if it
exists), using
+ the pattern matching characters described above, if present.
For each
+ match, it will add that name to the list of files to be processed,
+ unless this name matches one given with the -x option, or
does not
+ match any name given with the -i option.
+
+ The pattern matching includes the path, and so patterns like
\*.o match
+ names that end in ".o", no matter what the path prefix is.
Note that
+ the backslash must precede every special character
(i.e. ?*[]), or the
+ entire argument must be enclosed in double quotes ("").
+
+ In general, use backslash to make zip do the pattern matching
with the
+ -f (freshen) and -d (delete) options, and sometimes
after the -x
+ (exclude) option when used with an appropriate operation (add,
-u, -f,
+ or -d).
+
+ENVIRONMENT
+ ZIPOPT contains default options that will be used when running zip
+
+ ZIP [Not on RISC OS and VMS] see ZIPOPT
+
+ Zip$Options
+ [RISC OS] see ZIPOPT
+
+ Zip$Exts
+ [RISC OS] contains extensions separated by a : that
will cause
+ native filenames with one of the specified extensions
to be
+ added to the zip file with basename and extension
swapped. zip
+
+ ZIP_OPTS
+ [VMS] see ZIPOPT
+
+SEE ALSO
+ compress(1), shar(1L), tar(1), unzip(1L), gzip(1L)
+
+DIAGNOSTICS
+ The exit status (or error level) approximates the exit codes
defined by
+ PKWARE and takes on the following values, except under VMS:
+
+ 0 normal; no errors or warnings detected.
+
+ 2 unexpected end of zip file.
+
+ 3 a generic error in the zipfile format was
detected. Pro-
+ cessing may have completed successfully anyway;
some bro-
+ ken zipfiles created by other archivers have
simple work-
+ arounds.
+
+ 4 zip was unable to allocate memory for one or more buffers
+ during program initialization.
+
+ 5 a severe error in the zipfile format was
detected. Pro-
+ cessing probably failed immediately.
+
+ 6 entry too large to split (with zipsplit), read,
or write
+
+ 7 invalid comment format
+
+ 8 zip -T failed or out of memory
+
+ 9 the user aborted zip prematurely with control-C
(or simi-
+ lar)
+
+ 10 zip encountered an error while using a temp file
+
+ 11 read or seek error
+
+ 12 zip has nothing to do
+
+ 13 missing or empty zip file
+
+ 14 error writing to a file
+
+ 15 zip was unable to create a file to write to
+
+ 16 bad command line parameters
+
+ 18 zip could not open a specified file to read
+
+ VMS interprets standard Unix (or PC) return values as other, scarier-
+ looking things, so zip instead maps them into VMS-style
status codes.
+ The current mapping is as follows: 1 (success) for normal exit,
+ and (0x7fff000? + 16*normal_zip_exit_status) for all errors,
where the
+ `?' is 0 (warning) for zip value 12, 2 (error) for the zip
values 3, 6,
+ 7, 9, 13, 16, 18, and 4 (fatal error) for the remaining ones.
+
+BUGS
+ zip 2.32 is not compatible with PKUNZIP 1.10. Use zip 1.1 to produce
+ zip files which can be extracted by PKUNZIP 1.10.
+
+ zip files produced by zip 2.32 must not be updated by zip 1.1
or PKZIP
+ 1.10, if they contain encrypted members or if they have been produced
+ in a pipe or on a non-seekable device. The old versions of zip
or PKZIP
+ would create an archive with an incorrect format. The old
versions can
+ list the contents of the zip file but cannot extract it anyway (because
+ of the new compression algorithm). If you do not use
encryption and
+ use regular disk files, you do not have to care about this problem.
+
+ Under VMS, not all of the odd file formats are treated
properly. Only
+ stream-LF format zip files are expected to work with zip.
Others can
+ be converted using Rahul Dhesi's BILF program. This
version of zip
+ handles some of the conversion internally. When using Kermit
to trans-
+ fer zip files from Vax to MSDOS, type "set file type block" on
the Vax.
+ When transferring from MSDOS to Vax, type "set file type fixed"
on the
+ Vax. In both cases, type "set file type binary" on MSDOS.
+
+ Under VMS, zip hangs for file specification that uses
DECnet syntax
+ foo::*.*.
+
+ On OS/2, zip cannot match some names, such as those including
an excla-
+ mation mark or a hash sign. This is a bug in OS/2 itself:
the 32-bit
+ DosFindFirst/Next don't find such names. Other programs such
as GNU
+ tar are also affected by this bug.
+
+ Under OS/2, the amount of Extended Attributes displayed by DIR
is (for
+ compatibility) the amount returned by the 16-bit version of DosQuery-
+ PathInfo(). Otherwise OS/2 1.3 and 2.0 would report different
EA sizes
+ when DIRing a file. However, the structure layout returned
by the
+ 32-bit DosQueryPathInfo() is a bit different, it uses extra padding
+ bytes and link pointers (it's a linked list) to have all
fields on
+ 4-byte boundaries for portability to future RISC OS/2
versions. There-
+ fore the value reported by zip (which uses this 32-bit-mode
size) dif-
+ fers from that reported by DIR. zip stores the 32-bit
format for
+ portability, even the 16-bit MS-C-compiled version running on
OS/2 1.3,
+ so even this one shows the 32-bit-mode size.
+
+ Development of zip 3.0 and unzip 6.0 are underway. See
those source
+ distributions for many new features and the latest bug fixes.
+
+AUTHORS
+ Copyright (C) 1997-2006 Info-ZIP.
+
+ Copyright (C) 1990-1997 Mark Adler, Richard B. Wales, Jean-loup Gailly,
+ Onno van der Linden, Kai Uwe Rommel, Igor Mandrichenko, John
Bush and
+ Paul Kienitz. Permission is granted to any individual or institution
+ to use, copy, or redistribute this software so long as all of
the orig-
+ inal files are included, that it is not sold for profit, and
that this
+ copyright notice is retained.
+
+ LIKE ANYTHING ELSE THAT'S FREE, ZIP AND ITS ASSOCIATED
UTILITIES ARE
+ PROVIDED AS IS AND COME WITH NO WARRANTY OF ANY KIND, EITHER EXPRESSED
+ OR IMPLIED. IN NO EVENT WILL THE COPYRIGHT HOLDERS BE LIABLE
FOR ANY
+ DAMAGES RESULTING FROM THE USE OF THIS SOFTWARE.
+
+ Please send bug reports and comments to: zip-bugs at www.info-zip.org.
+ For bug reports, please include the version of zip (see zip
-h), the
+ make options used to compile it (see zip -v), the machine and operating
+ system in use, and as much additional information as possible.
+
+ACKNOWLEDGEMENTS
+ Thanks to R. P. Byrne for his Shrink.Pas program, which
inspired this
+ project, and from which the shrink algorithm was stolen; to
Phil Katz
+ for placing in the public domain the zip file format,
compression for-
+ mat, and .ZIP filename extension, and for accepting minor
changes to
+ the file format; to Steve Burg for clarifications on the
deflate for-
+ mat; to Haruhiko Okumura and Leonid Broukhis for providing some
useful
+ ideas for the compression algorithm; to Keith Petersen,
Rich Wales,
+ Hunter Goatley and Mark Adler for providing a mailing list and
ftp site
+ for the Info-ZIP group to use; and most importantly, to the Info-ZIP
+ group itself (listed in the file infozip.who) without whose tireless
+ testing and bug-fixing efforts a portable zip would not have
been pos-
+ sible. Finally we should thank (blame) the first Info-ZIP moderator,
+ David Kirschbaum, for getting us into this mess in the
first place.
+ The manual page was rewritten for UNIX by R. P. C. Rodgers.
+
+Info-ZIP 19 June 2006 (v2.32) ZIP(1L)
Added: vendor/zip/current/README
==============================================================================
--- (empty file)
+++ vendor/zip/current/README Sun Jun 15 20:45:02 2008
@@ -0,0 +1,168 @@
+Copyright (c) 1990-2006 Info-ZIP. All rights reserved.
+
+See the accompanying file LICENSE, version 2005-Feb-10 or later
+(the contents of which are also included in zip.h) for terms of use.
+If, for some reason, all of these are missing, the Info-ZIP license
+also may be found at: ftp://ftp.info-zip.org/pub/infozip/license.html
+
+This is Zip 2.32, a maintenance update for Zip 2.3. Changes include
+fixes and speedups to pattern matching, other bug fixes, addition
+of a C-Sharp example, and a new -MM option where input patterns must
+match at least one file and input files must be readable.
+
+Previous updates in Zip 2.31 included some bug fixes for Debian and
+SourceForge bugs, inclusion of the standard zip encryption code in the
+main code, some VMS updates, some changes to the Win32 projects, and
+some other bug fixes.
+
+We are also working on the new Zip 3.0 and companion UnZip 6.0 that
+finally support files and archives larger than 4 GB on systems that support
+large files and include other new features. See the latest betas for
+details and the new releases when available.
+
+
+Zip 2.32 is a compression and file packaging utility. It is
compatible with
+PKZIP 2.04g (Phil Katz ZIP) for MSDOS systems. There is a companion
to zip
+called unzip (of course) which you should be able to find the same place
+you got zip. See the file 'WHERE' for details on ftp sites and mail
+servers.
+
+This version of zip has been ported to a wide array of Unix and other
+mainframes, minis, and micros including VMS, OS/2, Minix, MSDOS,
Windows NT,
+Atari, Amiga, BeOS and VM/CMS. Although highly compatible with PKware's
+PKZIP and PKUNZIP utilities of MSDOS fame, our primary objective has been
+one of portability and other-than-MSDOS functionality. Features not found
+in the PKWare version include creation of zip files in a pipe or on a
+device, VMS, BeOS and OS/2 extended file attributes, conversion from
Unix to
+MSDOS text file format; and, of course, the ability to run on most of your
+favorite operating systems. And it's free.
+
+See the file WhatsNew for a summary of new features and the
file 'CHANGES' for
+a detailed list of all changes.
+
+Notes:
+
+Multi-volume support. This version does not support multi-volume archives
+as in pkzip 2.04g. This is expected to be in Zip 3.0 in the form of
+split archive support but the original PKZip spanning that only works on
+floppy disks will not be supported. Where spanned archives use floppy
+volume labels for marking volumes, split archives use the names of the
+split files. Otherwise these forms are identical and there is a
+procedure for converting between spanned and split archives.
+
+Installation. Please read the file INSTALL for information on how to
+compile and install zip, zipsplit, zipcloak, and zipnote. Please read
+the file MANUAL for information on how to use them. The file "contents"
+is a complete list of the files you should have in this distribution. Also,
+if you are using MSDOS, you should read the note on file formats at
the end
+of the contents file. (The contents file somehow got misplaced apparently
+in the Zip 2.3 distribution. If time permits we will create a new one.)
+
+Encryption. This version supports standard zip encryption. The encryption
+code was distributed separately before this version because of US export
+regulations but recent relaxing of export restrictions now allow the code
+to be included. Note that standard zip encryption is considered weak by
+today's standards. We are looking at adding strong encryption to a later
+release. Decryption can be made with unzip 5.0p1 or later, or with zipcloak.
+
+Bug reports. All bug reports should go to zip-bugs using the web form at
+www.info-zip.org, and suggestions for new features can be sent using the
+same form (although we don't promise to use all suggestions). Contact
us to
+send patches as we currently don't have a standard way to do that. Patches
+should be sent as context diffs only (diff -c).
+
+Ports. If you're considering a port, please check in with zip-bugs FIRST,
+since the code is constantly being updated behind the scenes. We'll
+arrange to give you access to the latest source.
+
+Discussion group. If you'd like to keep up to date with our Zip (and
+companion UnZip utility) development, join the ranks of BETA testers, add
+your own thoughts and contributions, etc., send a two-line mail message
+containing the commands HELP and LIST (on separate lines in the body
of the
+message, not on the subject line) to mxse...@lists.wku.edu. You'll receive
+two messages listing the various Info-ZIP mailing-list formats which are
+available (and also various unrelated lists) and instructions on how to
+subscribe to one or more of them (courtesy of Hunter Goatley). (Currently
+these are all discontinued but we are considering implementing new versions.
+However, a discussion group for Info-ZIP issues is at
+http://www.quicktopic.com/27/H/V6ZQZ54uKNL and can be used to discuss issues,
+request features, and is one place new betas and releases are announced.)
+
+Frequently asked questions on zip and unzip:
+
+Q. When unzipping I get an error message about "compression method 8".
+
+A. Please get the latest version of unzip. See the file 'WHERE' for details.
+
+
+Q. I can't extract this zip file that I just downloaded. I get
+ "zipfile is part of multi-disk archive" or some other message.
+
+A. Please make sure that you made the transfer in binary mode. Check
+ in particular that your copy has exactly the same size as the original.
+
+
+Q. When running unzip, I get a message about "End-of-central-directory
+ signature not found".
+
+A. This usually means that your zip archive is damaged, or that you
+ have an uncompressed file with the same name in the same directory.
+ In the first case, it makes more sense to contact the person you
+ obtained the zip file from rather than the Info-ZIP software
+ developers, and to make sure that your copy is strictly identical to
+ the original. In the second case, use "unzip zipfile.zip" instead
+ of "unzip zipfile", to let unzip know which file is the zip archive
+ you want to extract.
+
+
+Q. Why doesn't zip do <something> just like PKZIP does?
+
+A. Zip is not a PKZIP clone and is not intended to be one. In some
+ cases we feel PKZIP does not do the right thing (e.g., not
+ including pathnames by default); in some cases the operating system
+ itself is responsible (e.g., under Unix it is the shell which
+ expands wildcards, not zip). Info-ZIP's and PKWARE's zipfiles
+ are interchangeable, not the programs.
+
+ For example, if you are used to the following PKZIP command:
+ pkzip -rP foo *.c
+ you must use instead on Unix:
+ zip -R foo '*.c'
+ (the singled quotes are needed to let the shell know that it should
+ not expand the *.c argument but instead pass it on to the program)
+
+
+Q. Can I distribute zip and unzip sources and/or executables?
+
+A. You may redistribute the latest official distributions without any
+ modification, without even asking us for permission. You can charge
+ for the cost of the media (CDROM, diskettes, etc...) and a small copying
+ fee. If you want to distribute modified versions please contact us at
+ zip-bugs at www.info-zip.org first. You must not distribute beta versions.
+ The latest official distributions are on ftp.info-zip.org in directory
+ /pub/archiving/zip and subdirectories as well as on mirror sites.
+
+
+Q. Can I use the executables of zip and unzip to distribute my software?
+
+A. Yes, so long as it is made clear in the product documentation that
+ zip or unzip are not being sold, that the source code is freely
+ available, and that there are no extra or hidden charges resulting
+ from its use by or inclusion with the commercial product. Here is
+ an example of a suitable notice:
+
+ NOTE: <Product> is packaged on this CD using Info-ZIP's compression
+ utility. The installation program uses UnZip to read zip files from
+ the CD. Info-ZIP's software (Zip, UnZip and related utilities) is
+ free and can be obtained as source code or executables from various
+ anonymous-ftp sites, including ftp.info-zip.org:/pub/archiving/zip/*.
+
+
+Q. Can I use the source code of zip and unzip in my commercial application?
+
+A. Yes, so long as you include in your product an acknowledgment and an
+ offer of the original compression sources for free or for a small
+ copying fee, and make clear that there are no extra or hidden charges
+ resulting from the use of the compression code by your product. In other
+ words, you are allowed to sell only your own work, not ours. If you have
+ special requirements contact us at zip-bugs at www.info-zip.org.
Added: vendor/zip/current/README.CR
==============================================================================
--- (empty file)
+++ vendor/zip/current/README.CR Sun Jun 15 20:45:02 2008
@@ -0,0 +1,115 @@
+_____________________________________________________________________________
+
+ This is Info-ZIP's README.CR for zcrypt291.zip, last updated 31 May 2006.
+_____________________________________________________________________________
+
+
+The files described below contain the encryption/decryption code for
Zip 2.32,
+UnZip 5.52, and WiZ 5.02 (and later). These files are included in the main
+source for all of these. This file both describes the history of this package
+and notes the current conditions for use. Check the comments at the top
+of crypt.c and crypt.h for additional information.
+
+As of version 2.9, this encryption source code is copyrighted by Info-ZIP;
+see the enclosed LICENSE file for details. Older versions remain in
the pub-
+lic domain. Zcrypt was originally written in Europe and, as of April 2000,
+can be freely distributed from the US as well as other countries.
+
+(The ability to export from the US is new and is due to a change in
the Bureau
+of Export Administration's regulations, as published in Volume 65, Number
+10, of the Federal Register [14 January 2000]. Info-ZIP filed the required
+notification via e-mail on 9 April 2000; see the USexport.msg file in this
+archive. However, as of June 2002, it can now be freely distributed
in both
+source and object forms from any country, including the USA under License
+Exception TSU of the U.S. Export Administration Regulations (section 740.13(e))
+of 6 June 2002.)
+
+ LIKE ANYTHING ELSE THAT IS FREE, ZIP, UNZIP AND THEIR ASSOCIATED
+ UTILITIES ARE PROVIDED AS IS AND COME WITH NO WARRANTY OF ANY KIND,
+ EITHER EXPRESSED OR IMPLIED. IN NO EVENT WILL THE AUTHORS BE LIABLE
+ FOR ANY DAMAGES RESULTING FROM THE USE OF THIS SOFTWARE.
+
+The encryption code is a direct transcription of the algorithm from
+Roger Schlafly, described by Phil Katz in the file appnote.txt. This
+file is distributed with the PKZIP program (even in the version without
+encryption capabilities). Note that the encryption will probably resist
+attacks by amateurs if the password is well chosen and long enough (at
+least 8 characters) but it will probably not resist attacks by experts.
+Paul Kocher has made available information concerning a known-plaintext
+attack for the PKWARE encryption scheme; see http://www.cryptography.com/
+for details.) Short passwords consisting of lowercase letters only
can be
+recovered in a few hours on any workstation. But for casual cryptography
+designed to keep your mother from reading your mail, it's OK.
+
+For more serious encryption, check into PGP (Pretty Good Privacy), a
+public-key-based encryption system available from various Internet sites.
+PGP has Zip and UnZip built into it. The most recent version at the time
+this was written was 6.5, although older versions are still widespread.
+
+We are looking at adding AES strong encryption to future versions of
Zip and
+UnZip.
+
+Zip 2.3x and UnZip 5.5x are compatible with PKZIP 2.04g. (Thanks to Phil
+Katz for accepting our suggested minor changes to the zipfile format.)
+
+IMPORTANT NOTE:
+
+ Zip archives produced by Zip 2.0 or later must not be *updated* by
+ Zip 1.1 or PKZIP 1.10 or PKZIP 1.93a, if they contain encrypted members
+ or if they have been produced in a pipe or on a non-seekable device.
+ The old versions of Zip or PKZIP would destroy the zip structure. The
+ old versions can list the contents of the zipfile but cannot extract
+ it anyway (because of the new compression algorithm). If you do not
+ use encryption and compress regular disk files, you need not worry about
+ this problem.
+
+
+Contents that were distributed and now are part of the main source files:
+
+ file what it is
+ ---- ----------
+ README.CR this file
+ LICENSE Info-ZIP license (terms of reuse and redistribution)
+ USexport.msg export notice sent to US Bureau of Export Administration
+ WHERE where Zip/UnZip/WiZ and related utilities can be found
+ crypt.c code for encryption and decryption
+ crypt.h code for encryption and decryption
+ file_id.diz description file for some BBSes
+
+Most all of the files are in Unix (LF only) format. On MSDOS systems, you
+can use the -a option of UnZip to convert the source files to CRLF
+format. This is only necessary if you wish to edit the files -- they
+will compile as is with Microsoft C and Turbo/Borland C++ 1.0 or
+later. However, you will have to convert the files (using "unzip -a")
+to the CRLF format to compile with the older Turbo C 1.0 or 2.0. You
+should be able to find Zip and UnZip in the same place you found this
+(see ftp://ftp.info-zip.org/pub/infozip/Info-ZIP.html or the file
+"WHERE" for details).
+
+To update previous versions using the zcrypt sources:
+
+ (1) Get the main sources (e.g., Zip 2.3) and unpack into a working
+ directory, as usual.
+
+ (2) Overwrite the dummy crypt.c and crypt.h from the main sources with
+ the versions from this package. If you want to overwrite directly
+ out of the zcrypt291 archive, do not use UnZip's freshen/updating
+ option; the dummy files may be newer than the real sources in
+ zcrypt291. ("unzip -o zcrypt291 -d /your/working/dir" will do the
+ Right Thing in most cases, although it may overwrite a newer WHERE
+ file under some circumstances.)
+
+ (3) Read the main INSTALL document and compile normally! No makefile
+ changes are necessary on account of the zcrypt sources. You can
+ check that the version you just compiled has encryption or decryption
+ support enabled by typing "zip -v" or "unzip -v" and verifying that
+ the last "special compilation option" says encryption or decryption
+ is included.
+
+Encryption enables new "-e" and "-P password" options in Zip, and a new
+"-P password" option in UnZip--see the normal Zip and UnZip documentation
+for details. (Note that passing a plaintext password on the command line
+is potentially much more insecure than being prompted for it interactively,
+which is the default for UnZip and for Zip with "-e". Also note that the
+interactive method allows UnZip to deal with archives that use different
+passwords for different files.)
Added: vendor/zip/current/TODO
==============================================================================
--- (empty file)
+++ vendor/zip/current/TODO Sun Jun 15 20:45:02 2008
@@ -0,0 +1,72 @@
+This is old. See Changes and WhatsNew for what has been implemented.
+
+(See the latest Zip 3.0 beta for an update to this list.)
+
+Main features still missing for next official version:
+
+- use install in unix/Makefile instead of mkdir -p, look at install sh script.
+- #elif for those ports that can handle it.
+- what about zopen vs. fopen ?
+- Add zcreate or zfcreate for win32.
+- Assembler stuff in match.S (subexpressions)
+- zipping huge files (> 2G, unsigned 32bit)
+- Testsuite for zip and unzip (John D. Mitchell)
+- make a version.c or version.h that includes all the compiler names
+- run utils with dmalloc().
+- what to do with zip -F and zip -FF (readzipfile2()) ?
+- profiling of the code
+- multi disk zip files
+- zipfile modification tool (Greg)
+- Implement -- option (Thomas Klauser, w...@danbala.tuwien.ac.at)
+- don't add files with "Archive bit "
+ or add files with "Archive bit " (uwe.b...@metronet.de)
+- 32 bit file attributes
+- generate output without having to seek at all
+- remove contractions from zip error messages, make them clearer (Steve)
+- display "[text]" for ascii files when not quiet (no -q) (Timo Salmi)
+- does zipnote accept names with version number?
+- for a WORM, zip should create temp file only when updating; new archives
+ should be created directly.
+- APPNOTE.TXT specifies "4) The entries in the central directory may
+ not necessarily be in the same order that files appear in the zipfile"
+ but readzipfile() relies on same order.
+- on Mac, MPW C 3.3.1 requires #if (a || b) ["#if a || b" taken
as "#if a"]
+- on Unix, let -S be "include non-regular files without reading from them"
+ (as pkzip on Unix). This requires unzip support.
+- zip -l should do ebcdic->ascii translation on CMS and MVS
+- zip as subroutine (zdig/241)
+- accept k and M in zipsplit
+- store / (part of file name) as ! in OS/2 (problem only with -E ?)
+
+Known bugs:
+
+- On VMS, zip fails reading some files with "byte record too large for
+ user's buffer". You must use the "-V" option for such files.
+
+- on MSDOS, zip386.exe does not like "zip -bc: foo ..."
+
+- on MSDOS, zip386.exe is sometimes much slower than zip.exe. This is
+ probably a problem with DJGPP (to be investigated).
+
+- on NT with C shell, zip should not do file name expansion again.
+
+- zip zipfile ... ignores existing zipfile if name does not have an extension
+ (except for the -A option, generally used on self-extracting files).
+
+- For an sfx file without extension, "zip -A sfx" works but "zip sfx -A"
+ doesn't.
+
+- When storing files in a zipfile (-0), zip marks all of them as binary.
+
+- On VMS, some indexed files are not restored correctly after zip -V
and unzip.
+ (This is now known to be a problem of UnZip. The workaround for Zip 2.2
+ and newer is to use PK-style VMS extra fields; this is now the default.
+ NOTE that UnZip 5.32 has been fixed [971019]!)
+
+- zip and unzip should use the same pattern matching rules, particularly
+ on MSDOS and OS/2. On OS/2, "zip foo *.*" should also match files
+ without extension.
+ Partially DONE (OS/2 "*.*" matches "*".)
+
+- there should be a way to avoid updating archive members (only addition
+ of new files allowed)
Added: vendor/zip/current/USexport.msg
==============================================================================
--- (empty file)
+++ vendor/zip/current/USexport.msg Sun Jun 15 20:45:02 2008
@@ -0,0 +1,75 @@
+From roelofs (at) sonic.net Tue Jun 17 08:26:55 2003
+Date: Tue, 17 Jun 2003 08:26:50 -0700
+Message-Id: <200306171526.h5HFQoaw014091 (at) bolt.sonic.net>
+From: Greg Roelofs <newt (at) pobox.com>
+Reply-To: Greg Roelofs <newt (at) pobox.com>
+To: crypt (at) bis.doc.gov, enc (at) ncsc.mil, web_site (at) bis.doc.gov
+Subject: TSU NOTIFICATION - Encryption (Info-ZIP zcrypt.zip)
+Cc: newt (at) pobox.com, zip-bugs (at) lists.wku.edu
+
+
+ SUBMISSION TYPE: TSU
+ SUBMITTED BY: Greg Roelofs
+ SUBMITTED FOR: the Info-ZIP group (an informal, Internet-based
+ collection of software developers with the contact
+ address given in next item)
+ POINT OF CONTACT: Zip-Bugs (at) lists.wku.edu
+ PHONE and/or FAX: n/a
+ MANUFACTURER: n/a
+ PRODUCT NAME/MODEL #: zcrypt
+ ECCN: 5D002
+
+ NOTIFICATION:
+
+ ftp://ftp.info-zip.org/pub/infozip/src/zcrypt.zip
+
+
+FURTHER COMMENTS:
+
+(1) This notice is being sent in order to ensure that we may legally
+ take advantage of the 6 June 2002 amendment to 740.13 regarding
+ "corresponding object code." The encryption code in question is
+ unchanged since our original notification of 9 April 2000, appended
+ below and also reproduced within the above zcrypt.zip archive.
+ (Indeed, there has been no change to the core encryption/decryption
+ code in well over five years.)
+
+(2) The (larger) source archives for Zip, UnZip, MacZip, WiZ, and
+ potentially other packages, currently available in the same ftp
+ directory given above, also contain (or may contain) copies of
+ the same zcrypt source code.
+
+(3) ftp.info-zip.org currently points to a site in Germany, so techni-
+ cally it is not involved in "US export" in any direct way. However,
+ we encourage other sites to "mirror" our software, and some of these
+ mirror sites may be US-based (and therefore involved in reexport of
+ the code in question). In addition, some Info-ZIP members reside in
+ the US, and www.info-zip.org currently points to a site in Kentucky.
+
+
+ORIGINAL NOTIFICATION:
+
+From roelofs (at) sonic.net Sun Apr 9 15:11:45 2000
+Date: Sun, 9 Apr 2000 15:11:27 -0700
+Message-Id: <200004092211.PAA20023 (at) sonic.net>
+From: Greg Roelofs <newt (at) pobox.com>
+To: crypt (at) bxa.doc.gov
+Subject: notice of export of unrestricted encryption source code
+Cc: newt (at) pobox.com, zip-bugs (at) lists.wku.edu
+
+The Info-ZIP group, an informal, Internet-based collection of software
+developers with contact address Zip-Bugs (at) lists.wku.edu, hereby notifies
+the US Bureau of Export Administration (BXA) of the posting of freely
+available encryption source code on the Internet under License Exception
+TSU, to commence later today at this location:
+
+ ftp://ftp.info-zip.org/pub/infozip/src/zcrypt.zip
+
+This notification is in accordance with section 740.13(e) of the amended
+Export Administration Regulations, as published in the 14 January 2000
+issue of the Federal Register.
+
+--
+Greg Roelofs newt (at) pobox.com http://pobox.com/~newt/
+Newtware, PNG Group, Info-ZIP, Philips Research, ...
+
Added: vendor/zip/current/WHATSNEW
==============================================================================
--- (empty file)
+++ vendor/zip/current/WHATSNEW Sun Jun 15 20:45:02 2008
@@ -0,0 +1,80 @@
+WhatsNew file for Zip 2.32
+
+(See Changes for details)
+
+New things in Zip 2.32
+
+- Fixed -R operation to match the supplied file patterns in all recursed
+ subdirectories, like PKZIP 2.04 "-p -r" (or PKZIPC 4+ "-recurse")
+- Handle cases where -x, -R, and -i patterns are mixed
+- Fixes to ZipSplit, ZipNotes, and ZipCloak
+- Example C-Sharp code added for using zip32.dll (thanks to Adrian Maull)
+- Implemented some directory search speedups
+- Windows NTFS time fix
+- Fix VMS logical name parse problem
+- Handle VMS [...]
+- Add VMS DEBUG option
+- Fixed bug when encrypting large uncompressable files
+- Updated VMS help
+- Fixed selecting files to delete by date bug
+- Add new option, -MM, that will force Zip to exit with an OPEN error
+ (usually error code 18) as soon as it finds an input pattern that
+ is not matched during the directory scan or an input file that is
+ unreadable or locked when Zip tries to open it, and without creating
+ an archive (Note that, without -MM, Zip will do the usual thing of
+ warning when a pattern is not matched and skipping files it can't
+ read, creating the archive with what it can read, then exiting with
+ an OPEN error if files were skipped)
+- Add check for when zip tries to exceed the limit for seeking in
+ the output file and exit with error, instead of creating a
+ possibly bad archive
+- Can now handle Unix FIFO (named pipes)
+- Minor changes to allow Zip to compile with Visual C++ 2005
+
+New things in Zip 2.31
+
+- Crypt now part of source distribution (see Readme.cr)
+- Bug fixes:
+ - Debian patch 001 - Converted quoted strings
+ - Debian patch 002 - Makefile changes
+ - Debian patch 003 - Build changes
+ - Debian patch 004 - Changes to unix/configure
+ - Debian patch 005 - Fix for FNMAX path bug
+- Split VMS -V into -V and -VV (see Manual)
+- New VC6 project files thanks to Cosmin
+- AtheOS port (thanks to Ruslan Nickolaev)
+- Add api.c kluge for zip32.dll to support Visual Basic
+- Binary detection changed from 20% binary to new algorithm
+ that should better detect word processing files as binary
+ and should accept UTF-8 files as text. This flags the file
+ in the archive as TEXT or BINARY for use by UnZip for line
+ end conversion (see proginfo/txtvsbin.txt)
+- License update
+- DJGPP fixes
+- Many Makefile updates
+- Fixes to ZipSplit, ZipNotes, and ZipCloak
+
+New things in Zip 2.3
+
+- IBM OS/390 port (Unix like, but EBCDIC) by Paul von Behren
+- Apple Macintosh (MACOS) port by Dirk Haase
+- Theos port by Jean-Michel Dubois
+- Multibyte characterset support by Yoshioka Tsuneo
+- Support for ISO 8601 date format with -t and -tt options
+- Info-ZIP license
+
+New things in Zip 2.2
+
+- BEOS port by Chris Herborth
+- QDOS port by Jonathan Hudson
+- TANDEM port by Dave Smith
+- WINDLL port (16-bit Win 3.x and 32-bit WinNT/Win95) by Mike White
+- SYSV packages support by John Bush
+- zip -P SeCrEt encrypts entries in the zip file with password SeCrEt
+ (WARNING: THIS IS INSECURE, use at your own risk)
+- zip -R recurses into subdirectories of current dir like "PKZIP -rP"
+- zip -...@exclude.lst excludes files specified in the file exclude.lst
+- zip -...@include.lst includes files specified in the file include.lst
+- zip -@ only handles one filename per line, but supports whitespace
in names
+- zip -t mmddyyyy, 4 digit year number for uniqueness of years beyond 2000
+- zip -tt mmddyyyy only includes files before a specified date
Added: vendor/zip/current/WHERE
==============================================================================
--- (empty file)
+++ vendor/zip/current/WHERE Sun Jun 15 20:45:02 2008
@@ -0,0 +1,258 @@
+__________________________________________________________________________
+
+ This is the Info-ZIP file ``WHERE,'' last updated on 31 May 2006.
+__________________________________________________________________________
+
+ The latest version of this file can be found online at:
+
+ ftp://ftp.info-zip.org/pub/infozip/doc/WHERE
+
+ Note that some ftp sites may not yet have the latest versions of Zip
+ and UnZip when you read this. The latest versions always appear in
+ ftp://ftp.info-zip.org/pub/infozip/ (and subdirectories thereof) first,
+ except for encryption binaries, which always appear in
+ ftp://ftp.icce.rug.nl/infozip/ (and subdirectories) first.
+
+ IF YOU FIND AN ERROR: please let us know! We don't have time to
+ check each and every site personally (or even collectively), so any
+ number of the sites listed below may have moved or disappeared en-
+ tirely. E-mail to Zip-...@lists.wku.edu and we'll update this file.
+__________________________________________________________________________
+
+
+Info-ZIP's home WWW site is listed on Yahoo and is at:
+
+ ftp://ftp.info-zip.org/pub/infozip/Info-ZIP.html (master version)
+ http://ftp.info-zip.org/pub/infozip/ (master version)
+ http://www.info-zip.org/
+
+Note that the old sites at http://www.cdrom.com/pub/infozip/ and
+http://www.freesoftware.com/pub/infozip are PERMANENTLY BROKEN. They
+cannot be updated or removed, apparently.
+
+The Zip and UnZip pages have links to most known mirror sites carrying our
+source and/or binary distributions, and they generally are more up-to-date
+and have better information than what you are reading:
+
+ ftp://ftp.info-zip.org/pub/infozip/Zip.html
+ ftp://ftp.info-zip.org/pub/infozip/UnZip.html
+
+The related zlib package by Info-ZIP's Jean-loup Gailly and Mark Adler
is at:
+
+ http://www.zlib.net/
+
+Source-code archives for Info-ZIP's portable Zip, UnZip, and related
+utilities:
+
+ zip232.zip Zip 2.32 (deflation; includes zipnote/zipsplit/zipcloak)
+ zip232.tar.Z ditto, compress'd tar format
+
+ zip11.zip Zip 1.1 (shrinking, implosion; compatible w.
PKUNZIP 1.1)
+ zip11.tar.Z ditto, compress'd tar format
+
+ unzip552.zip UnZip 5.52 (all methods[*]; unzip/funzip/unzipsfx/zipgrep)
+ unzip552.tar.gz ditto, gzip'd tar format
+ unzip552.tar.Z ditto, compress'd tar format
+
+ unred552.zip UnZip 5.52 add-on, contains copyrighted unreduce support
+
+ zcrypt291.zip encryption support for Zip 2.3[**]
+ zcrypt10.zip encryption support for Zip 1.1
+
+ MacZip106src.zip contains all the GUI stuff and the project files
to build
+ the MacZip main-app. To build MacZip
successfully, both
+ the Zip 2.32 and UnZip 5.52 sources are required, too.
+
+ wiz502.zip WiZ 5.02, Windows 9x/NT GUI front-end for
Info-ZIP DLLs
+ wiz502+dlls.zip WiZ 5.02, Windows 9x/NT GUI front-end plus DLL sources
+
+[*] Unreducing is disabled by default, but is available as add-on.
+ As of July 2004, Unisys's LZW patent was expired worldwide, and
+ unshrinking is turned on by default since the release of UnZip 5.52.
+ See UnZip's INSTALL file for details.
+
+[**] As of January 2000, US export regulations were amended to allow export
+ of free encryption source code from the US. As of June 2002, these
+ regulations were further relaxed to allow export of encryption binaries
+ associated with free encryption source code. The Zip 2.32, UnZip 5.52
+ and Wiz 5.02 archives now include full crypto source code. As of the
+ Zip 2.32 release, all official binaries include encryption
support; the
+ former "zcr" archives ceased to exist.
+ (Note that restrictions may still exist in other countries, of course.)
+
+Executables archives (and related files) for Info-ZIP's software; not all
+of these will be immediately available due to lack of access to appropriate
+systems on the part of Info-ZIP members.
+
+ zip232x.zip MSDOS executables and docs
+ zip232x1.zip OS/2 1.x (16-bit) executables and docs
+ zip232x2.zip OS/2 2/3/4.x (32-bit) executables and docs
+ zip232xA.zip Amiga executables and docs
+ zip232xB.zip BeOS executables and docs
+ zip232xC.zip VM/CMS executable and docs
+ zip232xK.zip Tandem NSK executables and docs
+ zip232xM.xmit MVS classic executable
+ zip232xM-docs.zip MVS classic port, docs only
+ zip232dN.zip WinNT/Win9x (Intel) DLL, header files, docs
+ zip232xN.zip WinNT/Win9x (Intel) executables and docs
+ zip232xN-axp.zip WinNT (Alpha AXP) executables and docs
+ zip232xN-mip.zip WinNT (MIPS R4000) executables and docs
+ zip232xN-ppc.zip WinNT (PowerPC) executables and docs
+ zip232xO.zip IBM OS/390 Open Edition binaries and docs
+ zip232xQ.zip SMS/QDOS executables and docs
+ zip232xR.zip Acorn RISC OS executables and docs
+ zip232xT.zip Atari TOS executables and docs
+ zip232-vms-axp-obj.zip
+ VMS (Alpha AXP) object libs, link procedure and docs
+ zip232-vms-axp-exe.zip
+ VMS (Alpha AXP) executables for VMS 6.1 or later
and docs
+ zip232-vms-vax-decc-obj.zip
+ VMS (VAX) object libs (new DEC C), link procedure
and docs
+ zip232-vms-vax-decc-exe.zip
+ VMS (VAX) executables (DEC C) for VMS 6.1 or
later; docs
+ zip232-vms-vax-vaxc-obj.zip
+ VMS (VAX) object libs (old VAX C), link procedure
and docs
+ zip232x.hqx Macintosh BinHex'd executables and docs
+
+ unz552x.exe MSDOS self-extracting executable (16-bit
unzip, ..., docs)
+ unz552x3.exe MSDOS self-extracting executable (16-, 32-bit
unzip, docs)
+ unz552x1.exe OS/2 1.x (16-bit) self-extracting executables and docs
+ unz552x2.exe OS/2 2/3/4.x (32-bit) self-extracting executables
and docs
+ unz552d2.zip OS/2 2/3/4.x (32-bit) DLL, header file, demo exe
and docs
+ unz552xA.ami Amiga self-extracting executables and docs
+ unz552xA.lha Amiga executables and docs, LHa archive
+ unz552xB.sfx BeOS self-extracting executables and docs
+ unz552xB.tar.gz BeOS executables and docs, gzip'd tar archive
+ unz552xC.mod VM/CMS executable module in "packed" format
+ unz552xC-docs.zip VM/CMS docs, only
+ unz552xF.zip FlexOS executable and docs
+ unz552xK.zip Tandem NSK executable and docs
+ unz552xM.xmit MVS classic executable
+ unz552xM-docs.zip MVS classic port, docs only
+ unz552dN.zip NT4/W2K/XP/2K3/W9x (32-bit Intel) DLL, header
files, docs
+ unz552xN.exe NT/2K/XP/2K3/W9x self-extracting i386 executables
and docs
+ unz552xN-axp.exe WinNT (Alpha AXP) self-extracting executables and docs
+ unz552xN-mip.exe WinNT (MIPS R4000) self-extracting executables
and docs
+ unz552xN-ppc.exe WinNT (PowerPC) self-extracting executables and docs
+ unz552xQ.sfx SMS/QDOS self-extracting executables and docs
+ unz552xO.tar.Z IBM OS/390 Open edition (Unix-like), exes and docs
+ unz552xR.exe Acorn RISC OS self-extracting executables and docs
+ unz552xR.spk Acorn RISC OS Spark'd executables and docs
+ unz552xT.tos Atari TOS self-extracting executables and docs
+ unz552x-vms-axp-obj.bck VMS backup saveset,
+ contains UnZip (Alpha) obj libs, link procedure, docs
+ unz552x-vms-axp-obj.exe VMS (Alpha AXP) SFX archive (statically linked),
+ contains UnZip (Alpha) obj libs, link procedure, docs
+ unz552x-vms-axp-exe.exe VMS (Alpha AXP) SFX archive (dynamically linked),
+ contains UnZip (Alpha AXP, DEC C) executables and docs,
+ smaller than object archive, but requires VMS 6.1
+ unz552x-vms-vax-decc-obj.bck VMS backup saveset,
+ contains UnZip (new DEC C) obj libs, link
procedure, docs
+ unz552x-vms-vax-decc-obj.exe VMS (VAX) SFX archive (statically linked),
+ contains UnZip (new DEC C) obj libs, link
procedure, docs
+ unz552x-vms-vax-decc-exe.exe VMS (VAX) SFX archive (dynamically linked),
+ contains UnZip (new DEC C) executables and docs,
+ smaller than object archive, but requires VMS 6.1
+ unz552x-vms-vax-vaxc-obj.bck VMS backup saveset,
+ contains UnZip (old VAX C) obj libs, link
procedure, docs
+ unz552x-vms-vax-vaxc-obj.exe VMS (VAX) SFX archive (statically linked),
+ contains UnZip (old VAX C) obj libs, link
procedure, docs
+ unz552x.hqx Macintosh BinHex'd executables and docs for unzip
+ (unz552x.tar.{Z,gz} Unix exes/docs for Solaris 2.x, SCO Unix,
Linux, etc.,
+ depending on directory/location; generally only provided
+ in cases where the OS does *not* ship with a
bundled C
+ compiler)
+
+ MacZip106nc.hqx Macintosh combined Zip&UnZip application with GUI,
+ executables and docs (no encryption)
+ MacZip106c.hqx Macintosh combined Zip&UnZip application with GUI,
+ executables and docs (with encryption)
+
+ wiz502xN.exe WiZ 5.02 32-bit (Win9x/NT/2K/XP/2K3) app+docs (self-extr.)
+
+ UnzpHist.zip complete changes-history of UnZip and its precursors
+ ZipHist.zip complete changes-history of Zip
+
+ftp/web sites for the US-exportable sources and executables:
+
+ NOTE: Look for the Info-ZIP file names given above (not PKWARE or third-
+ party stuff) in the following locations. Some sites like to use slightly
+ different names, such as zip-2.32.tar.gz instead of zip232.tar.Z.
+
+ ftp://ftp.info-zip.org/pub/infozip/ [THE INFO-ZIP
HOME SITE]
+ ftp://sunsite.doc.ic.ac.uk/packages/zip/ [MIRRORS THE INFO-ZIP
HOME SITE]
+ ftp://unix.hensa.ac.uk/mirrors/uunet/pub/archiving/zip/
+
+ ftp://ftp.cmdl.noaa.gov/aerosol/doc/archiver/{all,dos,os2,mac,vax_alpha}/
+ ftp://garbo.uwasa.fi/pc/arcers/ [AND OTHER GARBO MIRRORS]
+ ftp://garbo.uwasa.fi/unix/arcers/ [AND OTHER GARBO MIRRORS]
+ ftp://ftp.elf.stuba.sk/pub/pc/pack/ [AND OTHER STUBA MIRRORS]
+ ftp://ftp-os2.cdrom.com/pub/os2/archiver/
+ ftp://ftp-os2.nmsu.edu/os2/archiver/
+ ftp://ftp.informatik.tu-muenchen.de/pub/comp/os/os2/archiver/
+ ftp://sumex-aim.stanford.edu/info-mac/cmp/
+ ftp://ftp.wustl.edu/pub/aminet/util/arc/ [AND OTHER AMINET MIRRORS]
+ ftp://atari.archive.umich.edu/pub/Archivers/ [AND OTHER UMICH MIRRORS]
+ http://www.umich.edu/~archive/atari/Archivers/
+ ftp://jake.educom.com.au/pub/infozip/acorn/ [Acorn
RISC OS]
+ http://www.sitec.net/maczip/
[MacZip port]
+
+ftp/web sites for the encryption and decryption sources and/or executables:
+
+ Outside the US:
+ ftp://ftp.info-zip.org/pub/infozip/ [THE INFO-ZIP HOME SITE]
+ ftp://ftp.icce.rug.nl/infozip/ [THE INFO-ZIP ENCRYPTION
HOME SITE]
+ ftp://ftp.elf.stuba.sk/pub/pc/pack/
+ ftp://garbo.uwasa.fi/pc/arcers/
+ ftp://ftp.inria.fr/system/arch-compr/
+ ftp://ftp.leo.org/pub/comp/os/os2/leo/archiver/
+ (mail server at ftp-m...@ftp.leo.org)
+
+ ftp://ftp.win.tue.nl/pub/compression/zip/
+ ftp://ftp.uni-erlangen.de/pub/pc/msdos/arc-utils/zip/
+
+
+The primary distribution site for the MacZip port can be found at:
+
+ http://www.sitec.net/maczip/
+
+ftp sites for VMS-format Zip and UnZip packages (sources, object files and
+executables, no encryption/decryption--see also "Mail servers" section below):
+
+ ftp.spc.edu [192.107.46.27] and ftp.wku.edu:
+
+ [.MACRO32]AAAREADME.TXT
+ [.MACRO32.SAVESETS]UNZIP.BCK or UNZIP.ZIP (if already have older version)
+ [.MACRO32.SAVESETS]ZIP.ZIP
+
+To find other ftp/web sites:
+
+ The "archie" ftp database utility can be used to find an ftp site near
+ you (although the command-line versions always seem to find old ver-
+ sions...the `FTPsearch' server at http://ftpsearch.ntnu.no/ftpsearch
+ --formerly `Archie 95'--is quite up-to-date, however). Or check a stan-
+ dard WWW search engine like AltaVista (http://www.altavista.digital.com/)
+ or Yahoo (http://www.yahoo.com/). If you don't know how to use these,
+ DON'T ASK US--read the web sites' help pages or check the Usenet groups
+ news.announce.newusers or news.answers or some such, or ask your system
+ administrator.
+
+Mail servers:
+
+ To get the encryption sources by e-mail, send the following commands
+ to ftp-m...@informatik.tu-muenchen.de:
+
+ get /pub/comp/os/os2/archiver/zcrypt291.zip
+ quit
+
+ To get the VMS Zip/UnZip package by e-mail, send the following
+ commands in the body of a mail message to file...@wku.edu (the
+ "HELP" command is also accepted):
+
+ SEND FILESERV_TOOLS
+ SEND UNZIP
+ SEND ZIP
+
+ To get Atari executables by e-mail, send a message to
+ at...@atari.archive.umich.edu for information about the mail server.
+__________________________________________________________________________
Added: vendor/zip/current/acorn/GMakefile
==============================================================================
--- (empty file)
+++ vendor/zip/current/acorn/GMakefile Sun Jun 15 20:45:02 2008
@@ -0,0 +1,130 @@
+# Makefile for Zip, ZipNote, ZipCloak and ZipSplit
+
+# add -g to CC to debug
+# add -d to BIND to debug
+CC = gcc -mlibscl
+BIND = $(CC)
+AS = $(CC) -c
+ASM = AS
+SQUEEZE = squeeze -v
+E =
+
+# flags
+# CFLAGS flags for C compile
+# LFLAGS1 flags after output file spec, before obj file list
+# LFLAGS2 flags after obj file list (libraries, etc)
+#
+LIB =
+CFLAGS = -O2 -mthrowback -DASMV
+ASMFLAGS = -throwback -objasm -upper
+LFLAGS1 =
+LFLAGS2 = $(LIB)
+
+# Uncomment the following line to enable support for Unix
+# Extra Field (Timezone)
+#CFLAGS = $(CFLAGS) -DUSE_EF_UT_TIME
+
+# object file lists
+OBJZ = o.zip o.zipfile o.zipup o.fileio o.util o.globals o.crc32
o.crctab \
+ o.crypt o.ttyio o.riscos o.acornzip o.swiven
+
+OBJI = o.deflate o.trees
+OBJA = o.match o.sendbits
+OBJU = o.zipfile_ o.fileio_ o.util_ o.globals o.riscos o.acornzip_ o.swiven
+OBJN = o.zipnote $(OBJU)
+OBJC = o.zipcloak $(OBJU) o.crctab o.crypt_ o.ttyio
+OBJS = o.zipsplit $(OBJU)
+
+ZIP_H = h.zip h.ziperr h.tailor acorn.h.osdep acorn.h.riscos acorn.h.swiven
+
+all: zip zipnote zipsplit zipcloak
+
+install: %.zip %.zipnote %.zipsplit %.zipcloak %.acorn.zipsfx \
+ zip zipnote zipsplit zipcloak acorn.zipsfx
+ $(SQUEEZE) zip %.zip
+ $(SQUEEZE) zipnote %.zipnote
+ $(SQUEEZE) zipsplit %.zipsplit
+ $(SQUEEZE) zipcloak %.zipcloak
+ copy acorn.zipsfx %.zipsfx ~CVF
+
+# rules for zip, zipnote, zipcloak and zipsplit
+
+o.api: c.api
+ $(CC) $(CFLAGS) -c c.api -o o.api
+o.crc32: c.crc32 $(ZIP_H)
+ $(CC) $(CFLAGS) -c c.crc32 -o o.crc32
+o.crctab: c.crctab $(ZIP_H)
+ $(CC) $(CFLAGS) -c c.crctab -o o.crctab
+o.crypt: c.crypt $(ZIP_H) h.crypt h.ttyio
+ $(CC) $(CFLAGS) -c c.crypt -o o.crypt
+o.deflate: c.deflate $(ZIP_H)
+ $(CC) $(CFLAGS) -c c.deflate -o o.deflate
+o.fileio: c.fileio $(ZIP_H)
+ $(CC) $(CFLAGS) -c c.fileio -o o.fileio
+o.globals: c.globals $(ZIP_H)
+ $(CC) $(CFLAGS) -c c.globals -o o.globals
+o.mktime: c.mktime
+ $(CC) $(CFLAGS) -c c.mktime -o o.mktime
+o.trees: c.trees $(ZIP_H)
+ $(CC) $(CFLAGS) -c c.trees -o o.trees
+o.ttyio: c.ttyio $(ZIP_H) h.crypt
+ $(CC) $(CFLAGS) -c c.ttyio -o o.ttyio
+o.util: c.util $(ZIP_H)
+ $(CC) $(CFLAGS) -c c.util -o o.util
+o.zip: c.zip $(ZIP_H) h.crypt h.revision h.ttyio
+ $(CC) $(CFLAGS) -c c.zip -o o.zip
+o.zipcloak: c.zipcloak $(ZIP_H) h.crypt h.revision h.ttyio
+ $(CC) $(CFLAGS) -c c.zipcloak -o o.zipcloak
+o.zipfile: c.zipfile $(ZIP_H)
+ $(CC) $(CFLAGS) -c c.zipfile -o o.zipfile
+o.zipnote: c.zipnote $(ZIP_H) h.revision
+ $(CC) $(CFLAGS) -c c.zipnote -o o.zipnote
+o.zipsplit: c.zipsplit $(ZIP_H) h.revision
+ $(CC) $(CFLAGS) -c c.zipsplit -o o.zipsplit
+o.zipup: c.zipup $(ZIP_H) h.crypt h.revision
+ $(CC) $(CFLAGS) -c c.zipup -o o.zipup
+
+o.crypt_: c.crypt $(ZIP_H) h.crypt h.ttyio
+ $(CC) $(CFLAGS) -DUTIL -c c.crypt -o o.crypt_
+o.util_: c.util $(ZIP_H)
+ $(CC) $(CFLAGS) -DUTIL -c c.util -o o.util_
+o.fileio_: c.fileio $(ZIP_H)
+ $(CC) $(CFLAGS) -DUTIL -c c.fileio -o o.fileio_
+o.zipfile_: c.zipfile $(ZIP_H)
+ $(CC) $(CFLAGS) -DUTIL -c c.zipfile -o o.zipfile_
+o.acornzip_: acorn.c.acornzip $(ZIP_H)
+ $(CC) $(CFLAGS) -I@ -DUTIL -c acorn.c.acornzip -o o.acornzip_
+
+o.riscos: acorn.c.riscos acorn.h.riscos $(ZIP_H)
+ $(CC) $(CFLAGS) -I@ -c acorn.c.riscos -o o.riscos
+
+o.acornzip: acorn.c.acornzip $(ZIP_H)
+ $(CC) $(CFLAGS) -I@ -c acorn.c.acornzip -o o.acornzip
+
+o.match: acorn.s.match
+ $(ASM) $(ASMFLAGS) -I@ acorn.s.match -o o.match
+
+o.sendbits: acorn.s.sendbits
+ $(ASM) $(ASMFLAGS) -I@ acorn.s.sendbits -o o.sendbits
+
+o.swiven: acorn.s.swiven
+ $(ASM) $(ASMFLAGS) -I@ acorn.s.swiven -o o.swiven
+
+zip: $(OBJZ) $(OBJI) $(OBJA)
+ $(BIND) -o zip$(E) $(LFLAGS1) $(OBJZ) $(OBJI) $(OBJA) $(LFLAGS2)
+zipnote: $(OBJN)
+ $(BIND) -o zipnote$(E) $(LFLAGS1) $(OBJN) $(LFLAGS2)
+zipcloak: $(OBJC)
+ $(BIND) -o zipcloak$(E) $(LFLAGS1) $(OBJC) $(LFLAGS2)
+zipsplit: $(OBJS)
+ $(BIND) -o zipsplit$(E) $(LFLAGS1) $(OBJS) $(LFLAGS2)
+
+clean:
+ remove zip
+ remove zipcloak
+ remove zipsplit
+ remove zipnote
+ create o.!fake! 0
+ wipe o.* ~cf
+
+# end of Makefile
Added: vendor/zip/current/acorn/ReadMe
==============================================================================
--- (empty file)
+++ vendor/zip/current/acorn/ReadMe Sun Jun 15 20:45:02 2008
@@ -0,0 +1,85 @@
+Acorn-specific compile instructions
+-----------------------------------
+
+Use the "RunMe1st" file (it is an Obey file) to convert all the files from
+"filename/[chs]" to "[chs].filename" (so that zip could be easily compiled
+under RISC OS). It will also set the correct makefile.
+
+To compile just set the CSD to the main zip directory and run 'amu'.
+
+Currently only the Acorn C V5 compiler has been tested but probably also
+Acorn C V4 and the Acorn Assembler V2 will be able to compile zip.
+
+The default makefile is configured without the support for the
+Extended Timestamp Extra Field. If you wan to enable it you have to
+add "-DUSE_EF_UT_TIME" to CFLAGS (see makefile). Without the Extended
+Timestamp Field support, zipfiles created by zip are identical to the
+zipfiles created by SparkFS. However, the Extended Timestamp Field can
+be useful if you are going to unzip your zipfiles on a non-RISC OS machine
+since the correct time stamp will be preserved across different timezones.
+Note that in this case, both the SparkFS Extra Field and the Extended
+Timestamp Extra Field will be used, so the zipfiles will still be fully
+compatible with SparkFS and with the RISC OS version of unzip.
+
+The executables-only distributions will be compiled without the
support for
+the Extended Timestamp Extra Field. If you need it but you can't
compile zip
+yourself, you can contact the authors at the Info-ZIP address who will
do it
+for you.
+
+
+Acorn-specific usage instructions
+---------------------------------
+
+An extra option ('I') has been added to the Acorn port: if it is specified
+zip will not consider Image files (eg. DOS partitions or Spark
archives when
+SparkFS is loaded) as directories but will store them as single files. This
+means that if you have, say, SparkFS loaded, zipping a Spark archive will
+result in a zipfile containing a directory (and its content) while
using the
+'I' option will result in a zipfile containing a Spark archive. Obviously
+this second case will also be obtained (without the 'I' option) if SparkFS
+isn't loaded.
+
+When adding files to a zipfile; to maintain FileCore compliance, all
+files named "file/ext" will be added to the archive as "file.ext".
+This presents no problem if you wish to use unzip to extract them on any
+other machine, as the files are correctly named. This also presents no
+problem if you use unzip for RISC OS, as the files are converted back to
+"file/ext" format. The only problem appears when you use SparkFS to
+decompress the files, as a file called "file.ext" will be extracted as
+"file_ext", not what it was added as. You must be careful about this.
+
+Case Specific. Depending on how you type the command, files will be added
+exactly as named; in this example:
+*zip new/zip newfile
+*zip new/zip NewFile
+*zip new/zip NEWFILE
+will create an archive containing 3 copies of the same Risc OS file 'newfile'
+called 'newfile', 'NewFile' and 'NEWFILE'. Please be careful.
+
+The Acorn port conserves file attributes, including filetype, so if you
+zip on an Acorn, and unzip on another Acorn, filetypes will be maintained
+precisely as if you used uncompressed files. If you de-archive on another
+machine (PC, Mac, Unix etc..), filetypes will be ignored, but the files
+will be identical despite this. This feature is fully compatible with
+SparkFS, so zipfiles created by zip will be correctly uncompressed (including
+filetype, etc.) by SparkFS.
+
+An additional feature went into this port to cope better with C-code
+and extensions. This allows the acorn files "c.foo" to be added to the
+archive as "foo/c", eventually appearing in the archive as "foo.c", allowing
+for better handling of C or C++ code. Example:
+*Set Zip$Exts "dir1:dir2:dir3"
+*zip new/zip dir1.file
+*zip new/zip dir2.help
+*zip new/zip dir3.textfile
+Creates a zipfile new/zip, with entries file.dir1, help.dir2, textfile.dir3.
+The usual settings for Zip$Exts are "h:o:s:c", allowing C code to be added
+to the archive in standard form.
+
+A final note about the Acorn port regards the use of the 'n' option:
this is
+used to specify a list of suffixes that will not be compressed (eg. .ZIP,
+since it is already a compressed file). Since RISC OS uses filetypes instead
+of suffixes, this list of suffixes is actually considered as a list of
+filetypes (3 hex digit format). By default, zip doesn't compress filetypes
+DDC (Archive, Spark or Zip), D96 (CFS files) and 68E (PackDir).
+
Added: vendor/zip/current/acorn/ReadMe.GMakefile
==============================================================================
--- (empty file)
+++ vendor/zip/current/acorn/ReadMe.GMakefile Sun Jun 15 20:45:02 2008
@@ -0,0 +1,14 @@
+GMakefile is for use with Acorn RISC OS and the forthcoming
+post-Acorn RISC OS for the compilation of both the current release and
+development versions of zip.
+
+It is recommended that you use gcc 2.95.4 or higher and you will need a
+suitable 'make' utility. Both are available from
+<URL:http://hard-mofo.dsvr.net/gcc/>.
+
+You will need the files gcc.zip and cc1.zip for the C compiler with the
+documentation available in the gccdoc.zip archive. GNU make can be
+found in the utils.zip archive, although most versions of 'make'
should be
+fine.
+
+When using gcc, check RunMe1st for two lines which need uncommenting.
Added: vendor/zip/current/acorn/RunMe1st
==============================================================================
--- (empty file)
+++ vendor/zip/current/acorn/RunMe1st Sun Jun 15 20:45:02 2008
@@ -0,0 +1,23 @@
+| This Obey file prepares the zip port for a Desktop C re-compile.
+| Run it and it will copy all the needed files into the correct
+| place.
+
+| Set the correct type of 'srcrename' so that the only requirement
+| for the user is to set 'RunMe1st' to Obey
+SetType <Obey$Dir>.srcrename FF8
+
+| Run 'srcrename' on the main zip directory with recursion enabled
+/<Obey$Dir>.srcrename -r -e c:h:s:o <Obey$Dir>.^
+
+| Create the 'o' directory
+CDir <Obey$Dir>.^.o
+
+| Put the Makefile in its correct place and set the correct filetype
+Copy <Obey$Dir>.makefile <Obey$Dir>.^.makefile ~C ~V F
+
+| Uncomment the following lines if you're using gcc
+|| Put the Makefile in its correct place and set the correct filetype
+|Copy <Obey$Dir>.GMakefile <Obey$Dir>.^.makefile ~C~VF
+
+SetType <Obey$Dir>.^.makefile FE1
+SetType <Obey$Dir>.zipsfx Obey
Added: vendor/zip/current/acorn/acornzip.c
==============================================================================
--- (empty file)
+++ vendor/zip/current/acorn/acornzip.c Sun Jun 15 20:45:02 2008
@@ -0,0 +1,593 @@
+/*
+ Copyright (c) 1990-2005 Info-ZIP. All rights reserved.
+
+ See the accompanying file LICENSE, version 2004-May-22 or later
+ (the contents of which are also included in zip.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
+*/
+#include <stdlib.h>
+#include <string.h>
+#include "zip.h"
+
+#ifndef UTIL
+
+#define PAD 0
+#define PATH_END '/'
+
+
+local int wild_recurse(char *whole, char *wildtail);
+local int uxtime2acornftime(unsigned *pexadr, unsigned *pldadr, time_t ut);
+
+extern char *label;
+local ulg label_time = 0;
+local ulg label_mode = 0;
+local time_t label_utim = 0;
+
+char *readd(DIR *d)
+/* Return a pointer to the next name in the directory stream d, or
NULL if
+ no more entries or an error occurs. */
+{
+ struct dirent *e;
+
+ e = readdir(d);
+ return (e == NULL ? (char *) NULL : e->d_name);
+}
+
+/* What we have here is a mostly-generic routine using opend()/readd()
and */
+/* isshexp()/MATCH() to find all the files matching a multi-part
filespec */
+/* using the portable pattern syntax. It shouldn't take too much
fiddling */
+/* to make it usable for any other platform that has directory
hierarchies */
+/* but no shell-level pattern matching. It works for patterns
throughout */
+/* the pathname, such as "foo:*.?/source/x*.[ch]".
*/
+
+/* whole is a pathname with wildcards, wildtail points somewhere in
the */
+/* middle of it. All wildcards to be expanded must come AFTER
wildtail. */
+
+local int wild_recurse(whole, wildtail) char *whole; char *wildtail;
+{
+ DIR *dir;
+ char *subwild, *name, *newwhole = NULL, *glue = NULL, plug = 0, plug2;
+ ush newlen, amatch = 0;
+ struct stat statb;
+ int disk_not_mounted=0;
+ int e = ZE_MISS;
+
+ if (!isshexp(wildtail)) {
+ if (stat(whole,&statb)==0 && (statb.st_mode & S_IREAD)!=0) {
+ return procname(whole, 0);
+ } else
+ return ZE_MISS; /* woops, no
wildcards! */
+ }
+
+ /* back up thru path components till existing dir found */
+ do {
+ name = wildtail + strlen(wildtail) - 1;
+ for (;;)
+ if (name-- <= wildtail || *name == '.') {
+ subwild = name + 1;
+ plug2 = *subwild;
+ *subwild = 0;
+ break;
+ }
+ if (glue)
+ *glue = plug;
+ glue = subwild;
+ plug = plug2;
+ dir = opendir(whole);
+ } while (!dir && !disk_not_mounted && subwild > wildtail);
+ wildtail = subwild; /* skip past non-wild
components */
+
+ if ((subwild = strchr(wildtail + 1, '.')) != NULL) {
+ /* this "+ 1" dodges the ^^^ hole left by *glue == 0 */
+ *(subwild++) = 0; /* wildtail = one component
pattern */
+ newlen = strlen(whole) + strlen(subwild) + 32;
+ } else
+ newlen = strlen(whole) + 31;
+ if (!dir || !(newwhole = malloc(newlen))) {
+ if (glue)
+ *glue = plug;
+ e = dir ? ZE_MEM : ZE_MISS;
+ goto ohforgetit;
+ }
+ strcpy(newwhole, whole);
+ newlen = strlen(newwhole);
+ if (glue)
+ *glue = plug; /* repair damage to
whole */
+ if (!isshexp(wildtail)) {
+ e = ZE_MISS; /* non-wild name not
found */
+ goto ohforgetit;
+ }
+
+ while (name = readd(dir)) {
+ if (MATCH(wildtail, name, 0)) {
+ strcpy(newwhole + newlen, name);
+ if (subwild) {
+ name = newwhole + strlen(newwhole);
+ *(name++) = '.';
+ strcpy(name, subwild);
+ e = wild_recurse(newwhole, name);
+ } else
+ e = procname(newwhole, 0);
+ newwhole[newlen] = 0;
+ if (e == ZE_OK)
+ amatch = 1;
+ else if (e != ZE_MISS)
+ break;
+ }
+ }
+
+ ohforgetit:
+ if (dir) closedir(dir);
+ if (subwild) *--subwild = '.';
+ if (newwhole) free(newwhole);
+ if (e == ZE_MISS && amatch)
+ e = ZE_OK;
+ return e;
+}
+
+int wild(p)
+char *p;
+{
+ char *path;
+ int toret;
+
+ /* special handling of stdin request */
+ if (strcmp(p, "-") == 0) /* if compressing stdin */
+ return newname(p, 0, 0);
+
+ path=p;
+ if (strchr(p, ':')==NULL && *p!='@') {
+ if (!(path=malloc(strlen(p)+3))) {
+ return ZE_MEM;
+ }
+ strcpy(path,"@.");
+ strcat(path,p);
+ }
+
+ toret=wild_recurse(path, path);
+
+ if (path!=p) {
+ free(path);
+ }
+ return toret;
+}
+
+int procname(n, caseflag)
+char *n; /* name to process */
+int caseflag; /* true to force case-sensitive match */
+/* Process a name or sh expression to operate on (or exclude). Return
+ an error code in the ZE_ class. */
+{
+ char *a; /* path and name for recursion */
+ DIR *d; /* directory stream from opendir() */
+ char *e; /* pointer to name from readd() */
+ int m; /* matched flag */
+ char *p; /* path for recursion */
+ struct stat s; /* result of stat() */
+ struct zlist far *z; /* steps through zfiles list */
+
+ if (strcmp(n, "-") == 0) /* if compressing stdin */
+ return newname(n, 0, caseflag);
+ else if (LSSTAT(n, &s))
+ {
+ /* Not a file or directory--search for shell expression in zip
file */
+
==============================================================================
Diff truncated at 200k characters