1
UnZip, version 5.52, 28 February 2005
3
Features added (or removed):
15
- VMS: Faster I/O, both reading the archive and creating extracted data
16
files. Disk paralysis during file allocation, when highwater marking
17
is enabled on the destination device, is gone. [Steven Schweda (SMS)]
18
- VMS: Where the C RTL permits, with SET PROCESS /PARSE = EXTENDED,
19
command-line case is preserved, obviating quotation of upper- or
20
mixed-case options and parameters. [SMS]
23
- i386 ASM_CRC code crc_i386.S, win32/crc_i386.asm, win32/crc_i386.c:
24
enabled optimization for i686 by default, as pre-686 CPUs are no longer
25
widely used nowadays. (win32/crc_lcc.asm was already i686-optimized)
27
- INSTALL, unzpriv.h: unshrinking is now enabled by default [CT]
28
- AtheOS/BeOS/Unix: do not restore SUID/SGID/Tacky bits per default; added
29
new security override option "-K" for backward compatibility, updated
30
unzip.1 man page [Johnny Lee, EG]
33
- unzpriv.h, list.c, zipinfo.c: added recognition of additional hosts and
34
compression methods according to latest PKWARE appnote specs [SPC]
35
- AtheOS/Syllable: new port, kindly contributed by Nikolaev Ruslan [SPC]
55
- Debian patch 001 - change __GNU__ to __GLIBC__ in unix/unxcfg.h. This is
56
required to build under glibc-based systems not being Linux-based (like
57
the Debian GNU/kFreeBSD port, which is in preparation). In fact,
58
everywhere the macro __GNU__ is used, __GLIBC__ should be used instead.
59
It could be made even shorter since defined(linux) || defined(__GLIBC__)
60
should be the same as simply defined(__GLIBC__).
61
- fileio.c - open_input_file(): added trailing newline to error message
62
[Debian patch 002, Santiago Vila]
65
- README: added short note about purpose of release 5.52 [Ed Gordon]
66
- format fixes [Ed Gordon]
69
- minor fixes [Ed Gordon]
72
- On VMS, when an odd output byte count is incremented to the next
73
larger even value, the extra byte written is now always zero,
74
reducing random differences between original and extracted files. [SMS]
75
- On VMS, "cannot find either fred;1 or fred;1.zip." messages have been
76
changed to show only non-fictional file names. [SMS]
80
- win32/vc6/unzip.dsw (new): replaced win32/VC6.dsp with a complete
81
Visual C++ 6.0 project to build unzip, funzip and unzipsfx, with both
82
ASM and non-ASM settings [CT]
83
- win32: MSC project files now preserve Win32 CRLF line ends [CT]
84
- win32/crc_i386.c: compile only if ASM_CRC is defined [CT]
85
- changed strcasecmp to strncasecmp in vms/vmszip.c [SMS]
88
- win32: for UnZip 5.5x, our tradition "distribute all text files with LF line
89
endings" remains in effect, MSC project files are plain text and get
90
distributed in UNIX LF-only format [SPC]
91
- windll/windll.rc: updated copyright year [SPC]
92
- proginfo/extra.fld: synchronized with current appnote.iz (and PKWARE's
93
appnote.txt v6.2 as of 2004-04-26) [SPC]
94
- win32/makefile.lcc: adapted to current lcc-win32 release [SPC]
95
- windll/uzexampl.c: fixed some function definition mismatches (previously
96
there were different but compatible param types used) [SPC]
97
- extract.c: fixed ucsize/csize mismatch test introduced in UnZip 5.51 and
98
corrected a follow-up extraction size bug (12 excess bytes written) for
99
encrypted stored entries [SPC]
100
- MacOS, OS2 - fixed security holes: formatted output (?printf) should not
101
use unchecked strings as format specifiers [Ulf Harnhammar]
102
- man/unzip.1, man/zipinfo.1: added explicit note on how to supply a
103
left bracket in a filename argument; clarified the scope of the -C option;
104
documented the different compressed size calculation modes for encrypted
105
entries in UnZip's and ZipInfo's listing output [Greg Roelofs, SPC]
106
- list.c, zipinfo.c: fixed ancient bug: when specifying only an exclude list,
107
all not-excluded zip archive entries should be listed [SPC]
108
- extract.c, unzpriv.h, w32.cfg, wce.cfg: added Cdecl modifier to the qsort
109
comparison function (allows use of stdcall mode in SFXWiz project) [SPC]
110
- extract.c, unzpriv.h: use LONGINT consistently for >>all<< zipfile offset
111
variables and adapt some type casts (allow handling of 4G archives on
112
systems that support 64bit file offsets) [Paul Slootman]
113
- renamed LONGINT into Z_OFF_T for better "in-code-documentation" [SPC]
114
- unzpriv.h, NEXTBYTE macro modified to allow compatibility with unsigned
115
bufsize counter incnt [Steven M. Schweda]
116
- unix/unxcfg.h: corrected Debian patch #1 by re-adding __GNU__ conditionals
117
where they appeared before [SPC]
118
- unzip.h, win32/decs.h, win32/struct.h: encapsulated declarations as
119
extern "C" for C++ compilation mode [SPC]
120
- Win32 port: integrated deferred NTSD handling for directories in the
121
generic dir attributes setting functionality [SPC]
122
- Win32: synchronized new MSVC6 project files with master Makefile (removed
123
unused modules and link libs, SFX opt for size, enable DBCS) [SPC]
124
- BeOS: synchronized code with Unix port to support reentrancy [SPC]
125
- All but TOPS20, VMS, WinCE: added length check to externally
126
supplied argument in do_wild() [SPC]
129
- VMS (fileio.c - open_infile()): corrected VMS specific open-args, patch
130
was accidentally left out in 5.52f [SMS, SPC]
131
- win32/w32cfg.h: define Cdecl as empty macro for Watcom C [P. Kienitz, SPC]
132
- win32/win32.c: updated OS-system message in version() [SPC]
133
- extract.c: corrected integer size mismatch in deferred dirs code [SPC]
134
- VMS: support "-T" option as /TIMESTAMP in CLI command interface [SMC]
135
- VMS: updated help files for UNIX and DCL interface with missing descriptions
136
of recently added options and new hint notes [SMC, SPC]
137
- win32/win32.c - set_direc_attribs(): work-around for "cannot set timestamp
138
of read-only dirs" bug [Cosmin Truta]
139
- win32/win32.c - NTQueryVolInfo(): fixed typecast warning [Cosmin Truta]
140
- unzpriv.h, unix/Makefile, win32/Makefile.gcc: changed build policy for
141
POSIX-emulating gcc distributions on Win32 (e.g. CygWin) to default to
142
creating POSIX-mode binaries; win32/Makefile.gcc may be used to build
143
win32-aware binaries (added -DFORCE_WIN32_OVER_UNIX to default compilation
144
options) [Cosmin Truta, SPC]
145
- INSTALL, History.552: stylistic text corrections [Cosmin Truta]
146
- win32/win32.c: complete revision of timestamp handling code; added prepro-
147
cessor flag NO_W32TIMES_IZFIX to allow optional compile with time handling
148
exactly like the (faulty) standard of other Windows programs [SPC]
149
- unzip.c, INSTALL: announce and document new NO_W32TIMES_IZFIX compilation
151
- WHERE: updated to new version numbers for Zip and UnZip [SPC]
152
- README: summary of main changes for 5.52 added [SPC]
155
- License: updated list of core authors [Cosmin Truta, Christian Spieler]
156
- WHERE: further corrections [Cosmin Truta]
157
- windll/windll.c - Wiz_SetOpts(): corrected mapping of PromptToOverwrite and
158
noflag to UnZip's internal options structure, finally fixing the windll
159
extract mode interface (previous change from 5.40 -> 5.41 fixed some
160
issues but created new bugs) [SPC]
161
- windll/windll.txt: documented the exact meaning of the windll struct DCL
162
flags nfflag, ExtractOnlyNewer, noflag, PromptToOverwrite and their
164
- win32: set ASM_CRC as default for MSC, GCC, LCC, EMX/RSX (vanilla BCC does
165
not support inline asm) [SPC]
168
- proginfo/ziplimit.txt: corrected enhanced limits of the Zip64 extensions,
169
updated status info on Info-ZIP's support of Zip64 archives [SPC]
170
- windll: renamed MS Visual C++ (5&6) project files into unique names, added
171
master workspace file for building all windll projects in one process [SPC]
172
- windll: extended MS Visual C++ project files to support both ASM_CRC and
173
NOASM builds; changed unzip dll projects to link against the multithreading
174
MS C runtime dll [SPC]
175
- wince/intrface.cpp - utimeToFileTime(): revised code for more efficiency,
176
added support for NO_W32TIMES_IZFIX [SPC]
177
- documentation and changelog fixes [SPC]
180
- AtheOS: some documentation updates (2004-Sep-06) [SPC]
181
- tandem/tanunz.c: fix typo in do_wild() [SPC]
182
- unix/Makefile: added -DUNIX to some special targets, to be sure [SPC]
183
- vms/cmdline.c: corrected declaration of external string constants [SPC]
184
- vms/vms.h: removed obsolete definitions [SPC]
185
- vms/vms.c: stream-lined code formatting [SPC]
186
- WinCE: added workspace file for VCEmbedded 3.0 environment [SPC]
187
- windll/: windll.{c|txt}, uzexampl.{c|h}: misc formatting cleanups [SPC]
188
- extract.c, fileio.c: cosmetic updates [SPC]
189
- inflate.c: fixed undefined global vars error in DEBUG message of the
190
USE_ZLIB interface code [Johnny Lee]
191
- gbloffs.c: made assembler symbols output safe against multiple defines
192
(from UnZip 6.0 beta) [Paul Kienitz, SPC]
193
- Theos: updated theos/Contents, theos/makefile to include Theos-specific
194
translation table header file charconv.h [SPC]
195
- VMS (unzip.c): updated some help messages from UnZip 6.0 beta sources
196
[Steven M. Schweda, SPC]
197
- INSTALL: updated description of VMS_TEXT_CONV option [SPC]
198
- LICENSE, unzip.h: added Steven M. Schweda to Info-ZIP group [SPC]
199
- man/unzip.1: updated Authors list [SPC]
200
- README, unzvers.h: switched to "Release" mode (removed BETA note) [SPC]
203
- win32/win32.c - defer_dir_attribs(): fixed critical "mem-access to nirwana"
204
bug when processing directory entries without any local extra field;
205
added some explaining comments [Kai Uwe Rommel, Johnny Lee, SPC]
206
- wince/punzip.rcv: derive VERSION_PATCH from UZ_PATCHLEVEL [SPC]
207
- Updated release dates (History.552, README, unzvers.h, all man pages) [SPC]
211
These changes occurred in beta versions 5.52a to 5.52. This list may have
212
left out some bugfixes and even some features...void where prohibited, your
213
mileage may vary, etc., etc.