| |
| ChangeLog file for zlib |
| |
| Changes in 1.2.3 (18 July 2005) |
| - Apply security vulnerability fixes to contrib/infback9 as well |
| - Clean up some text files (carriage returns, trailing space) |
| - Update testzlib, vstudio, masmx64, and masmx86 in contrib [Vollant] |
| |
| Changes in 1.2.2.4 (11 July 2005) |
| - Add inflatePrime() function for starting inflation at bit boundary |
| - Avoid some Visual C warnings in deflate.c |
| - Avoid more silly Visual C warnings in inflate.c and inftrees.c for 64-bit |
| compile |
| - Fix some spelling errors in comments [Betts] |
| - Correct inflateInit2() error return documentation in zlib.h |
| - Added zran.c example of compressed data random access to examples |
| directory, shows use of inflatePrime() |
| - Fix cast for assignments to strm->state in inflate.c and infback.c |
| - Fix zlibCompileFlags() in zutil.c to use 1L for long shifts [Oberhumer] |
| - Move declarations of gf2 functions to right place in crc32.c [Oberhumer] |
| - Add cast in trees.c t avoid a warning [Oberhumer] |
| - Avoid some warnings in fitblk.c, gun.c, gzjoin.c in examples [Oberhumer] |
| - Update make_vms.com [Zinser] |
| - Initialize state->write in inflateReset() since copied in inflate_fast() |
| - Be more strict on incomplete code sets in inflate_table() and increase |
| ENOUGH and MAXD -- this repairs a possible security vulnerability for |
| invalid inflate input. Thanks to Tavis Ormandy and Markus Oberhumer for |
| discovering the vulnerability and providing test cases. |
| - Add ia64 support to configure for HP-UX [Smith] |
| - Add error return to gzread() for format or i/o error [Levin] |
| - Use malloc.h for OS/2 [Necasek] |
| |
| Changes in 1.2.2.3 (27 May 2005) |
| - Replace 1U constants in inflate.c and inftrees.c for 64-bit compile |
| - Typecast fread() return values in gzio.c [Vollant] |
| - Remove trailing space in minigzip.c outmode (VC++ can't deal with it) |
| - Fix crc check bug in gzread() after gzungetc() [Heiner] |
| - Add the deflateTune() function to adjust internal compression parameters |
| - Add a fast gzip decompressor, gun.c, to examples (use of inflateBack) |
| - Remove an incorrect assertion in examples/zpipe.c |
| - Add C++ wrapper in infback9.h [Donais] |
| - Fix bug in inflateCopy() when decoding fixed codes |
| - Note in zlib.h how much deflateSetDictionary() actually uses |
| - Remove USE_DICT_HEAD in deflate.c (would mess up inflate if used) |
| - Add _WIN32_WCE to define WIN32 in zconf.in.h [Spencer] |
| - Don't include stderr.h or errno.h for _WIN32_WCE in zutil.h [Spencer] |
| - Add gzdirect() function to indicate transparent reads |
| - Update contrib/minizip [Vollant] |
| - Fix compilation of deflate.c when both ASMV and FASTEST [Oberhumer] |
| - Add casts in crc32.c to avoid warnings [Oberhumer] |
| - Add contrib/masmx64 [Vollant] |
| - Update contrib/asm586, asm686, masmx86, testzlib, vstudio [Vollant] |
| |
| Changes in 1.2.2.2 (30 December 2004) |
| - Replace structure assignments in deflate.c and inflate.c with zmemcpy to |
| avoid implicit memcpy calls (portability for no-library compilation) |
| - Increase sprintf() buffer size in gzdopen() to allow for large numbers |
| - Add INFLATE_STRICT to check distances against zlib header |
| - Improve WinCE errno handling and comments [Chang] |
| - Remove comment about no gzip header processing in FAQ |
| - Add Z_FIXED strategy option to deflateInit2() to force fixed trees |
| - Add updated make_vms.com [Coghlan], update README |
| - Create a new "examples" directory, move gzappend.c there, add zpipe.c, |
| fitblk.c, gzlog.[ch], gzjoin.c, and zlib_how.html. |
| - Add FAQ entry and comments in deflate.c on uninitialized memory access |
| - Add Solaris 9 make options in configure [Gilbert] |
| - Allow strerror() usage in gzio.c for STDC |
| - Fix DecompressBuf in contrib/delphi/ZLib.pas [ManChesTer] |
| - Update contrib/masmx86/inffas32.asm and gvmat32.asm [Vollant] |
| - Use z_off_t for adler32_combine() and crc32_combine() lengths |
| - Make adler32() much faster for small len |
| - Use OS_CODE in deflate() default gzip header |
| |
| Changes in 1.2.2.1 (31 October 2004) |
| - Allow inflateSetDictionary() call for raw inflate |
| - Fix inflate header crc check bug for file names and comments |
| - Add deflateSetHeader() and gz_header structure for custom gzip headers |
| - Add inflateGetheader() to retrieve gzip headers |
| - Add crc32_combine() and adler32_combine() functions |
| - Add alloc_func, free_func, in_func, out_func to Z_PREFIX list |
| - Use zstreamp consistently in zlib.h (inflate_back functions) |
| - Remove GUNZIP condition from definition of inflate_mode in inflate.h |
| and in contrib/inflate86/inffast.S [Truta, Anderson] |
| - Add support for AMD64 in contrib/inflate86/inffas86.c [Anderson] |
| - Update projects/README.projects and projects/visualc6 [Truta] |
| - Update win32/DLL_FAQ.txt [Truta] |
| - Avoid warning under NO_GZCOMPRESS in gzio.c; fix typo [Truta] |
| - Deprecate Z_ASCII; use Z_TEXT instead [Truta] |
| - Use a new algorithm for setting strm->data_type in trees.c [Truta] |
| - Do not define an exit() prototype in zutil.c unless DEBUG defined |
| - Remove prototype of exit() from zutil.c, example.c, minigzip.c [Truta] |
| - Add comment in zlib.h for Z_NO_FLUSH parameter to deflate() |
| - Fix Darwin build version identification [Peterson] |
| |
| Changes in 1.2.2 (3 October 2004) |
| - Update zlib.h comments on gzip in-memory processing |
| - Set adler to 1 in inflateReset() to support Java test suite [Walles] |
| - Add contrib/dotzlib [Ravn] |
| - Update win32/DLL_FAQ.txt [Truta] |
| - Update contrib/minizip [Vollant] |
| - Move contrib/visual-basic.txt to old/ [Truta] |
| - Fix assembler builds in projects/visualc6/ [Truta] |
| |
| Changes in 1.2.1.2 (9 September 2004) |
| - Update INDEX file |
| - Fix trees.c to update strm->data_type (no one ever noticed!) |
| - Fix bug in error case in inflate.c, infback.c, and infback9.c [Brown] |
| - Add "volatile" to crc table flag declaration (for DYNAMIC_CRC_TABLE) |
| - Add limited multitasking protection to DYNAMIC_CRC_TABLE |
| - Add NO_vsnprintf for VMS in zutil.h [Mozilla] |
| - Don't declare strerror() under VMS [Mozilla] |
| - Add comment to DYNAMIC_CRC_TABLE to use get_crc_table() to initialize |
| - Update contrib/ada [Anisimkov] |
| - Update contrib/minizip [Vollant] |
| - Fix configure to not hardcode directories for Darwin [Peterson] |
| - Fix gzio.c to not return error on empty files [Brown] |
| - Fix indentation; update version in contrib/delphi/ZLib.pas and |
| contrib/pascal/zlibpas.pas [Truta] |
| - Update mkasm.bat in contrib/masmx86 [Truta] |
| - Update contrib/untgz [Truta] |
| - Add projects/README.projects [Truta] |
| - Add project for MS Visual C++ 6.0 in projects/visualc6 [Cadieux, Truta] |
| - Update win32/DLL_FAQ.txt [Truta] |
| - Update list of Z_PREFIX symbols in zconf.h [Randers-Pehrson, Truta] |
| - Remove an unnecessary assignment to curr in inftrees.c [Truta] |
| - Add OS/2 to exe builds in configure [Poltorak] |
| - Remove err dummy parameter in zlib.h [Kientzle] |
| |
| Changes in 1.2.1.1 (9 January 2004) |
| - Update email address in README |
| - Several FAQ updates |
| - Fix a big fat bug in inftrees.c that prevented decoding valid |
| dynamic blocks with only literals and no distance codes -- |
| Thanks to "Hot Emu" for the bug report and sample file |
| - Add a note to puff.c on no distance codes case. |
| |
| Changes in 1.2.1 (17 November 2003) |
| - Remove a tab in contrib/gzappend/gzappend.c |
| - Update some interfaces in contrib for new zlib functions |
| - Update zlib version number in some contrib entries |
| - Add Windows CE definition for ptrdiff_t in zutil.h [Mai, Truta] |
| - Support shared libraries on Hurd and KFreeBSD [Brown] |
| - Fix error in NO_DIVIDE option of adler32.c |
| |
| Changes in 1.2.0.8 (4 November 2003) |
| - Update version in contrib/delphi/ZLib.pas and contrib/pascal/zlibpas.pas |
| - Add experimental NO_DIVIDE #define in adler32.c |
| - Possibly faster on some processors (let me know if it is) |
| - Correct Z_BLOCK to not return on first inflate call if no wrap |
| - Fix strm->data_type on inflate() return to correctly indicate EOB |
| - Add deflatePrime() function for appending in the middle of a byte |
| - Add contrib/gzappend for an example of appending to a stream |
| - Update win32/DLL_FAQ.txt [Truta] |
| - Delete Turbo C comment in README [Truta] |
| - Improve some indentation in zconf.h [Truta] |
| - Fix infinite loop on bad input in configure script [Church] |
| - Fix gzeof() for concatenated gzip files [Johnson] |
| - Add example to contrib/visual-basic.txt [Michael B.] |
| - Add -p to mkdir's in Makefile.in [vda] |
| - Fix configure to properly detect presence or lack of printf functions |
| - Add AS400 support [Monnerat] |
| - Add a little Cygwin support [Wilson] |
| |
| Changes in 1.2.0.7 (21 September 2003) |
| - Correct some debug formats in contrib/infback9 |
| - Cast a type in a debug statement in trees.c |
| - Change search and replace delimiter in configure from % to # [Beebe] |
| - Update contrib/untgz to 0.2 with various fixes [Truta] |
| - Add build support for Amiga [Nikl] |
| - Remove some directories in old that have been updated to 1.2 |
| - Add dylib building for Mac OS X in configure and Makefile.in |
| - Remove old distribution stuff from Makefile |
| - Update README to point to DLL_FAQ.txt, and add comment on Mac OS X |
| - Update links in README |
| |
| Changes in 1.2.0.6 (13 September 2003) |
| - Minor FAQ updates |
| - Update contrib/minizip to 1.00 [Vollant] |
| - Remove test of gz functions in example.c when GZ_COMPRESS defined [Truta] |
| - Update POSTINC comment for 68060 [Nikl] |
| - Add contrib/infback9 with deflate64 decoding (unsupported) |
| - For MVS define NO_vsnprintf and undefine FAR [van Burik] |
| - Add pragma for fdopen on MVS [van Burik] |
| |
| Changes in 1.2.0.5 (8 September 2003) |
| - Add OF to inflateBackEnd() declaration in zlib.h |
| - Remember start when using gzdopen in the middle of a file |
| - Use internal off_t counters in gz* functions to properly handle seeks |
| - Perform more rigorous check for distance-too-far in inffast.c |
| - Add Z_BLOCK flush option to return from inflate at block boundary |
| - Set strm->data_type on return from inflate |
| - Indicate bits unused, if at block boundary, and if in last block |
| - Replace size_t with ptrdiff_t in crc32.c, and check for correct size |
| - Add condition so old NO_DEFLATE define still works for compatibility |
| - FAQ update regarding the Windows DLL [Truta] |
| - INDEX update: add qnx entry, remove aix entry [Truta] |
| - Install zlib.3 into mandir [Wilson] |
| - Move contrib/zlib_dll_FAQ.txt to win32/DLL_FAQ.txt; update [Truta] |
| - Adapt the zlib interface to the new DLL convention guidelines [Truta] |
| - Introduce ZLIB_WINAPI macro to allow the export of functions using |
| the WINAPI calling convention, for Visual Basic [Vollant, Truta] |
| - Update msdos and win32 scripts and makefiles [Truta] |
| - Export symbols by name, not by ordinal, in win32/zlib.def [Truta] |
| - Add contrib/ada [Anisimkov] |
| - Move asm files from contrib/vstudio/vc70_32 to contrib/asm386 [Truta] |
| - Rename contrib/asm386 to contrib/masmx86 [Truta, Vollant] |
| - Add contrib/masm686 [Truta] |
| - Fix offsets in contrib/inflate86 and contrib/masmx86/inffas32.asm |
| [Truta, Vollant] |
| - Update contrib/delphi; rename to contrib/pascal; add example [Truta] |
| - Remove contrib/delphi2; add a new contrib/delphi [Truta] |
| - Avoid inclusion of the nonstandard <memory.h> in contrib/iostream, |
| and fix some method prototypes [Truta] |
| - Fix the ZCR_SEED2 constant to avoid warnings in contrib/minizip |
| [Truta] |
| - Avoid the use of backslash (\) in contrib/minizip [Vollant] |
| - Fix file time handling in contrib/untgz; update makefiles [Truta] |
| - Update contrib/vstudio/vc70_32 to comply with the new DLL guidelines |
| [Vollant] |
| - Remove contrib/vstudio/vc15_16 [Vollant] |
| - Rename contrib/vstudio/vc70_32 to contrib/vstudio/vc7 [Truta] |
| - Update README.contrib [Truta] |
| - Invert the assignment order of match_head and s->prev[...] in |
| INSERT_STRING [Truta] |
| - Compare TOO_FAR with 32767 instead of 32768, to avoid 16-bit warnings |
| [Truta] |
| - Compare function pointers with 0, not with NULL or Z_NULL [Truta] |
| - Fix prototype of syncsearch in inflate.c [Truta] |
| - Introduce ASMINF macro to be enabled when using an ASM implementation |
| of inflate_fast [Truta] |
| - Change NO_DEFLATE to NO_GZCOMPRESS [Truta] |
| - Modify test_gzio in example.c to take a single file name as a |
| parameter [Truta] |
| - Exit the example.c program if gzopen fails [Truta] |
| - Add type casts around strlen in example.c [Truta] |
| - Remove casting to sizeof in minigzip.c; give a proper type |
| to the variable compared with SUFFIX_LEN [Truta] |
| - Update definitions of STDC and STDC99 in zconf.h [Truta] |
| - Synchronize zconf.h with the new Windows DLL interface [Truta] |
| - Use SYS16BIT instead of __32BIT__ to distinguish between |
| 16- and 32-bit platforms [Truta] |
| - Use far memory allocators in small 16-bit memory models for |
| Turbo C [Truta] |
| - Add info about the use of ASMV, ASMINF and ZLIB_WINAPI in |
| zlibCompileFlags [Truta] |
| - Cygwin has vsnprintf [Wilson] |
| - In Windows16, OS_CODE is 0, as in MSDOS [Truta] |
| - In Cygwin, OS_CODE is 3 (Unix), not 11 (Windows32) [Wilson] |
| |
| Changes in 1.2.0.4 (10 August 2003) |
| - Minor FAQ updates |
| - Be more strict when checking inflateInit2's windowBits parameter |
| - Change NO_GUNZIP compile option to NO_GZIP to cover deflate as well |
| - Add gzip wrapper option to deflateInit2 using windowBits |
| - Add updated QNX rule in configure and qnx directory [Bonnefoy] |
| - Make inflate distance-too-far checks more rigorous |
| - Clean up FAR usage in inflate |
| - Add casting to sizeof() in gzio.c and minigzip.c |
| |
| Changes in 1.2.0.3 (19 July 2003) |
| - Fix silly error in gzungetc() implementation [Vollant] |
| - Update contrib/minizip and contrib/vstudio [Vollant] |
| - Fix printf format in example.c |
| - Correct cdecl support in zconf.in.h [Anisimkov] |
| - Minor FAQ updates |
| |
| Changes in 1.2.0.2 (13 July 2003) |
| - Add ZLIB_VERNUM in zlib.h for numerical preprocessor comparisons |
| - Attempt to avoid warnings in crc32.c for pointer-int conversion |
| - Add AIX to configure, remove aix directory [Bakker] |
| - Add some casts to minigzip.c |
| - Improve checking after insecure sprintf() or vsprintf() calls |
| - Remove #elif's from crc32.c |
| - Change leave label to inf_leave in inflate.c and infback.c to avoid |
| library conflicts |
| - Remove inflate gzip decoding by default--only enable gzip decoding by |
| special request for stricter backward compatibility |
| - Add zlibCompileFlags() function to return compilation information |
| - More typecasting in deflate.c to avoid warnings |
| - Remove leading underscore from _Capital #defines [Truta] |
| - Fix configure to link shared library when testing |
| - Add some Windows CE target adjustments [Mai] |
| - Remove #define ZLIB_DLL in zconf.h [Vollant] |
| - Add zlib.3 [Rodgers] |
| - Update RFC URL in deflate.c and algorithm.txt [Mai] |
| - Add zlib_dll_FAQ.txt to contrib [Truta] |
| - Add UL to some constants [Truta] |
| - Update minizip and vstudio [Vollant] |
| - Remove vestigial NEED_DUMMY_RETURN from zconf.in.h |
| - Expand use of NO_DUMMY_DECL to avoid all dummy structures |
| - Added iostream3 to contrib [Schwardt] |
| - Replace rewind() with fseek() for WinCE [Truta] |
| - Improve setting of zlib format compression level flags |
| - Report 0 for huffman and rle strategies and for level == 0 or 1 |
| - Report 2 only for level == 6 |
| - Only deal with 64K limit when necessary at compile time [Truta] |
| - Allow TOO_FAR check to be turned off at compile time [Truta] |
| - Add gzclearerr() function [Souza] |
| - Add gzungetc() function |
| |
| Changes in 1.2.0.1 (17 March 2003) |
| - Add Z_RLE strategy for run-length encoding [Truta] |
| - When Z_RLE requested, restrict matches to distance one |
| - Update zlib.h, minigzip.c, gzopen(), gzdopen() for Z_RLE |
| - Correct FASTEST compilation to allow level == 0 |
| - Clean up what gets compiled for FASTEST |
| - Incorporate changes to zconf.in.h [Vollant] |
| - Refine detection of Turbo C need for dummy returns |
| - Refine ZLIB_DLL compilation |
| - Include additional header file on VMS for off_t typedef |
| - Try to use _vsnprintf where it supplants vsprintf [Vollant] |
| - Add some casts in inffast.c |
| - Enchance comments in zlib.h on what happens if gzprintf() tries to |
| write more than 4095 bytes before compression |
| - Remove unused state from inflateBackEnd() |
| - Remove exit(0) from minigzip.c, example.c |
| - Get rid of all those darn tabs |
| - Add "check" target to Makefile.in that does the same thing as "test" |
| - Add "mostlyclean" and "maintainer-clean" targets to Makefile.in |
| - Update contrib/inflate86 [Anderson] |
| - Update contrib/testzlib, contrib/vstudio, contrib/minizip [Vollant] |
| - Add msdos and win32 directories with makefiles [Truta] |
| - More additions and improvements to the FAQ |
| |
| Changes in 1.2.0 (9 March 2003) |
| - New and improved inflate code |
| - About 20% faster |
| - Does not allocate 32K window unless and until needed |
| - Automatically detects and decompresses gzip streams |
| - Raw inflate no longer needs an extra dummy byte at end |
| - Added inflateBack functions using a callback interface--even faster |
| than inflate, useful for file utilities (gzip, zip) |
| - Added inflateCopy() function to record state for random access on |
| externally generated deflate streams (e.g. in gzip files) |
| - More readable code (I hope) |
| - New and improved crc32() |
| - About 50% faster, thanks to suggestions from Rodney Brown |
| - Add deflateBound() and compressBound() functions |
| - Fix memory leak in deflateInit2() |
| - Permit setting dictionary for raw deflate (for parallel deflate) |
| - Fix const declaration for gzwrite() |
| - Check for some malloc() failures in gzio.c |
| - Fix bug in gzopen() on single-byte file 0x1f |
| - Fix bug in gzread() on concatenated file with 0x1f at end of buffer |
| and next buffer doesn't start with 0x8b |
| - Fix uncompress() to return Z_DATA_ERROR on truncated input |
| - Free memory at end of example.c |
| - Remove MAX #define in trees.c (conflicted with some libraries) |
| - Fix static const's in deflate.c, gzio.c, and zutil.[ch] |
| - Declare malloc() and free() in gzio.c if STDC not defined |
| - Use malloc() instead of calloc() in zutil.c if int big enough |
| - Define STDC for AIX |
| - Add aix/ with approach for compiling shared library on AIX |
| - Add HP-UX support for shared libraries in configure |
| - Add OpenUNIX support for shared libraries in configure |
| - Use $cc instead of gcc to build shared library |
| - Make prefix directory if needed when installing |
| - Correct Macintosh avoidance of typedef Byte in zconf.h |
| - Correct Turbo C memory allocation when under Linux |
| - Use libz.a instead of -lz in Makefile (assure use of compiled library) |
| - Update configure to check for snprintf or vsnprintf functions and their |
| return value, warn during make if using an insecure function |
| - Fix configure problem with compile-time knowledge of HAVE_UNISTD_H that |
| is lost when library is used--resolution is to build new zconf.h |
| - Documentation improvements (in zlib.h): |
| - Document raw deflate and inflate |
| - Update RFCs URL |
| - Point out that zlib and gzip formats are different |
| - Note that Z_BUF_ERROR is not fatal |
| - Document string limit for gzprintf() and possible buffer overflow |
| - Note requirement on avail_out when flushing |
| - Note permitted values of flush parameter of inflate() |
| - Add some FAQs (and even answers) to the FAQ |
| - Add contrib/inflate86/ for x86 faster inflate |
| - Add contrib/blast/ for PKWare Data Compression Library decompression |
| - Add contrib/puff/ simple inflate for deflate format description |
| |
| Changes in 1.1.4 (11 March 2002) |
| - ZFREE was repeated on same allocation on some error conditions. |
| This creates a security problem described in |
| http://www.zlib.org/advisory-2002-03-11.txt |
| - Returned incorrect error (Z_MEM_ERROR) on some invalid data |
| - Avoid accesses before window for invalid distances with inflate window |
| less than 32K. |
| - force windowBits > 8 to avoid a bug in the encoder for a window size |
| of 256 bytes. (A complete fix will be available in 1.1.5). |
| |
| Changes in 1.1.3 (9 July 1998) |
| - fix "an inflate input buffer bug that shows up on rare but persistent |
| occasions" (Mark) |
| - fix gzread and gztell for concatenated .gz files (Didier Le Botlan) |
| - fix gzseek(..., SEEK_SET) in write mode |
| - fix crc check after a gzeek (Frank Faubert) |
| - fix miniunzip when the last entry in a zip file is itself a zip file |
| (J Lillge) |
| - add contrib/asm586 and contrib/asm686 (Brian Raiter) |
| See http://www.muppetlabs.com/~breadbox/software/assembly.html |
| - add support for Delphi 3 in contrib/delphi (Bob Dellaca) |
| - add support for C++Builder 3 and Delphi 3 in contrib/delphi2 (Davide Moretti) |
| - do not exit prematurely in untgz if 0 at start of block (Magnus Holmgren) |
| - use macro EXTERN instead of extern to support DLL for BeOS (Sander Stoks) |
| - added a FAQ file |
| |
| - Support gzdopen on Mac with Metrowerks (Jason Linhart) |
| - Do not redefine Byte on Mac (Brad Pettit & Jason Linhart) |
| - define SEEK_END too if SEEK_SET is not defined (Albert Chin-A-Young) |
| - avoid some warnings with Borland C (Tom Tanner) |
| - fix a problem in contrib/minizip/zip.c for 16-bit MSDOS (Gilles Vollant) |
| - emulate utime() for WIN32 in contrib/untgz (Gilles Vollant) |
| - allow several arguments to configure (Tim Mooney, Frodo Looijaard) |
| - use libdir and includedir in Makefile.in (Tim Mooney) |
| - support shared libraries on OSF1 V4 (Tim Mooney) |
| - remove so_locations in "make clean" (Tim Mooney) |
| - fix maketree.c compilation error (Glenn, Mark) |
| - Python interface to zlib now in Python 1.5 (Jeremy Hylton) |
| - new Makefile.riscos (Rich Walker) |
| - initialize static descriptors in trees.c for embedded targets (Nick Smith) |
| - use "foo-gz" in example.c for RISCOS and VMS (Nick Smith) |
| - add the OS/2 files in Makefile.in too (Andrew Zabolotny) |
| - fix fdopen and halloc macros for Microsoft C 6.0 (Tom Lane) |
| - fix maketree.c to allow clean compilation of inffixed.h (Mark) |
| - fix parameter check in deflateCopy (Gunther Nikl) |
| - cleanup trees.c, use compressed_len only in debug mode (Christian Spieler) |
| - Many portability patches by Christian Spieler: |
| . zutil.c, zutil.h: added "const" for zmem* |
| . Make_vms.com: fixed some typos |
| . Make_vms.com: msdos/Makefile.*: removed zutil.h from some dependency lists |
| . msdos/Makefile.msc: remove "default rtl link library" info from obj files |
| . msdos/Makefile.*: use model-dependent name for the built zlib library |
| . msdos/Makefile.emx, nt/Makefile.emx, nt/Makefile.gcc: |
| new makefiles, for emx (DOS/OS2), emx&rsxnt and mingw32 (Windows 9x / NT) |
| - use define instead of typedef for Bytef also for MSC small/medium (Tom Lane) |
| - replace __far with _far for better portability (Christian Spieler, Tom Lane) |
| - fix test for errno.h in configure (Tim Newsham) |
| |
| Changes in 1.1.2 (19 March 98) |
| - added contrib/minzip, mini zip and unzip based on zlib (Gilles Vollant) |
| See http://www.winimage.com/zLibDll/unzip.html |
| - preinitialize the inflate tables for fixed codes, to make the code |
| completely thread safe (Mark) |
| - some simplifications and slight speed-up to the inflate code (Mark) |
| - fix gzeof on non-compressed files (Allan Schrum) |
| - add -std1 option in configure for OSF1 to fix gzprintf (Martin Mokrejs) |
| - use default value of 4K for Z_BUFSIZE for 16-bit MSDOS (Tim Wegner + Glenn) |
| - added os2/Makefile.def and os2/zlib.def (Andrew Zabolotny) |
| - add shared lib support for UNIX_SV4.2MP (MATSUURA Takanori) |
| - do not wrap extern "C" around system includes (Tom Lane) |
| - mention zlib binding for TCL in README (Andreas Kupries) |
| - added amiga/Makefile.pup for Amiga powerUP SAS/C PPC (Andreas Kleinert) |
| - allow "make install prefix=..." even after configure (Glenn Randers-Pehrson) |
| - allow "configure --prefix $HOME" (Tim Mooney) |
| - remove warnings in example.c and gzio.c (Glenn Randers-Pehrson) |
| - move Makefile.sas to amiga/Makefile.sas |
| |
| Changes in 1.1.1 (27 Feb 98) |
| - fix macros _tr_tally_* in deflate.h for debug mode (Glenn Randers-Pehrson) |
| - remove block truncation heuristic which had very marginal effect for zlib |
| (smaller lit_bufsize than in gzip 1.2.4) and degraded a little the |
| compression ratio on some files. This also allows inlining _tr_tally for |
| matches in deflate_slow. |
| - added msdos/Makefile.w32 for WIN32 Microsoft Visual C++ (Bob Frazier) |
| |
| Changes in 1.1.0 (24 Feb 98) |
| - do not return STREAM_END prematurely in inflate (John Bowler) |
| - revert to the zlib 1.0.8 inflate to avoid the gcc 2.8.0 bug (Jeremy Buhler) |
| - compile with -DFASTEST to get compression code optimized for speed only |
| - in minigzip, try mmap'ing the input file first (Miguel Albrecht) |
| - increase size of I/O buffers in minigzip.c and gzio.c (not a big gain |
| on Sun but significant on HP) |
| |
| - add a pointer to experimental unzip library in README (Gilles Vollant) |
| - initialize variable gcc in configure (Chris Herborth) |
| |
| Changes in 1.0.9 (17 Feb 1998) |
| - added gzputs and gzgets functions |
| - do not clear eof flag in gzseek (Mark Diekhans) |
| - fix gzseek for files in transparent mode (Mark Diekhans) |
| - do not assume that vsprintf returns the number of bytes written (Jens Krinke) |
| - replace EXPORT with ZEXPORT to avoid conflict with other programs |
| - added compress2 in zconf.h, zlib.def, zlib.dnt |
| - new asm code from Gilles Vollant in contrib/asm386 |
| - simplify the inflate code (Mark): |
| . Replace ZALLOC's in huft_build() with single ZALLOC in inflate_blocks_new() |
| . ZALLOC the length list in inflate_trees_fixed() instead of using stack |
| . ZALLOC the value area for huft_build() instead of using stack |
| . Simplify Z_FINISH check in inflate() |
| |
| - Avoid gcc 2.8.0 comparison bug a little differently than zlib 1.0.8 |
| - in inftrees.c, avoid cc -O bug on HP (Farshid Elahi) |
| - in zconf.h move the ZLIB_DLL stuff earlier to avoid problems with |
| the declaration of FAR (Gilles VOllant) |
| - install libz.so* with mode 755 (executable) instead of 644 (Marc Lehmann) |
| - read_buf buf parameter of type Bytef* instead of charf* |
| - zmemcpy parameters are of type Bytef*, not charf* (Joseph Strout) |
| - do not redeclare unlink in minigzip.c for WIN32 (John Bowler) |
| - fix check for presence of directories in "make install" (Ian Willis) |
| |
| Changes in 1.0.8 (27 Jan 1998) |
| - fixed offsets in contrib/asm386/gvmat32.asm (Gilles Vollant) |
| - fix gzgetc and gzputc for big endian systems (Markus Oberhumer) |
| - added compress2() to allow setting the compression level |
| - include sys/types.h to get off_t on some systems (Marc Lehmann & QingLong) |
| - use constant arrays for the static trees in trees.c instead of computing |
| them at run time (thanks to Ken Raeburn for this suggestion). To create |
| trees.h, compile with GEN_TREES_H and run "make test". |
| - check return code of example in "make test" and display result |
| - pass minigzip command line options to file_compress |
| - simplifying code of inflateSync to avoid gcc 2.8 bug |
| |
| - support CC="gcc -Wall" in configure -s (QingLong) |
| - avoid a flush caused by ftell in gzopen for write mode (Ken Raeburn) |
| - fix test for shared library support to avoid compiler warnings |
| - zlib.lib -> zlib.dll in msdos/zlib.rc (Gilles Vollant) |
| - check for TARGET_OS_MAC in addition to MACOS (Brad Pettit) |
| - do not use fdopen for Metrowerks on Mac (Brad Pettit)) |
| - add checks for gzputc and gzputc in example.c |
| - avoid warnings in gzio.c and deflate.c (Andreas Kleinert) |
| - use const for the CRC table (Ken Raeburn) |
| - fixed "make uninstall" for shared libraries |
| - use Tracev instead of Trace in infblock.c |
| - in example.c use correct compressed length for test_sync |
| - suppress +vnocompatwarnings in configure for HPUX (not always supported) |
| |
| Changes in 1.0.7 (20 Jan 1998) |
| - fix gzseek which was broken in write mode |
| - return error for gzseek to negative absolute position |
| - fix configure for Linux (Chun-Chung Chen) |
| - increase stack space for MSC (Tim Wegner) |
| - get_crc_table and inflateSyncPoint are EXPORTed (Gilles Vollant) |
| - define EXPORTVA for gzprintf (Gilles Vollant) |
| - added man page zlib.3 (Rick Rodgers) |
| - for contrib/untgz, fix makedir() and improve Makefile |
| |
| - check gzseek in write mode in example.c |
| - allocate extra buffer for seeks only if gzseek is actually called |
| - avoid signed/unsigned comparisons (Tim Wegner, Gilles Vollant) |
| - add inflateSyncPoint in zconf.h |
| - fix list of exported functions in nt/zlib.dnt and mdsos/zlib.def |
| |
| Changes in 1.0.6 (19 Jan 1998) |
| - add functions gzprintf, gzputc, gzgetc, gztell, gzeof, gzseek, gzrewind and |
| gzsetparams (thanks to Roland Giersig and Kevin Ruland for some of this code) |
| - Fix a deflate bug occurring only with compression level 0 (thanks to |
| Andy Buckler for finding this one). |
| - In minigzip, pass transparently also the first byte for .Z files. |
| - return Z_BUF_ERROR instead of Z_OK if output buffer full in uncompress() |
| - check Z_FINISH in inflate (thanks to Marc Schluper) |
| - Implement deflateCopy (thanks to Adam Costello) |
| - make static libraries by default in configure, add --shared option. |
| - move MSDOS or Windows specific files to directory msdos |
| - suppress the notion of partial flush to simplify the interface |
| (but the symbol Z_PARTIAL_FLUSH is kept for compatibility with 1.0.4) |
| - suppress history buffer provided by application to simplify the interface |
| (this feature was not implemented anyway in 1.0.4) |
| - next_in and avail_in must be initialized before calling inflateInit or |
| inflateInit2 |
| - add EXPORT in all exported functions (for Windows DLL) |
| - added Makefile.nt (thanks to Stephen Williams) |
| - added the unsupported "contrib" directory: |
| contrib/asm386/ by Gilles Vollant <info@winimage.com> |
| 386 asm code replacing longest_match(). |
| contrib/iostream/ by Kevin Ruland <kevin@rodin.wustl.edu> |
| A C++ I/O streams interface to the zlib gz* functions |
| contrib/iostream2/ by Tyge Løvset <Tyge.Lovset@cmr.no> |
| Another C++ I/O streams interface |
| contrib/untgz/ by "Pedro A. Aranda Guti\irrez" <paag@tid.es> |
| A very simple tar.gz file extractor using zlib |
| contrib/visual-basic.txt by Carlos Rios <c_rios@sonda.cl> |
| How to use compress(), uncompress() and the gz* functions from VB. |
| - pass params -f (filtered data), -h (huffman only), -1 to -9 (compression |
| level) in minigzip (thanks to Tom Lane) |
| |
| - use const for rommable constants in deflate |
| - added test for gzseek and gztell in example.c |
| - add undocumented function inflateSyncPoint() (hack for Paul Mackerras) |
| - add undocumented function zError to convert error code to string |
| (for Tim Smithers) |
| - Allow compilation of gzio with -DNO_DEFLATE to avoid the compression code. |
| - Use default memcpy for Symantec MSDOS compiler. |
| - Add EXPORT keyword for check_func (needed for Windows DLL) |
| - add current directory to LD_LIBRARY_PATH for "make test" |
| - create also a link for libz.so.1 |
| - added support for FUJITSU UXP/DS (thanks to Toshiaki Nomura) |
| - use $(SHAREDLIB) instead of libz.so in Makefile.in (for HPUX) |
| - added -soname for Linux in configure (Chun-Chung Chen, |
| - assign numbers to the exported functions in zlib.def (for Windows DLL) |
| - add advice in zlib.h for best usage of deflateSetDictionary |
| - work around compiler bug on Atari (cast Z_NULL in call of s->checkfn) |
| - allow compilation with ANSI keywords only enabled for TurboC in large model |
| - avoid "versionString"[0] (Borland bug) |
| - add NEED_DUMMY_RETURN for Borland |
| - use variable z_verbose for tracing in debug mode (L. Peter Deutsch). |
| - allow compilation with CC |
| - defined STDC for OS/2 (David Charlap) |
| - limit external names to 8 chars for MVS (Thomas Lund) |
| - in minigzip.c, use static buffers only for 16-bit systems |
| - fix suffix check for "minigzip -d foo.gz" |
| - do not return an error for the 2nd of two consecutive gzflush() (Felix Lee) |
| - use _fdopen instead of fdopen for MSC >= 6.0 (Thomas Fanslau) |
| - added makelcc.bat for lcc-win32 (Tom St Denis) |
| - in Makefile.dj2, use copy and del instead of install and rm (Frank Donahoe) |
| - Avoid expanded $Id$. Use "rcs -kb" or "cvs admin -kb" to avoid Id expansion. |
| - check for unistd.h in configure (for off_t) |
| - remove useless check parameter in inflate_blocks_free |
| - avoid useless assignment of s->check to itself in inflate_blocks_new |
| - do not flush twice in gzclose (thanks to Ken Raeburn) |
| - rename FOPEN as F_OPEN to avoid clash with /usr/include/sys/file.h |
| - use NO_ERRNO_H instead of enumeration of operating systems with errno.h |
| - work around buggy fclose on pipes for HP/UX |
| - support zlib DLL with BORLAND C++ 5.0 (thanks to Glenn Randers-Pehrson) |
| - fix configure if CC is already equal to gcc |
| |
| Changes in 1.0.5 (3 Jan 98) |
| - Fix inflate to terminate gracefully when fed corrupted or invalid data |
| - Use const for rommable constants in inflate |
| - Eliminate memory leaks on error conditions in inflate |
| - Removed some vestigial code in inflate |
| - Update web address in README |
| |
| Changes in 1.0.4 (24 Jul 96) |
| - In very rare conditions, deflate(s, Z_FINISH) could fail to produce an EOF |
| bit, so the decompressor could decompress all the correct data but went |
| on to attempt decompressing extra garbage data. This affected minigzip too. |
| - zlibVersion and gzerror return const char* (needed for DLL) |
| - port to RISCOS (no fdopen, no multiple dots, no unlink, no fileno) |
| - use z_error only for DEBUG (avoid problem with DLLs) |
| |
| Changes in 1.0.3 (2 Jul 96) |
| - use z_streamp instead of z_stream *, which is now a far pointer in MSDOS |
| small and medium models; this makes the library incompatible with previous |
| versions for these models. (No effect in large model or on other systems.) |
| - return OK instead of BUF_ERROR if previous deflate call returned with |
| avail_out as zero but there is nothing to do |
| - added memcmp for non STDC compilers |
| - define NO_DUMMY_DECL for more Mac compilers (.h files merged incorrectly) |
| - define __32BIT__ if __386__ or i386 is defined (pb. with Watcom and SCO) |
| - better check for 16-bit mode MSC (avoids problem with Symantec) |
| |
| Changes in 1.0.2 (23 May 96) |
| - added Windows DLL support |
| - added a function zlibVersion (for the DLL support) |
| - fixed declarations using Bytef in infutil.c (pb with MSDOS medium model) |
| - Bytef is define's instead of typedef'd only for Borland C |
| - avoid reading uninitialized memory in example.c |
| - mention in README that the zlib format is now RFC1950 |
| - updated Makefile.dj2 |
| - added algorithm.doc |
| |
| Changes in 1.0.1 (20 May 96) [1.0 skipped to avoid confusion] |
| - fix array overlay in deflate.c which sometimes caused bad compressed data |
| - fix inflate bug with empty stored block |
| - fix MSDOS medium model which was broken in 0.99 |
| - fix deflateParams() which could generated bad compressed data. |
| - Bytef is define'd instead of typedef'ed (work around Borland bug) |
| - added an INDEX file |
| - new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32), |
| Watcom (Makefile.wat), Amiga SAS/C (Makefile.sas) |
| - speed up adler32 for modern machines without auto-increment |
| - added -ansi for IRIX in configure |
| - static_init_done in trees.c is an int |
| - define unlink as delete for VMS |
| - fix configure for QNX |
| - add configure branch for SCO and HPUX |
| - avoid many warnings (unused variables, dead assignments, etc...) |
| - no fdopen for BeOS |
| - fix the Watcom fix for 32 bit mode (define FAR as empty) |
| - removed redefinition of Byte for MKWERKS |
| - work around an MWKERKS bug (incorrect merge of all .h files) |
| |
| Changes in 0.99 (27 Jan 96) |
| - allow preset dictionary shared between compressor and decompressor |
| - allow compression level 0 (no compression) |
| - add deflateParams in zlib.h: allow dynamic change of compression level |
| and compression strategy. |
| - test large buffers and deflateParams in example.c |
| - add optional "configure" to build zlib as a shared library |
| - suppress Makefile.qnx, use configure instead |
| - fixed deflate for 64-bit systems (detected on Cray) |
| - fixed inflate_blocks for 64-bit systems (detected on Alpha) |
| - declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2) |
| - always return Z_BUF_ERROR when deflate() has nothing to do |
| - deflateInit and inflateInit are now macros to allow version checking |
| - prefix all global functions and types with z_ with -DZ_PREFIX |
| - make falloc completely reentrant (inftrees.c) |
| - fixed very unlikely race condition in ct_static_init |
| - free in reverse order of allocation to help memory manager |
| - use zlib-1.0/* instead of zlib/* inside the tar.gz |
| - make zlib warning-free with "gcc -O3 -Wall -Wwrite-strings -Wpointer-arith |
| -Wconversion -Wstrict-prototypes -Wmissing-prototypes" |
| - allow gzread on concatenated .gz files |
| - deflateEnd now returns Z_DATA_ERROR if it was premature |
| - deflate is finally (?) fully deterministic (no matches beyond end of input) |
| - Document Z_SYNC_FLUSH |
| - add uninstall in Makefile |
| - Check for __cpluplus in zlib.h |
| - Better test in ct_align for partial flush |
| - avoid harmless warnings for Borland C++ |
| - initialize hash_head in deflate.c |
| - avoid warning on fdopen (gzio.c) for HP cc -Aa |
| - include stdlib.h for STDC compilers |
| - include errno.h for Cray |
| - ignore error if ranlib doesn't exist |
| - call ranlib twice for NeXTSTEP |
| - use exec_prefix instead of prefix for libz.a |
| - renamed ct_* as _tr_* to avoid conflict with applications |
| - clear z->msg in inflateInit2 before any error return |
| - initialize opaque in example.c, gzio.c, deflate.c and inflate.c |
| - fixed typo in zconf.h (_GNUC__ => __GNUC__) |
| - check for WIN32 in zconf.h and zutil.c (avoid farmalloc in 32-bit mode) |
| - fix typo in Make_vms.com (f$trnlnm -> f$getsyi) |
| - in fcalloc, normalize pointer if size > 65520 bytes |
| - don't use special fcalloc for 32 bit Borland C++ |
| - use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc... |
| - use Z_BINARY instead of BINARY |
| - document that gzclose after gzdopen will close the file |
| - allow "a" as mode in gzopen. |
| - fix error checking in gzread |
| - allow skipping .gz extra-field on pipes |
| - added reference to Perl interface in README |
| - put the crc table in FAR data (I dislike more and more the medium model :) |
| - added get_crc_table |
| - added a dimension to all arrays (Borland C can't count). |
| - workaround Borland C bug in declaration of inflate_codes_new & inflate_fast |
| - guard against multiple inclusion of *.h (for precompiled header on Mac) |
| - Watcom C pretends to be Microsoft C small model even in 32 bit mode. |
| - don't use unsized arrays to avoid silly warnings by Visual C++: |
| warning C4746: 'inflate_mask' : unsized array treated as '__far' |
| (what's wrong with far data in far model?). |
| - define enum out of inflate_blocks_state to allow compilation with C++ |
| |
| Changes in 0.95 (16 Aug 95) |
| - fix MSDOS small and medium model (now easier to adapt to any compiler) |
| - inlined send_bits |
| - fix the final (:-) bug for deflate with flush (output was correct but |
| not completely flushed in rare occasions). |
| - default window size is same for compression and decompression |
| (it's now sufficient to set MAX_WBITS in zconf.h). |
| - voidp -> voidpf and voidnp -> voidp (for consistency with other |
| typedefs and because voidnp was not near in large model). |
| |
| Changes in 0.94 (13 Aug 95) |
| - support MSDOS medium model |
| - fix deflate with flush (could sometimes generate bad output) |
| - fix deflateReset (zlib header was incorrectly suppressed) |
| - added support for VMS |
| - allow a compression level in gzopen() |
| - gzflush now calls fflush |
| - For deflate with flush, flush even if no more input is provided. |
| - rename libgz.a as libz.a |
| - avoid complex expression in infcodes.c triggering Turbo C bug |
| - work around a problem with gcc on Alpha (in INSERT_STRING) |
| - don't use inline functions (problem with some gcc versions) |
| - allow renaming of Byte, uInt, etc... with #define. |
| - avoid warning about (unused) pointer before start of array in deflate.c |
| - avoid various warnings in gzio.c, example.c, infblock.c, adler32.c, zutil.c |
| - avoid reserved word 'new' in trees.c |
| |
| Changes in 0.93 (25 June 95) |
| - temporarily disable inline functions |
| - make deflate deterministic |
| - give enough lookahead for PARTIAL_FLUSH |
| - Set binary mode for stdin/stdout in minigzip.c for OS/2 |
| - don't even use signed char in inflate (not portable enough) |
| - fix inflate memory leak for segmented architectures |
| |
| Changes in 0.92 (3 May 95) |
| - don't assume that char is signed (problem on SGI) |
| - Clear bit buffer when starting a stored block |
| - no memcpy on Pyramid |
| - suppressed inftest.c |
| - optimized fill_window, put longest_match inline for gcc |
| - optimized inflate on stored blocks. |
| - untabify all sources to simplify patches |
| |
| Changes in 0.91 (2 May 95) |
| - Default MEM_LEVEL is 8 (not 9 for Unix) as documented in zlib.h |
| - Document the memory requirements in zconf.h |
| - added "make install" |
| - fix sync search logic in inflateSync |
| - deflate(Z_FULL_FLUSH) now works even if output buffer too short |
| - after inflateSync, don't scare people with just "lo world" |
| - added support for DJGPP |
| |
| Changes in 0.9 (1 May 95) |
| - don't assume that zalloc clears the allocated memory (the TurboC bug |
| was Mark's bug after all :) |
| - let again gzread copy uncompressed data unchanged (was working in 0.71) |
| - deflate(Z_FULL_FLUSH), inflateReset and inflateSync are now fully implemented |
| - added a test of inflateSync in example.c |
| - moved MAX_WBITS to zconf.h because users might want to change that. |
| - document explicitly that zalloc(64K) on MSDOS must return a normalized |
| pointer (zero offset) |
| - added Makefiles for Microsoft C, Turbo C, Borland C++ |
| - faster crc32() |
| |
| Changes in 0.8 (29 April 95) |
| - added fast inflate (inffast.c) |
| - deflate(Z_FINISH) now returns Z_STREAM_END when done. Warning: this |
| is incompatible with previous versions of zlib which returned Z_OK. |
| - work around a TurboC compiler bug (bad code for b << 0, see infutil.h) |
| (actually that was not a compiler bug, see 0.81 above) |
| - gzread no longer reads one extra byte in certain cases |
| - In gzio destroy(), don't reference a freed structure |
| - avoid many warnings for MSDOS |
| - avoid the ERROR symbol which is used by MS Windows |
| |
| Changes in 0.71 (14 April 95) |
| - Fixed more MSDOS compilation problems :( There is still a bug with |
| TurboC large model. |
| |
| Changes in 0.7 (14 April 95) |
| - Added full inflate support. |
| - Simplified the crc32() interface. The pre- and post-conditioning |
| (one's complement) is now done inside crc32(). WARNING: this is |
| incompatible with previous versions; see zlib.h for the new usage. |
| |
| Changes in 0.61 (12 April 95) |
| - workaround for a bug in TurboC. example and minigzip now work on MSDOS. |
| |
| Changes in 0.6 (11 April 95) |
| - added minigzip.c |
| - added gzdopen to reopen a file descriptor as gzFile |
| - added transparent reading of non-gziped files in gzread. |
| - fixed bug in gzread (don't read crc as data) |
| - fixed bug in destroy (gzio.c) (don't return Z_STREAM_END for gzclose). |
| - don't allocate big arrays in the stack (for MSDOS) |
| - fix some MSDOS compilation problems |
| |
| Changes in 0.5: |
| - do real compression in deflate.c. Z_PARTIAL_FLUSH is supported but |
| not yet Z_FULL_FLUSH. |
| - support decompression but only in a single step (forced Z_FINISH) |
| - added opaque object for zalloc and zfree. |
| - added deflateReset and inflateReset |
| - added a variable zlib_version for consistency checking. |
| - renamed the 'filter' parameter of deflateInit2 as 'strategy'. |
| Added Z_FILTERED and Z_HUFFMAN_ONLY constants. |
| |
| Changes in 0.4: |
| - avoid "zip" everywhere, use zlib instead of ziplib. |
| - suppress Z_BLOCK_FLUSH, interpret Z_PARTIAL_FLUSH as block flush |
| if compression method == 8. |
| - added adler32 and crc32 |
| - renamed deflateOptions as deflateInit2, call one or the other but not both |
| - added the method parameter for deflateInit2. |
| - added inflateInit2 |
| - simplied considerably deflateInit and inflateInit by not supporting |
| user-provided history buffer. This is supported only in deflateInit2 |
| and inflateInit2. |
| |
| Changes in 0.3: |
| - prefix all macro names with Z_ |
| - use Z_FINISH instead of deflateEnd to finish compression. |
| - added Z_HUFFMAN_ONLY |
| - added gzerror() |