< prev index next >

src/java.base/share/native/libzip/zlib/ChangeLog

Print this page

   1 
   2                 ChangeLog file for zlib
   3 







































































































   4 Changes in 1.2.11 (15 Jan 2017)
   5 - Fix deflate stored bug when pulling last block from window
   6 - Permit immediate deflateParams changes before any deflate input
   7 
   8 Changes in 1.2.10 (2 Jan 2017)
   9 - Avoid warnings on snprintf() return value
  10 - Fix bug in deflate_stored() for zero-length input
  11 - Fix bug in gzwrite.c that produced corrupt gzip files
  12 - Remove files to be installed before copying them in Makefile.in
  13 - Add warnings when compiling with assembler code
  14 
  15 Changes in 1.2.9 (31 Dec 2016)
  16 - Fix contrib/minizip to permit unzipping with desktop API [Zouzou]
  17 - Improve contrib/blast to return unused bytes
  18 - Assure that gzoffset() is correct when appending
  19 - Improve compress() and uncompress() to support large lengths
  20 - Fix bug in test/example.c where error code not saved
  21 - Remedy Coverity warning [Randers-Pehrson]
  22 - Improve speed of gzprintf() in transparent mode
  23 - Fix inflateInit2() bug when windowBits is 16 or 32

  79 - Avoid shift equal to bits in type (caused endless loop)
  80 - Fix uninitialized value bug in gzputc() introduced by const patches
  81 - Fix memory allocation error in examples/zran.c [Nor]
  82 - Fix bug where gzopen(), gzclose() would write an empty file
  83 - Fix bug in gzclose() when gzwrite() runs out of memory
  84 - Check for input buffer malloc failure in examples/gzappend.c
  85 - Add note to contrib/blast to use binary mode in stdio
  86 - Fix comparisons of differently signed integers in contrib/blast
  87 - Check for invalid code length codes in contrib/puff
  88 - Fix serious but very rare decompression bug in inftrees.c
  89 - Update inflateBack() comments, since inflate() can be faster
  90 - Use underscored I/O function names for WINAPI_FAMILY
  91 - Add _tr_flush_bits to the external symbols prefixed by --zprefix
  92 - Add contrib/vstudio/vc10 pre-build step for static only
  93 - Quote --version-script argument in CMakeLists.txt
  94 - Don't specify --version-script on Apple platforms in CMakeLists.txt
  95 - Fix casting error in contrib/testzlib/testzlib.c
  96 - Fix types in contrib/minizip to match result of get_crc_table()
  97 - Simplify contrib/vstudio/vc10 with 'd' suffix
  98 - Add TOP support to win32/Makefile.msc
  99 - Suport i686 and amd64 assembler builds in CMakeLists.txt
 100 - Fix typos in the use of _LARGEFILE64_SOURCE in zconf.h
 101 - Add vc11 and vc12 build files to contrib/vstudio
 102 - Add gzvprintf() as an undocumented function in zlib
 103 - Fix configure for Sun shell
 104 - Remove runtime check in configure for four-byte integer type
 105 - Add casts and consts to ease user conversion to C++
 106 - Add man pages for minizip and miniunzip
 107 - In Makefile uninstall, don't rm if preceding cd fails
 108 - Do not return Z_BUF_ERROR if deflateParam() has nothing to write
 109 
 110 Changes in 1.2.7 (2 May 2012)
 111 - Replace use of memmove() with a simple copy for portability
 112 - Test for existence of strerror
 113 - Restore gzgetc_ for backward compatibility with 1.2.6
 114 - Fix build with non-GNU make on Solaris
 115 - Require gcc 4.0 or later on Mac OS X to use the hidden attribute
 116 - Include unistd.h for Watcom C
 117 - Use __WATCOMC__ instead of __WATCOM__
 118 - Do not use the visibility attribute if NO_VIZ defined
 119 - Improve the detection of no hidden visibility attribute

 279 - Add *bsd* to Linux* case in configure [Bar-Lev]
 280 - Add inffast.obj to dependencies in win32/Makefile.msc
 281 - Correct spelling error in deflate.h [Kohler]
 282 - Change libzdll.a again to libz.dll.a (!) in win32/Makefile.gcc
 283 - Add test to configure for GNU C looking for gcc in output of $cc -v
 284 - Add zlib.pc generation to win32/Makefile.gcc [Weigelt]
 285 - Fix bug in zlib.h for _FILE_OFFSET_BITS set and _LARGEFILE64_SOURCE not
 286 - Add comment in zlib.h that adler32_combine with len2 < 0 makes no sense
 287 - Make NO_DIVIDE option in adler32.c much faster (thanks to John Reiser)
 288 - Make stronger test in zconf.h to include unistd.h for LFS
 289 - Apply Darwin patches for 64-bit file offsets to contrib/minizip [Slack]
 290 - Fix zlib.h LFS support when Z_PREFIX used
 291 - Add updated as400 support (removed from old) [Monnerat]
 292 - Avoid deflate sensitivity to volatile input data
 293 - Avoid division in adler32_combine for NO_DIVIDE
 294 - Clarify the use of Z_FINISH with deflateBound() amount of space
 295 - Set binary for output file in puff.c
 296 - Use u4 type for crc_table to avoid conversion warnings
 297 - Apply casts in zlib.h to avoid conversion warnings
 298 - Add OF to prototypes for adler32_combine_ and crc32_combine_ [Miller]
 299 - Improve inflateSync() documentation to note indeterminancy
 300 - Add deflatePending() function to return the amount of pending output
 301 - Correct the spelling of "specification" in FAQ [Randers-Pehrson]
 302 - Add a check in configure for stdarg.h, use for gzprintf()
 303 - Check that pointers fit in ints when gzprint() compiled old style
 304 - Add dummy name before $(SHAREDLIBV) in Makefile [Bar-Lev, Bowler]
 305 - Delete line in configure that adds -L. libz.a to LDFLAGS [Weigelt]
 306 - Add debug records in assmebler code [Londer]
 307 - Update RFC references to use https://tools.ietf.org/html/... [Li]
 308 - Add --archs option, use of libtool to configure for Mac OS X [Borstel]
 309 
 310 Changes in 1.2.5 (19 Apr 2010)
 311 - Disable visibility attribute in win32/Makefile.gcc [Bar-Lev]
 312 - Default to libdir as sharedlibdir in configure [Nieder]
 313 - Update copyright dates on modified source files
 314 - Update trees.c to be able to generate modified trees.h
 315 - Exit configure for MinGW, suggesting win32/Makefile.gcc
 316 - Check for NULL path in gz_open [Homurlu]
 317 
 318 Changes in 1.2.4.5 (18 Apr 2010)
 319 - Set sharedlibdir in configure [Torok]
 320 - Set LDFLAGS in Makefile.in [Bar-Lev]
 321 - Avoid mkdir objs race condition in Makefile.in [Bowler]
 322 - Add ZLIB_INTERNAL in front of internal inter-module functions and arrays
 323 - Define ZLIB_INTERNAL to hide internal functions and arrays for GNU C
 324 - Don't use hidden attribute when it is a warning generator (e.g. Solaris)
 325 
 326 Changes in 1.2.4.4 (18 Apr 2010)
 327 - Fix CROSS_PREFIX executable testing, CHOST extract, mingw* [Torok]

 494 - Remove USE_MMAP configuration determination (only used by minigzip)
 495 - Remove examples/pigz.c (available separately)
 496 - Update examples/gun.c to 1.6
 497 
 498 Changes in 1.2.3.5 (8 Jan 2010)
 499 - Add space after #if in zutil.h for some compilers
 500 - Fix relatively harmless bug in deflate_fast() [Exarevsky]
 501 - Fix same problem in deflate_slow()
 502 - Add $(SHAREDLIBV) to LIBS in Makefile.in [Brown]
 503 - Add deflate_rle() for faster Z_RLE strategy run-length encoding
 504 - Add deflate_huff() for faster Z_HUFFMAN_ONLY encoding
 505 - Change name of "write" variable in inffast.c to avoid library collisions
 506 - Fix premature EOF from gzread() in gzio.c [Brown]
 507 - Use zlib header window size if windowBits is 0 in inflateInit2()
 508 - Remove compressBound() call in deflate.c to avoid linking compress.o
 509 - Replace use of errno in gz* with functions, support WinCE [Alves]
 510 - Provide alternative to perror() in minigzip.c for WinCE [Alves]
 511 - Don't use _vsnprintf on later versions of MSVC [Lowman]
 512 - Add CMake build script and input file [Lowman]
 513 - Update contrib/minizip to 1.1 [Svensson, Vollant]
 514 - Moved nintendods directory from contrib to .
 515 - Replace gzio.c with a new set of routines with the same functionality
 516 - Add gzbuffer(), gzoffset(), gzclose_r(), gzclose_w() as part of above
 517 - Update contrib/minizip to 1.1b
 518 - Change gzeof() to return 0 on error instead of -1 to agree with zlib.h
 519 
 520 Changes in 1.2.3.4 (21 Dec 2009)
 521 - Use old school .SUFFIXES in Makefile.in for FreeBSD compatibility
 522 - Update comments in configure and Makefile.in for default --shared
 523 - Fix test -z's in configure [Marquess]
 524 - Build examplesh and minigzipsh when not testing
 525 - Change NULL's to Z_NULL's in deflate.c and in comments in zlib.h
 526 - Import LDFLAGS from the environment in configure
 527 - Fix configure to populate SFLAGS with discovered CFLAGS options
 528 - Adapt make_vms.com to the new Makefile.in [Zinser]
 529 - Add zlib2ansi script for C++ compilation [Marquess]
 530 - Add _FILE_OFFSET_BITS=64 test to make test (when applicable)
 531 - Add AMD64 assembler code for longest match to contrib [Teterin]
 532 - Include options from $SFLAGS when doing $LDSHARED
 533 - Simplify 64-bit file support by introducing z_off64_t type
 534 - Make shared object files in objs directory to work around old Sun cc

 668 
 669 Changes in 1.2.2.4 (11 July 2005)
 670 - Add inflatePrime() function for starting inflation at bit boundary
 671 - Avoid some Visual C warnings in deflate.c
 672 - Avoid more silly Visual C warnings in inflate.c and inftrees.c for 64-bit
 673   compile
 674 - Fix some spelling errors in comments [Betts]
 675 - Correct inflateInit2() error return documentation in zlib.h
 676 - Add zran.c example of compressed data random access to examples
 677   directory, shows use of inflatePrime()
 678 - Fix cast for assignments to strm->state in inflate.c and infback.c
 679 - Fix zlibCompileFlags() in zutil.c to use 1L for long shifts [Oberhumer]
 680 - Move declarations of gf2 functions to right place in crc32.c [Oberhumer]
 681 - Add cast in trees.c t avoid a warning [Oberhumer]
 682 - Avoid some warnings in fitblk.c, gun.c, gzjoin.c in examples [Oberhumer]
 683 - Update make_vms.com [Zinser]
 684 - Initialize state->write in inflateReset() since copied in inflate_fast()
 685 - Be more strict on incomplete code sets in inflate_table() and increase
 686   ENOUGH and MAXD -- this repairs a possible security vulnerability for
 687   invalid inflate input.  Thanks to Tavis Ormandy and Markus Oberhumer for
 688   discovering the vulnerability and providing test cases.
 689 - Add ia64 support to configure for HP-UX [Smith]
 690 - Add error return to gzread() for format or i/o error [Levin]
 691 - Use malloc.h for OS/2 [Necasek]
 692 
 693 Changes in 1.2.2.3 (27 May 2005)
 694 - Replace 1U constants in inflate.c and inftrees.c for 64-bit compile
 695 - Typecast fread() return values in gzio.c [Vollant]
 696 - Remove trailing space in minigzip.c outmode (VC++ can't deal with it)
 697 - Fix crc check bug in gzread() after gzungetc() [Heiner]
 698 - Add the deflateTune() function to adjust internal compression parameters
 699 - Add a fast gzip decompressor, gun.c, to examples (use of inflateBack)
 700 - Remove an incorrect assertion in examples/zpipe.c
 701 - Add C++ wrapper in infback9.h [Donais]
 702 - Fix bug in inflateCopy() when decoding fixed codes
 703 - Note in zlib.h how much deflateSetDictionary() actually uses
 704 - Remove USE_DICT_HEAD in deflate.c (would mess up inflate if used)
 705 - Add _WIN32_WCE to define WIN32 in zconf.in.h [Spencer]
 706 - Don't include stderr.h or errno.h for _WIN32_WCE in zutil.h [Spencer]
 707 - Add gzdirect() function to indicate transparent reads
 708 - Update contrib/minizip [Vollant]
 709 - Fix compilation of deflate.c when both ASMV and FASTEST [Oberhumer]
 710 - Add casts in crc32.c to avoid warnings [Oberhumer]
 711 - Add contrib/masmx64 [Vollant]
 712 - Update contrib/asm586, asm686, masmx86, testzlib, vstudio [Vollant]
 713 
 714 Changes in 1.2.2.2 (30 December 2004)
 715 - Replace structure assignments in deflate.c and inflate.c with zmemcpy to
 716   avoid implicit memcpy calls (portability for no-library compilation)
 717 - Increase sprintf() buffer size in gzdopen() to allow for large numbers
 718 - Add INFLATE_STRICT to check distances against zlib header
 719 - Improve WinCE errno handling and comments [Chang]
 720 - Remove comment about no gzip header processing in FAQ
 721 - Add Z_FIXED strategy option to deflateInit2() to force fixed trees
 722 - Add updated make_vms.com [Coghlan], update README
 723 - Create a new "examples" directory, move gzappend.c there, add zpipe.c,
 724   fitblk.c, gzlog.[ch], gzjoin.c, and zlib_how.html.
 725 - Add FAQ entry and comments in deflate.c on uninitialized memory access
 726 - Add Solaris 9 make options in configure [Gilbert]
 727 - Allow strerror() usage in gzio.c for STDC
 728 - Fix DecompressBuf in contrib/delphi/ZLib.pas [ManChesTer]
 729 - Update contrib/masmx86/inffas32.asm and gvmat32.asm [Vollant]
 730 - Use z_off_t for adler32_combine() and crc32_combine() lengths
 731 - Make adler32() much faster for small len
 732 - Use OS_CODE in deflate() default gzip header
 733 
 734 Changes in 1.2.2.1 (31 October 2004)
 735 - Allow inflateSetDictionary() call for raw inflate
 736 - Fix inflate header crc check bug for file names and comments
 737 - Add deflateSetHeader() and gz_header structure for custom gzip headers
 738 - Add inflateGetheader() to retrieve gzip headers
 739 - Add crc32_combine() and adler32_combine() functions
 740 - Add alloc_func, free_func, in_func, out_func to Z_PREFIX list
 741 - Use zstreamp consistently in zlib.h (inflate_back functions)
 742 - Remove GUNZIP condition from definition of inflate_mode in inflate.h
 743   and in contrib/inflate86/inffast.S [Truta, Anderson]
 744 - Add support for AMD64 in contrib/inflate86/inffas86.c [Anderson]

 775 - Fix configure to not hardcode directories for Darwin [Peterson]
 776 - Fix gzio.c to not return error on empty files [Brown]
 777 - Fix indentation; update version in contrib/delphi/ZLib.pas and
 778   contrib/pascal/zlibpas.pas [Truta]
 779 - Update mkasm.bat in contrib/masmx86 [Truta]
 780 - Update contrib/untgz [Truta]
 781 - Add projects/README.projects [Truta]
 782 - Add project for MS Visual C++ 6.0 in projects/visualc6 [Cadieux, Truta]
 783 - Update win32/DLL_FAQ.txt [Truta]
 784 - Update list of Z_PREFIX symbols in zconf.h [Randers-Pehrson, Truta]
 785 - Remove an unnecessary assignment to curr in inftrees.c [Truta]
 786 - Add OS/2 to exe builds in configure [Poltorak]
 787 - Remove err dummy parameter in zlib.h [Kientzle]
 788 
 789 Changes in 1.2.1.1 (9 January 2004)
 790 - Update email address in README
 791 - Several FAQ updates
 792 - Fix a big fat bug in inftrees.c that prevented decoding valid
 793   dynamic blocks with only literals and no distance codes --
 794   Thanks to "Hot Emu" for the bug report and sample file
 795 - Add a note to puff.c on no distance codes case.
 796 
 797 Changes in 1.2.1 (17 November 2003)
 798 - Remove a tab in contrib/gzappend/gzappend.c
 799 - Update some interfaces in contrib for new zlib functions
 800 - Update zlib version number in some contrib entries
 801 - Add Windows CE definition for ptrdiff_t in zutil.h [Mai, Truta]
 802 - Support shared libraries on Hurd and KFreeBSD [Brown]
 803 - Fix error in NO_DIVIDE option of adler32.c
 804 
 805 Changes in 1.2.0.8 (4 November 2003)
 806 - Update version in contrib/delphi/ZLib.pas and contrib/pascal/zlibpas.pas
 807 - Add experimental NO_DIVIDE #define in adler32.c
 808     - Possibly faster on some processors (let me know if it is)
 809 - Correct Z_BLOCK to not return on first inflate call if no wrap
 810 - Fix strm->data_type on inflate() return to correctly indicate EOB
 811 - Add deflatePrime() function for appending in the middle of a byte
 812 - Add contrib/gzappend for an example of appending to a stream
 813 - Update win32/DLL_FAQ.txt [Truta]
 814 - Delete Turbo C comment in README [Truta]
 815 - Improve some indentation in zconf.h [Truta]

 953 - Improve setting of zlib format compression level flags
 954     - Report 0 for huffman and rle strategies and for level == 0 or 1
 955     - Report 2 only for level == 6
 956 - Only deal with 64K limit when necessary at compile time [Truta]
 957 - Allow TOO_FAR check to be turned off at compile time [Truta]
 958 - Add gzclearerr() function [Souza]
 959 - Add gzungetc() function
 960 
 961 Changes in 1.2.0.1 (17 March 2003)
 962 - Add Z_RLE strategy for run-length encoding [Truta]
 963     - When Z_RLE requested, restrict matches to distance one
 964     - Update zlib.h, minigzip.c, gzopen(), gzdopen() for Z_RLE
 965 - Correct FASTEST compilation to allow level == 0
 966 - Clean up what gets compiled for FASTEST
 967 - Incorporate changes to zconf.in.h [Vollant]
 968     - Refine detection of Turbo C need for dummy returns
 969     - Refine ZLIB_DLL compilation
 970     - Include additional header file on VMS for off_t typedef
 971 - Try to use _vsnprintf where it supplants vsprintf [Vollant]
 972 - Add some casts in inffast.c
 973 - Enchance comments in zlib.h on what happens if gzprintf() tries to
 974   write more than 4095 bytes before compression
 975 - Remove unused state from inflateBackEnd()
 976 - Remove exit(0) from minigzip.c, example.c
 977 - Get rid of all those darn tabs
 978 - Add "check" target to Makefile.in that does the same thing as "test"
 979 - Add "mostlyclean" and "maintainer-clean" targets to Makefile.in
 980 - Update contrib/inflate86 [Anderson]
 981 - Update contrib/testzlib, contrib/vstudio, contrib/minizip [Vollant]
 982 - Add msdos and win32 directories with makefiles [Truta]
 983 - More additions and improvements to the FAQ
 984 
 985 Changes in 1.2.0 (9 March 2003)
 986 - New and improved inflate code
 987     - About 20% faster
 988     - Does not allocate 32K window unless and until needed
 989     - Automatically detects and decompresses gzip streams
 990     - Raw inflate no longer needs an extra dummy byte at end
 991     - Added inflateBack functions using a callback interface--even faster
 992       than inflate, useful for file utilities (gzip, zip)
 993     - Added inflateCopy() function to record state for random access on

1019 - Correct Turbo C memory allocation when under Linux
1020 - Use libz.a instead of -lz in Makefile (assure use of compiled library)
1021 - Update configure to check for snprintf or vsnprintf functions and their
1022   return value, warn during make if using an insecure function
1023 - Fix configure problem with compile-time knowledge of HAVE_UNISTD_H that
1024   is lost when library is used--resolution is to build new zconf.h
1025 - Documentation improvements (in zlib.h):
1026     - Document raw deflate and inflate
1027     - Update RFCs URL
1028     - Point out that zlib and gzip formats are different
1029     - Note that Z_BUF_ERROR is not fatal
1030     - Document string limit for gzprintf() and possible buffer overflow
1031     - Note requirement on avail_out when flushing
1032     - Note permitted values of flush parameter of inflate()
1033 - Add some FAQs (and even answers) to the FAQ
1034 - Add contrib/inflate86/ for x86 faster inflate
1035 - Add contrib/blast/ for PKWare Data Compression Library decompression
1036 - Add contrib/puff/ simple inflate for deflate format description
1037 
1038 Changes in 1.1.4 (11 March 2002)
1039 - ZFREE was repeated on same allocation on some error conditions.
1040   This creates a security problem described in
1041   http://www.zlib.org/advisory-2002-03-11.txt
1042 - Returned incorrect error (Z_MEM_ERROR) on some invalid data
1043 - Avoid accesses before window for invalid distances with inflate window
1044   less than 32K.
1045 - force windowBits > 8 to avoid a bug in the encoder for a window size
1046   of 256 bytes. (A complete fix will be available in 1.1.5).
1047 
1048 Changes in 1.1.3 (9 July 1998)
1049 - fix "an inflate input buffer bug that shows up on rare but persistent
1050   occasions" (Mark)
1051 - fix gzread and gztell for concatenated .gz files (Didier Le Botlan)
1052 - fix gzseek(..., SEEK_SET) in write mode
1053 - fix crc check after a gzeek (Frank Faubert)
1054 - fix miniunzip when the last entry in a zip file is itself a zip file
1055   (J Lillge)
1056 - add contrib/asm586 and contrib/asm686 (Brian Raiter)
1057   See http://www.muppetlabs.com/~breadbox/software/assembly.html
1058 - add support for Delphi 3 in contrib/delphi (Bob Dellaca)
1059 - add support for C++Builder 3 and Delphi 3 in contrib/delphi2 (Davide Moretti)
1060 - do not exit prematurely in untgz if 0 at start of block (Magnus Holmgren)
1061 - use macro EXTERN instead of extern to support DLL for BeOS (Sander Stoks)
1062 - added a FAQ file
1063 
1064 - Support gzdopen on Mac with Metrowerks (Jason Linhart)
1065 - Do not redefine Byte on Mac (Brad Pettit & Jason Linhart)
1066 - define SEEK_END too if SEEK_SET is not defined (Albert Chin-A-Young)

1100   completely thread safe (Mark)
1101 - some simplifications and slight speed-up to the inflate code (Mark)
1102 - fix gzeof on non-compressed files (Allan Schrum)
1103 - add -std1 option in configure for OSF1 to fix gzprintf (Martin Mokrejs)
1104 - use default value of 4K for Z_BUFSIZE for 16-bit MSDOS (Tim Wegner + Glenn)
1105 - added os2/Makefile.def and os2/zlib.def (Andrew Zabolotny)
1106 - add shared lib support for UNIX_SV4.2MP (MATSUURA Takanori)
1107 - do not wrap extern "C" around system includes (Tom Lane)
1108 - mention zlib binding for TCL in README (Andreas Kupries)
1109 - added amiga/Makefile.pup for Amiga powerUP SAS/C PPC (Andreas Kleinert)
1110 - allow "make install prefix=..." even after configure (Glenn Randers-Pehrson)
1111 - allow "configure --prefix $HOME" (Tim Mooney)
1112 - remove warnings in example.c and gzio.c (Glenn Randers-Pehrson)
1113 - move Makefile.sas to amiga/Makefile.sas
1114 
1115 Changes in 1.1.1 (27 Feb 98)
1116 - fix macros _tr_tally_* in deflate.h for debug mode  (Glenn Randers-Pehrson)
1117 - remove block truncation heuristic which had very marginal effect for zlib
1118   (smaller lit_bufsize than in gzip 1.2.4) and degraded a little the
1119   compression ratio on some files. This also allows inlining _tr_tally for
1120   matches in deflate_slow.
1121 - added msdos/Makefile.w32 for WIN32 Microsoft Visual C++ (Bob Frazier)
1122 
1123 Changes in 1.1.0 (24 Feb 98)
1124 - do not return STREAM_END prematurely in inflate (John Bowler)
1125 - revert to the zlib 1.0.8 inflate to avoid the gcc 2.8.0 bug (Jeremy Buhler)
1126 - compile with -DFASTEST to get compression code optimized for speed only
1127 - in minigzip, try mmap'ing the input file first (Miguel Albrecht)
1128 - increase size of I/O buffers in minigzip.c and gzio.c (not a big gain
1129   on Sun but significant on HP)
1130 
1131 - add a pointer to experimental unzip library in README (Gilles Vollant)
1132 - initialize variable gcc in configure (Chris Herborth)
1133 
1134 Changes in 1.0.9 (17 Feb 1998)
1135 - added gzputs and gzgets functions
1136 - do not clear eof flag in gzseek (Mark Diekhans)
1137 - fix gzseek for files in transparent mode (Mark Diekhans)
1138 - do not assume that vsprintf returns the number of bytes written (Jens Krinke)
1139 - replace EXPORT with ZEXPORT to avoid conflict with other programs
1140 - added compress2 in zconf.h, zlib.def, zlib.dnt
1141 - new asm code from Gilles Vollant in contrib/asm386
1142 - simplify the inflate code (Mark):
1143  . Replace ZALLOC's in huft_build() with single ZALLOC in inflate_blocks_new()
1144  . ZALLOC the length list in inflate_trees_fixed() instead of using stack
1145  . ZALLOC the value area for huft_build() instead of using stack
1146  . Simplify Z_FINISH check in inflate()
1147 
1148 - Avoid gcc 2.8.0 comparison bug a little differently than zlib 1.0.8
1149 - in inftrees.c, avoid cc -O bug on HP (Farshid Elahi)
1150 - in zconf.h move the ZLIB_DLL stuff earlier to avoid problems with
1151   the declaration of FAR (Gilles VOllant)
1152 - install libz.so* with mode 755 (executable) instead of 644 (Marc Lehmann)
1153 - read_buf buf parameter of type Bytef* instead of charf*
1154 - zmemcpy parameters are of type Bytef*, not charf* (Joseph Strout)
1155 - do not redeclare unlink in minigzip.c for WIN32 (John Bowler)
1156 - fix check for presence of directories in "make install" (Ian Willis)
1157 
1158 Changes in 1.0.8 (27 Jan 1998)
1159 - fixed offsets in contrib/asm386/gvmat32.asm (Gilles Vollant)
1160 - fix gzgetc and gzputc for big endian systems (Markus Oberhumer)
1161 - added compress2() to allow setting the compression level
1162 - include sys/types.h to get off_t on some systems (Marc Lehmann & QingLong)
1163 - use constant arrays for the static trees in trees.c instead of computing
1164   them at run time (thanks to Ken Raeburn for this suggestion). To create
1165   trees.h, compile with GEN_TREES_H and run "make test".
1166 - check return code of example in "make test" and display result
1167 - pass minigzip command line options to file_compress
1168 - simplifying code of inflateSync to avoid gcc 2.8 bug
1169 
1170 - support CC="gcc -Wall" in configure -s (QingLong)
1171 - avoid a flush caused by ftell in gzopen for write mode (Ken Raeburn)
1172 - fix test for shared library support to avoid compiler warnings
1173 - zlib.lib -> zlib.dll in msdos/zlib.rc (Gilles Vollant)
1174 - check for TARGET_OS_MAC in addition to MACOS (Brad Pettit)
1175 - do not use fdopen for Metrowerks on Mac (Brad Pettit))
1176 - add checks for gzputc and gzputc in example.c
1177 - avoid warnings in gzio.c and deflate.c (Andreas Kleinert)
1178 - use const for the CRC table (Ken Raeburn)
1179 - fixed "make uninstall" for shared libraries
1180 - use Tracev instead of Trace in infblock.c
1181 - in example.c use correct compressed length for test_sync
1182 - suppress +vnocompatwarnings in configure for HPUX (not always supported)
1183 
1184 Changes in 1.0.7 (20 Jan 1998)
1185 - fix gzseek which was broken in write mode
1186 - return error for gzseek to negative absolute position
1187 - fix configure for Linux (Chun-Chung Chen)
1188 - increase stack space for MSC (Tim Wegner)
1189 - get_crc_table and inflateSyncPoint are EXPORTed (Gilles Vollant)
1190 - define EXPORTVA for gzprintf (Gilles Vollant)
1191 - added man page zlib.3 (Rick Rodgers)
1192 - for contrib/untgz, fix makedir() and improve Makefile
1193 
1194 - check gzseek in write mode in example.c
1195 - allocate extra buffer for seeks only if gzseek is actually called
1196 - avoid signed/unsigned comparisons (Tim Wegner, Gilles Vollant)
1197 - add inflateSyncPoint in zconf.h
1198 - fix list of exported functions in nt/zlib.dnt and mdsos/zlib.def
1199 
1200 Changes in 1.0.6 (19 Jan 1998)
1201 - add functions gzprintf, gzputc, gzgetc, gztell, gzeof, gzseek, gzrewind and
1202   gzsetparams (thanks to Roland Giersig and Kevin Ruland for some of this code)
1203 - Fix a deflate bug occurring only with compression level 0 (thanks to
1204   Andy Buckler for finding this one).
1205 - In minigzip, pass transparently also the first byte for .Z files.
1206 - return Z_BUF_ERROR instead of Z_OK if output buffer full in uncompress()
1207 - check Z_FINISH in inflate (thanks to Marc Schluper)
1208 - Implement deflateCopy (thanks to Adam Costello)
1209 - make static libraries by default in configure, add --shared option.
1210 - move MSDOS or Windows specific files to directory msdos
1211 - suppress the notion of partial flush to simplify the interface
1212   (but the symbol Z_PARTIAL_FLUSH is kept for compatibility with 1.0.4)
1213 - suppress history buffer provided by application to simplify the interface
1214   (this feature was not implemented anyway in 1.0.4)
1215 - next_in and avail_in must be initialized before calling inflateInit or
1216   inflateInit2
1217 - add EXPORT in all exported functions (for Windows DLL)
1218 - added Makefile.nt (thanks to Stephen Williams)
1219 - added the unsupported "contrib" directory:
1220    contrib/asm386/ by Gilles Vollant <info@winimage.com>
1221         386 asm code replacing longest_match().
1222    contrib/iostream/ by Kevin Ruland <kevin@rodin.wustl.edu>
1223         A C++ I/O streams interface to the zlib gz* functions
1224    contrib/iostream2/  by Tyge Løvset <Tyge.Lovset@cmr.no>
1225         Another C++ I/O streams interface
1226    contrib/untgz/  by "Pedro A. Aranda Guti\irrez" <paag@tid.es>
1227         A very simple tar.gz file extractor using zlib
1228    contrib/visual-basic.txt by Carlos Rios <c_rios@sonda.cl>
1229         How to use compress(), uncompress() and the gz* functions from VB.
1230 - pass params -f (filtered data), -h (huffman only), -1 to -9 (compression
1231   level) in minigzip (thanks to Tom Lane)
1232 
1233 - use const for rommable constants in deflate
1234 - added test for gzseek and gztell in example.c
1235 - add undocumented function inflateSyncPoint() (hack for Paul Mackerras)
1236 - add undocumented function zError to convert error code to string
1237   (for Tim Smithers)
1238 - Allow compilation of gzio with -DNO_DEFLATE to avoid the compression code.
1239 - Use default memcpy for Symantec MSDOS compiler.
1240 - Add EXPORT keyword for check_func (needed for Windows DLL)
1241 - add current directory to LD_LIBRARY_PATH for "make test"
1242 - create also a link for libz.so.1
1243 - added support for FUJITSU UXP/DS (thanks to Toshiaki Nomura)
1244 - use $(SHAREDLIB) instead of libz.so in Makefile.in (for HPUX)
1245 - added -soname for Linux in configure (Chun-Chung Chen,
1246 - assign numbers to the exported functions in zlib.def (for Windows DLL)
1247 - add advice in zlib.h for best usage of deflateSetDictionary
1248 - work around compiler bug on Atari (cast Z_NULL in call of s->checkfn)
1249 - allow compilation with ANSI keywords only enabled for TurboC in large model
1250 - avoid "versionString"[0] (Borland bug)
1251 - add NEED_DUMMY_RETURN for Borland
1252 - use variable z_verbose for tracing in debug mode (L. Peter Deutsch).
1253 - allow compilation with CC
1254 - defined STDC for OS/2 (David Charlap)
1255 - limit external names to 8 chars for MVS (Thomas Lund)
1256 - in minigzip.c, use static buffers only for 16-bit systems
1257 - fix suffix check for "minigzip -d foo.gz"
1258 - do not return an error for the 2nd of two consecutive gzflush() (Felix Lee)
1259 - use _fdopen instead of fdopen for MSC >= 6.0 (Thomas Fanslau)
1260 - added makelcc.bat for lcc-win32 (Tom St Denis)
1261 - in Makefile.dj2, use copy and del instead of install and rm (Frank Donahoe)
1262 - Avoid expanded $Id$. Use "rcs -kb" or "cvs admin -kb" to avoid Id expansion.
1263 - check for unistd.h in configure (for off_t)
1264 - remove useless check parameter in inflate_blocks_free
1265 - avoid useless assignment of s->check to itself in inflate_blocks_new
1266 - do not flush twice in gzclose (thanks to Ken Raeburn)
1267 - rename FOPEN as F_OPEN to avoid clash with /usr/include/sys/file.h
1268 - use NO_ERRNO_H instead of enumeration of operating systems with errno.h
1269 - work around buggy fclose on pipes for HP/UX
1270 - support zlib DLL with BORLAND C++ 5.0 (thanks to Glenn Randers-Pehrson)
1271 - fix configure if CC is already equal to gcc
1272 
1273 Changes in 1.0.5 (3 Jan 98)
1274 - Fix inflate to terminate gracefully when fed corrupted or invalid data
1275 - Use const for rommable constants in inflate
1276 - Eliminate memory leaks on error conditions in inflate
1277 - Removed some vestigial code in inflate
1278 - Update web address in README
1279 
1280 Changes in 1.0.4 (24 Jul 96)
1281 - In very rare conditions, deflate(s, Z_FINISH) could fail to produce an EOF
1282   bit, so the decompressor could decompress all the correct data but went
1283   on to attempt decompressing extra garbage data. This affected minigzip too.
1284 - zlibVersion and gzerror return const char* (needed for DLL)
1285 - port to RISCOS (no fdopen, no multiple dots, no unlink, no fileno)
1286 - use z_error only for DEBUG (avoid problem with DLLs)
1287 
1288 Changes in 1.0.3 (2 Jul 96)
1289 - use z_streamp instead of z_stream *, which is now a far pointer in MSDOS
1290   small and medium models; this makes the library incompatible with previous
1291   versions for these models. (No effect in large model or on other systems.)
1292 - return OK instead of BUF_ERROR if previous deflate call returned with
1293   avail_out as zero but there is nothing to do
1294 - added memcmp for non STDC compilers
1295 - define NO_DUMMY_DECL for more Mac compilers (.h files merged incorrectly)
1296 - define __32BIT__ if __386__ or i386 is defined (pb. with Watcom and SCO)
1297 - better check for 16-bit mode MSC (avoids problem with Symantec)
1298 
1299 Changes in 1.0.2 (23 May 96)
1300 - added Windows DLL support
1301 - added a function zlibVersion (for the DLL support)
1302 - fixed declarations using Bytef in infutil.c (pb with MSDOS medium model)
1303 - Bytef is define's instead of typedef'd only for Borland C
1304 - avoid reading uninitialized memory in example.c
1305 - mention in README that the zlib format is now RFC1950
1306 - updated Makefile.dj2
1307 - added algorithm.doc
1308 
1309 Changes in 1.0.1 (20 May 96) [1.0 skipped to avoid confusion]
1310 - fix array overlay in deflate.c which sometimes caused bad compressed data
1311 - fix inflate bug with empty stored block
1312 - fix MSDOS medium model which was broken in 0.99
1313 - fix deflateParams() which could generate bad compressed data.
1314 - Bytef is define'd instead of typedef'ed (work around Borland bug)
1315 - added an INDEX file
1316 - new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32),
1317   Watcom (Makefile.wat), Amiga SAS/C (Makefile.sas)
1318 - speed up adler32 for modern machines without auto-increment
1319 - added -ansi for IRIX in configure
1320 - static_init_done in trees.c is an int
1321 - define unlink as delete for VMS
1322 - fix configure for QNX
1323 - add configure branch for SCO and HPUX
1324 - avoid many warnings (unused variables, dead assignments, etc...)
1325 - no fdopen for BeOS
1326 - fix the Watcom fix for 32 bit mode (define FAR as empty)
1327 - removed redefinition of Byte for MKWERKS
1328 - work around an MWKERKS bug (incorrect merge of all .h files)
1329 
1330 Changes in 0.99 (27 Jan 96)
1331 - allow preset dictionary shared between compressor and decompressor
1332 - allow compression level 0 (no compression)
1333 - add deflateParams in zlib.h: allow dynamic change of compression level
1334   and compression strategy.
1335 - test large buffers and deflateParams in example.c
1336 - add optional "configure" to build zlib as a shared library
1337 - suppress Makefile.qnx, use configure instead
1338 - fixed deflate for 64-bit systems (detected on Cray)
1339 - fixed inflate_blocks for 64-bit systems (detected on Alpha)
1340 - declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2)
1341 - always return Z_BUF_ERROR when deflate() has nothing to do
1342 - deflateInit and inflateInit are now macros to allow version checking
1343 - prefix all global functions and types with z_ with -DZ_PREFIX
1344 - make falloc completely reentrant (inftrees.c)
1345 - fixed very unlikely race condition in ct_static_init
1346 - free in reverse order of allocation to help memory manager
1347 - use zlib-1.0/* instead of zlib/* inside the tar.gz
1348 - make zlib warning-free with "gcc -O3 -Wall -Wwrite-strings -Wpointer-arith
1349   -Wconversion -Wstrict-prototypes -Wmissing-prototypes"
1350 - allow gzread on concatenated .gz files
1351 - deflateEnd now returns Z_DATA_ERROR if it was premature
1352 - deflate is finally (?) fully deterministic (no matches beyond end of input)
1353 - Document Z_SYNC_FLUSH
1354 - add uninstall in Makefile
1355 - Check for __cpluplus in zlib.h
1356 - Better test in ct_align for partial flush
1357 - avoid harmless warnings for Borland C++
1358 - initialize hash_head in deflate.c
1359 - avoid warning on fdopen (gzio.c) for HP cc -Aa
1360 - include stdlib.h for STDC compilers
1361 - include errno.h for Cray
1362 - ignore error if ranlib doesn't exist
1363 - call ranlib twice for NeXTSTEP
1364 - use exec_prefix instead of prefix for libz.a
1365 - renamed ct_* as _tr_* to avoid conflict with applications
1366 - clear z->msg in inflateInit2 before any error return
1367 - initialize opaque in example.c, gzio.c, deflate.c and inflate.c
1368 - fixed typo in zconf.h (_GNUC__ => __GNUC__)
1369 - check for WIN32 in zconf.h and zutil.c (avoid farmalloc in 32-bit mode)
1370 - fix typo in Make_vms.com (f$trnlnm -> f$getsyi)
1371 - in fcalloc, normalize pointer if size > 65520 bytes
1372 - don't use special fcalloc for 32 bit Borland C++
1373 - use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc...
1374 - use Z_BINARY instead of BINARY
1375 - document that gzclose after gzdopen will close the file
1376 - allow "a" as mode in gzopen.
1377 - fix error checking in gzread
1378 - allow skipping .gz extra-field on pipes
1379 - added reference to Perl interface in README
1380 - put the crc table in FAR data (I dislike more and more the medium model :)
1381 - added get_crc_table
1382 - added a dimension to all arrays (Borland C can't count).
1383 - workaround Borland C bug in declaration of inflate_codes_new & inflate_fast
1384 - guard against multiple inclusion of *.h (for precompiled header on Mac)
1385 - Watcom C pretends to be Microsoft C small model even in 32 bit mode.
1386 - don't use unsized arrays to avoid silly warnings by Visual C++:
1387      warning C4746: 'inflate_mask' : unsized array treated as  '__far'
1388      (what's wrong with far data in far model?).
1389 - define enum out of inflate_blocks_state to allow compilation with C++
1390 
1391 Changes in 0.95 (16 Aug 95)
1392 - fix MSDOS small and medium model (now easier to adapt to any compiler)
1393 - inlined send_bits
1394 - fix the final (:-) bug for deflate with flush (output was correct but
1395   not completely flushed in rare occasions).
1396 - default window size is same for compression and decompression
1397   (it's now sufficient to set MAX_WBITS in zconf.h).
1398 - voidp -> voidpf and voidnp -> voidp (for consistency with other
1399   typedefs and because voidnp was not near in large model).
1400 
1401 Changes in 0.94 (13 Aug 95)
1402 - support MSDOS medium model
1403 - fix deflate with flush (could sometimes generate bad output)
1404 - fix deflateReset (zlib header was incorrectly suppressed)
1405 - added support for VMS
1406 - allow a compression level in gzopen()
1407 - gzflush now calls fflush
1408 - For deflate with flush, flush even if no more input is provided.
1409 - rename libgz.a as libz.a
1410 - avoid complex expression in infcodes.c triggering Turbo C bug
1411 - work around a problem with gcc on Alpha (in INSERT_STRING)
1412 - don't use inline functions (problem with some gcc versions)
1413 - allow renaming of Byte, uInt, etc... with #define.
1414 - avoid warning about (unused) pointer before start of array in deflate.c
1415 - avoid various warnings in gzio.c, example.c, infblock.c, adler32.c, zutil.c
1416 - avoid reserved word 'new' in trees.c
1417 
1418 Changes in 0.93 (25 June 95)
1419 - temporarily disable inline functions
1420 - make deflate deterministic
1421 - give enough lookahead for PARTIAL_FLUSH
1422 - Set binary mode for stdin/stdout in minigzip.c for OS/2
1423 - don't even use signed char in inflate (not portable enough)
1424 - fix inflate memory leak for segmented architectures
1425 
1426 Changes in 0.92 (3 May 95)
1427 - don't assume that char is signed (problem on SGI)
1428 - Clear bit buffer when starting a stored block
1429 - no memcpy on Pyramid
1430 - suppressed inftest.c
1431 - optimized fill_window, put longest_match inline for gcc
1432 - optimized inflate on stored blocks.
1433 - untabify all sources to simplify patches
1434 
1435 Changes in 0.91 (2 May 95)
1436 - Default MEM_LEVEL is 8 (not 9 for Unix) as documented in zlib.h
1437 - Document the memory requirements in zconf.h
1438 - added "make install"
1439 - fix sync search logic in inflateSync
1440 - deflate(Z_FULL_FLUSH) now works even if output buffer too short
1441 - after inflateSync, don't scare people with just "lo world"
1442 - added support for DJGPP
1443 
1444 Changes in 0.9 (1 May 95)
1445 - don't assume that zalloc clears the allocated memory (the TurboC bug
1446   was Mark's bug after all :)
1447 - let again gzread copy uncompressed data unchanged (was working in 0.71)
1448 - deflate(Z_FULL_FLUSH), inflateReset and inflateSync are now fully implemented
1449 - added a test of inflateSync in example.c
1450 - moved MAX_WBITS to zconf.h because users might want to change that.
1451 - document explicitly that zalloc(64K) on MSDOS must return a normalized
1452   pointer (zero offset)
1453 - added Makefiles for Microsoft C, Turbo C, Borland C++
1454 - faster crc32()
1455 
1456 Changes in 0.8 (29 April 95)
1457 - added fast inflate (inffast.c)
1458 - deflate(Z_FINISH) now returns Z_STREAM_END when done. Warning: this
1459   is incompatible with previous versions of zlib which returned Z_OK.
1460 - work around a TurboC compiler bug (bad code for b << 0, see infutil.h)
1461   (actually that was not a compiler bug, see 0.81 above)
1462 - gzread no longer reads one extra byte in certain cases
1463 - In gzio destroy(), don't reference a freed structure
1464 - avoid many warnings for MSDOS
1465 - avoid the ERROR symbol which is used by MS Windows
1466 
1467 Changes in 0.71 (14 April 95)
1468 - Fixed more MSDOS compilation problems :( There is still a bug with
1469   TurboC large model.
1470 
1471 Changes in 0.7 (14 April 95)
1472 - Added full inflate support.
1473 - Simplified the crc32() interface. The pre- and post-conditioning
1474   (one's complement) is now done inside crc32(). WARNING: this is
1475   incompatible with previous versions; see zlib.h for the new usage.
1476 
1477 Changes in 0.61 (12 April 95)
1478 - workaround for a bug in TurboC. example and minigzip now work on MSDOS.
1479 
1480 Changes in 0.6 (11 April 95)
1481 - added minigzip.c
1482 - added gzdopen to reopen a file descriptor as gzFile
1483 - added transparent reading of non-gziped files in gzread.
1484 - fixed bug in gzread (don't read crc as data)
1485 - fixed bug in destroy (gzio.c) (don't return Z_STREAM_END for gzclose).
1486 - don't allocate big arrays in the stack (for MSDOS)
1487 - fix some MSDOS compilation problems
1488 
1489 Changes in 0.5:
1490 - do real compression in deflate.c. Z_PARTIAL_FLUSH is supported but
1491   not yet Z_FULL_FLUSH.
1492 - support decompression but only in a single step (forced Z_FINISH)
1493 - added opaque object for zalloc and zfree.
1494 - added deflateReset and inflateReset
1495 - added a variable zlib_version for consistency checking.
1496 - renamed the 'filter' parameter of deflateInit2 as 'strategy'.
1497   Added Z_FILTERED and Z_HUFFMAN_ONLY constants.
1498 
1499 Changes in 0.4:
1500 - avoid "zip" everywhere, use zlib instead of ziplib.
1501 - suppress Z_BLOCK_FLUSH, interpret Z_PARTIAL_FLUSH as block flush
1502   if compression method == 8.
1503 - added adler32 and crc32
1504 - renamed deflateOptions as deflateInit2, call one or the other but not both
1505 - added the method parameter for deflateInit2.
1506 - added inflateInit2
1507 - simplied considerably deflateInit and inflateInit by not supporting
1508   user-provided history buffer. This is supported only in deflateInit2
1509   and inflateInit2.
1510 
1511 Changes in 0.3:
1512 - prefix all macro names with Z_
1513 - use Z_FINISH instead of deflateEnd to finish compression.
1514 - added Z_HUFFMAN_ONLY
1515 - added gzerror()

   1 
   2                 ChangeLog file for zlib
   3 
   4 Changes in 1.3.1 (22 Jan 2024)
   5 - Reject overflows of zip header fields in minizip
   6 - Fix bug in inflateSync() for data held in bit buffer
   7 - Add LIT_MEM define to use more memory for a small deflate speedup
   8 - Fix decision on the emission of Zip64 end records in minizip
   9 - Add bounds checking to ERR_MSG() macro, used by zError()
  10 - Neutralize zip file traversal attacks in miniunz
  11 - Fix a bug in ZLIB_DEBUG compiles in check_match()
  12 - Various portability and appearance improvements
  13 
  14 Changes in 1.3 (18 Aug 2023)
  15 - Remove K&R function definitions and zlib2ansi
  16 - Fix bug in deflateBound() for level 0 and memLevel 9
  17 - Fix bug when gzungetc() is used immediately after gzopen()
  18 - Fix bug when using gzflush() with a very small buffer
  19 - Fix crash when gzsetparams() attempted for transparent write
  20 - Fix test/example.c to work with FORCE_STORED
  21 - Rewrite of zran in examples (see zran.c version history)
  22 - Fix minizip to allow it to open an empty zip file
  23 - Fix reading disk number start on zip64 files in minizip
  24 - Fix logic error in minizip argument processing
  25 - Add minizip testing to Makefile
  26 - Read multiple bytes instead of byte-by-byte in minizip unzip.c
  27 - Add memory sanitizer to configure (--memory)
  28 - Various portability improvements
  29 - Various documentation improvements
  30 - Various spelling and typo corrections
  31 
  32 Changes in 1.2.13 (13 Oct 2022)
  33 - Fix configure issue that discarded provided CC definition
  34 - Correct incorrect inputs provided to the CRC functions
  35 - Repair prototypes and exporting of new CRC functions
  36 - Fix inflateBack to detect invalid input with distances too far
  37 - Have infback() deliver all of the available output up to any error
  38 - Fix a bug when getting a gzip header extra field with inflate()
  39 - Fix bug in block type selection when Z_FIXED used
  40 - Tighten deflateBound bounds
  41 - Remove deleted assembler code references
  42 - Various portability and appearance improvements
  43 
  44 Changes in 1.2.12 (27 Mar 2022)
  45 - Cygwin does not have _wopen(), so do not create gzopen_w() there
  46 - Permit a deflateParams() parameter change as soon as possible
  47 - Limit hash table inserts after switch from stored deflate
  48 - Fix bug when window full in deflate_stored()
  49 - Fix CLEAR_HASH macro to be usable as a single statement
  50 - Avoid a conversion error in gzseek when off_t type too small
  51 - Have Makefile return non-zero error code on test failure
  52 - Avoid some conversion warnings in gzread.c and gzwrite.c
  53 - Update use of errno for newer Windows CE versions
  54 - Small speedup to inflate [psumbera]
  55 - Return an error if the gzputs string length can't fit in an int
  56 - Add address checking in clang to -w option of configure
  57 - Don't compute check value for raw inflate if asked to validate
  58 - Handle case where inflateSync used when header never processed
  59 - Avoid the use of ptrdiff_t
  60 - Avoid an undefined behavior of memcpy() in gzappend()
  61 - Avoid undefined behaviors of memcpy() in gz*printf()
  62 - Avoid an undefined behavior of memcpy() in _tr_stored_block()
  63 - Make the names in functions declarations identical to definitions
  64 - Remove old assembler code in which bugs have manifested
  65 - Fix deflateEnd() to not report an error at start of raw deflate
  66 - Add legal disclaimer to README
  67 - Emphasize the need to continue decompressing gzip members
  68 - Correct the initialization requirements for deflateInit2()
  69 - Fix a bug that can crash deflate on some input when using Z_FIXED
  70 - Assure that the number of bits for deflatePrime() is valid
  71 - Use a structure to make globals in enough.c evident
  72 - Use a macro for the printf format of big_t in enough.c
  73 - Clean up code style in enough.c, update version
  74 - Use inline function instead of macro for index in enough.c
  75 - Clarify that prefix codes are counted in enough.c
  76 - Show all the codes for the maximum tables size in enough.c
  77 - Add gznorm.c example, which normalizes gzip files
  78 - Fix the zran.c example to work on a multiple-member gzip file
  79 - Add tables for crc32_combine(), to speed it up by a factor of 200
  80 - Add crc32_combine_gen() and crc32_combine_op() for fast combines
  81 - Speed up software CRC-32 computation by a factor of 1.5 to 3
  82 - Use atomic test and set, if available, for dynamic CRC tables
  83 - Don't bother computing check value after successful inflateSync()
  84 - Correct comment in crc32.c
  85 - Add use of the ARMv8 crc32 instructions when requested
  86 - Use ARM crc32 instructions if the ARM architecture has them
  87 - Explicitly note that the 32-bit check values are 32 bits
  88 - Avoid adding empty gzip member after gzflush with Z_FINISH
  89 - Fix memory leak on error in gzlog.c
  90 - Fix error in comment on the polynomial representation of a byte
  91 - Clarify gz* function interfaces, referring to parameter names
  92 - Change macro name in inflate.c to avoid collision in VxWorks
  93 - Correct typo in blast.c
  94 - Improve portability of contrib/minizip
  95 - Fix indentation in minizip's zip.c
  96 - Replace black/white with allow/block. (theresa-m)
  97 - minizip warning fix if MAXU32 already defined. (gvollant)
  98 - Fix unztell64() in minizip to work past 4GB. (Daniël Hörchner)
  99 - Clean up minizip to reduce warnings for testing
 100 - Add fallthrough comments for gcc
 101 - Eliminate use of ULL constants
 102 - Separate out address sanitizing from warnings in configure
 103 - Remove destructive aspects of make distclean
 104 - Check for cc masquerading as gcc or clang in configure
 105 - Fix crc32.c to compile local functions only if used
 106 
 107 Changes in 1.2.11 (15 Jan 2017)
 108 - Fix deflate stored bug when pulling last block from window
 109 - Permit immediate deflateParams changes before any deflate input
 110 
 111 Changes in 1.2.10 (2 Jan 2017)
 112 - Avoid warnings on snprintf() return value
 113 - Fix bug in deflate_stored() for zero-length input
 114 - Fix bug in gzwrite.c that produced corrupt gzip files
 115 - Remove files to be installed before copying them in Makefile.in
 116 - Add warnings when compiling with assembler code
 117 
 118 Changes in 1.2.9 (31 Dec 2016)
 119 - Fix contrib/minizip to permit unzipping with desktop API [Zouzou]
 120 - Improve contrib/blast to return unused bytes
 121 - Assure that gzoffset() is correct when appending
 122 - Improve compress() and uncompress() to support large lengths
 123 - Fix bug in test/example.c where error code not saved
 124 - Remedy Coverity warning [Randers-Pehrson]
 125 - Improve speed of gzprintf() in transparent mode
 126 - Fix inflateInit2() bug when windowBits is 16 or 32

 182 - Avoid shift equal to bits in type (caused endless loop)
 183 - Fix uninitialized value bug in gzputc() introduced by const patches
 184 - Fix memory allocation error in examples/zran.c [Nor]
 185 - Fix bug where gzopen(), gzclose() would write an empty file
 186 - Fix bug in gzclose() when gzwrite() runs out of memory
 187 - Check for input buffer malloc failure in examples/gzappend.c
 188 - Add note to contrib/blast to use binary mode in stdio
 189 - Fix comparisons of differently signed integers in contrib/blast
 190 - Check for invalid code length codes in contrib/puff
 191 - Fix serious but very rare decompression bug in inftrees.c
 192 - Update inflateBack() comments, since inflate() can be faster
 193 - Use underscored I/O function names for WINAPI_FAMILY
 194 - Add _tr_flush_bits to the external symbols prefixed by --zprefix
 195 - Add contrib/vstudio/vc10 pre-build step for static only
 196 - Quote --version-script argument in CMakeLists.txt
 197 - Don't specify --version-script on Apple platforms in CMakeLists.txt
 198 - Fix casting error in contrib/testzlib/testzlib.c
 199 - Fix types in contrib/minizip to match result of get_crc_table()
 200 - Simplify contrib/vstudio/vc10 with 'd' suffix
 201 - Add TOP support to win32/Makefile.msc
 202 - Support i686 and amd64 assembler builds in CMakeLists.txt
 203 - Fix typos in the use of _LARGEFILE64_SOURCE in zconf.h
 204 - Add vc11 and vc12 build files to contrib/vstudio
 205 - Add gzvprintf() as an undocumented function in zlib
 206 - Fix configure for Sun shell
 207 - Remove runtime check in configure for four-byte integer type
 208 - Add casts and consts to ease user conversion to C++
 209 - Add man pages for minizip and miniunzip
 210 - In Makefile uninstall, don't rm if preceding cd fails
 211 - Do not return Z_BUF_ERROR if deflateParam() has nothing to write
 212 
 213 Changes in 1.2.7 (2 May 2012)
 214 - Replace use of memmove() with a simple copy for portability
 215 - Test for existence of strerror
 216 - Restore gzgetc_ for backward compatibility with 1.2.6
 217 - Fix build with non-GNU make on Solaris
 218 - Require gcc 4.0 or later on Mac OS X to use the hidden attribute
 219 - Include unistd.h for Watcom C
 220 - Use __WATCOMC__ instead of __WATCOM__
 221 - Do not use the visibility attribute if NO_VIZ defined
 222 - Improve the detection of no hidden visibility attribute

 382 - Add *bsd* to Linux* case in configure [Bar-Lev]
 383 - Add inffast.obj to dependencies in win32/Makefile.msc
 384 - Correct spelling error in deflate.h [Kohler]
 385 - Change libzdll.a again to libz.dll.a (!) in win32/Makefile.gcc
 386 - Add test to configure for GNU C looking for gcc in output of $cc -v
 387 - Add zlib.pc generation to win32/Makefile.gcc [Weigelt]
 388 - Fix bug in zlib.h for _FILE_OFFSET_BITS set and _LARGEFILE64_SOURCE not
 389 - Add comment in zlib.h that adler32_combine with len2 < 0 makes no sense
 390 - Make NO_DIVIDE option in adler32.c much faster (thanks to John Reiser)
 391 - Make stronger test in zconf.h to include unistd.h for LFS
 392 - Apply Darwin patches for 64-bit file offsets to contrib/minizip [Slack]
 393 - Fix zlib.h LFS support when Z_PREFIX used
 394 - Add updated as400 support (removed from old) [Monnerat]
 395 - Avoid deflate sensitivity to volatile input data
 396 - Avoid division in adler32_combine for NO_DIVIDE
 397 - Clarify the use of Z_FINISH with deflateBound() amount of space
 398 - Set binary for output file in puff.c
 399 - Use u4 type for crc_table to avoid conversion warnings
 400 - Apply casts in zlib.h to avoid conversion warnings
 401 - Add OF to prototypes for adler32_combine_ and crc32_combine_ [Miller]
 402 - Improve inflateSync() documentation to note indeterminacy
 403 - Add deflatePending() function to return the amount of pending output
 404 - Correct the spelling of "specification" in FAQ [Randers-Pehrson]
 405 - Add a check in configure for stdarg.h, use for gzprintf()
 406 - Check that pointers fit in ints when gzprint() compiled old style
 407 - Add dummy name before $(SHAREDLIBV) in Makefile [Bar-Lev, Bowler]
 408 - Delete line in configure that adds -L. libz.a to LDFLAGS [Weigelt]
 409 - Add debug records in assembler code [Londer]
 410 - Update RFC references to use http://tools.ietf.org/html/... [Li]
 411 - Add --archs option, use of libtool to configure for Mac OS X [Borstel]
 412 
 413 Changes in 1.2.5 (19 Apr 2010)
 414 - Disable visibility attribute in win32/Makefile.gcc [Bar-Lev]
 415 - Default to libdir as sharedlibdir in configure [Nieder]
 416 - Update copyright dates on modified source files
 417 - Update trees.c to be able to generate modified trees.h
 418 - Exit configure for MinGW, suggesting win32/Makefile.gcc
 419 - Check for NULL path in gz_open [Homurlu]
 420 
 421 Changes in 1.2.4.5 (18 Apr 2010)
 422 - Set sharedlibdir in configure [Torok]
 423 - Set LDFLAGS in Makefile.in [Bar-Lev]
 424 - Avoid mkdir objs race condition in Makefile.in [Bowler]
 425 - Add ZLIB_INTERNAL in front of internal inter-module functions and arrays
 426 - Define ZLIB_INTERNAL to hide internal functions and arrays for GNU C
 427 - Don't use hidden attribute when it is a warning generator (e.g. Solaris)
 428 
 429 Changes in 1.2.4.4 (18 Apr 2010)
 430 - Fix CROSS_PREFIX executable testing, CHOST extract, mingw* [Torok]

 597 - Remove USE_MMAP configuration determination (only used by minigzip)
 598 - Remove examples/pigz.c (available separately)
 599 - Update examples/gun.c to 1.6
 600 
 601 Changes in 1.2.3.5 (8 Jan 2010)
 602 - Add space after #if in zutil.h for some compilers
 603 - Fix relatively harmless bug in deflate_fast() [Exarevsky]
 604 - Fix same problem in deflate_slow()
 605 - Add $(SHAREDLIBV) to LIBS in Makefile.in [Brown]
 606 - Add deflate_rle() for faster Z_RLE strategy run-length encoding
 607 - Add deflate_huff() for faster Z_HUFFMAN_ONLY encoding
 608 - Change name of "write" variable in inffast.c to avoid library collisions
 609 - Fix premature EOF from gzread() in gzio.c [Brown]
 610 - Use zlib header window size if windowBits is 0 in inflateInit2()
 611 - Remove compressBound() call in deflate.c to avoid linking compress.o
 612 - Replace use of errno in gz* with functions, support WinCE [Alves]
 613 - Provide alternative to perror() in minigzip.c for WinCE [Alves]
 614 - Don't use _vsnprintf on later versions of MSVC [Lowman]
 615 - Add CMake build script and input file [Lowman]
 616 - Update contrib/minizip to 1.1 [Svensson, Vollant]
 617 - Moved nintendods directory from contrib to root
 618 - Replace gzio.c with a new set of routines with the same functionality
 619 - Add gzbuffer(), gzoffset(), gzclose_r(), gzclose_w() as part of above
 620 - Update contrib/minizip to 1.1b
 621 - Change gzeof() to return 0 on error instead of -1 to agree with zlib.h
 622 
 623 Changes in 1.2.3.4 (21 Dec 2009)
 624 - Use old school .SUFFIXES in Makefile.in for FreeBSD compatibility
 625 - Update comments in configure and Makefile.in for default --shared
 626 - Fix test -z's in configure [Marquess]
 627 - Build examplesh and minigzipsh when not testing
 628 - Change NULL's to Z_NULL's in deflate.c and in comments in zlib.h
 629 - Import LDFLAGS from the environment in configure
 630 - Fix configure to populate SFLAGS with discovered CFLAGS options
 631 - Adapt make_vms.com to the new Makefile.in [Zinser]
 632 - Add zlib2ansi script for C++ compilation [Marquess]
 633 - Add _FILE_OFFSET_BITS=64 test to make test (when applicable)
 634 - Add AMD64 assembler code for longest match to contrib [Teterin]
 635 - Include options from $SFLAGS when doing $LDSHARED
 636 - Simplify 64-bit file support by introducing z_off64_t type
 637 - Make shared object files in objs directory to work around old Sun cc

 771 
 772 Changes in 1.2.2.4 (11 July 2005)
 773 - Add inflatePrime() function for starting inflation at bit boundary
 774 - Avoid some Visual C warnings in deflate.c
 775 - Avoid more silly Visual C warnings in inflate.c and inftrees.c for 64-bit
 776   compile
 777 - Fix some spelling errors in comments [Betts]
 778 - Correct inflateInit2() error return documentation in zlib.h
 779 - Add zran.c example of compressed data random access to examples
 780   directory, shows use of inflatePrime()
 781 - Fix cast for assignments to strm->state in inflate.c and infback.c
 782 - Fix zlibCompileFlags() in zutil.c to use 1L for long shifts [Oberhumer]
 783 - Move declarations of gf2 functions to right place in crc32.c [Oberhumer]
 784 - Add cast in trees.c t avoid a warning [Oberhumer]
 785 - Avoid some warnings in fitblk.c, gun.c, gzjoin.c in examples [Oberhumer]
 786 - Update make_vms.com [Zinser]
 787 - Initialize state->write in inflateReset() since copied in inflate_fast()
 788 - Be more strict on incomplete code sets in inflate_table() and increase
 789   ENOUGH and MAXD -- this repairs a possible security vulnerability for
 790   invalid inflate input.  Thanks to Tavis Ormandy and Markus Oberhumer for
 791   discovering the vulnerability and providing test cases
 792 - Add ia64 support to configure for HP-UX [Smith]
 793 - Add error return to gzread() for format or i/o error [Levin]
 794 - Use malloc.h for OS/2 [Necasek]
 795 
 796 Changes in 1.2.2.3 (27 May 2005)
 797 - Replace 1U constants in inflate.c and inftrees.c for 64-bit compile
 798 - Typecast fread() return values in gzio.c [Vollant]
 799 - Remove trailing space in minigzip.c outmode (VC++ can't deal with it)
 800 - Fix crc check bug in gzread() after gzungetc() [Heiner]
 801 - Add the deflateTune() function to adjust internal compression parameters
 802 - Add a fast gzip decompressor, gun.c, to examples (use of inflateBack)
 803 - Remove an incorrect assertion in examples/zpipe.c
 804 - Add C++ wrapper in infback9.h [Donais]
 805 - Fix bug in inflateCopy() when decoding fixed codes
 806 - Note in zlib.h how much deflateSetDictionary() actually uses
 807 - Remove USE_DICT_HEAD in deflate.c (would mess up inflate if used)
 808 - Add _WIN32_WCE to define WIN32 in zconf.in.h [Spencer]
 809 - Don't include stderr.h or errno.h for _WIN32_WCE in zutil.h [Spencer]
 810 - Add gzdirect() function to indicate transparent reads
 811 - Update contrib/minizip [Vollant]
 812 - Fix compilation of deflate.c when both ASMV and FASTEST [Oberhumer]
 813 - Add casts in crc32.c to avoid warnings [Oberhumer]
 814 - Add contrib/masmx64 [Vollant]
 815 - Update contrib/asm586, asm686, masmx86, testzlib, vstudio [Vollant]
 816 
 817 Changes in 1.2.2.2 (30 December 2004)
 818 - Replace structure assignments in deflate.c and inflate.c with zmemcpy to
 819   avoid implicit memcpy calls (portability for no-library compilation)
 820 - Increase sprintf() buffer size in gzdopen() to allow for large numbers
 821 - Add INFLATE_STRICT to check distances against zlib header
 822 - Improve WinCE errno handling and comments [Chang]
 823 - Remove comment about no gzip header processing in FAQ
 824 - Add Z_FIXED strategy option to deflateInit2() to force fixed trees
 825 - Add updated make_vms.com [Coghlan], update README
 826 - Create a new "examples" directory, move gzappend.c there, add zpipe.c,
 827   fitblk.c, gzlog.[ch], gzjoin.c, and zlib_how.html
 828 - Add FAQ entry and comments in deflate.c on uninitialized memory access
 829 - Add Solaris 9 make options in configure [Gilbert]
 830 - Allow strerror() usage in gzio.c for STDC
 831 - Fix DecompressBuf in contrib/delphi/ZLib.pas [ManChesTer]
 832 - Update contrib/masmx86/inffas32.asm and gvmat32.asm [Vollant]
 833 - Use z_off_t for adler32_combine() and crc32_combine() lengths
 834 - Make adler32() much faster for small len
 835 - Use OS_CODE in deflate() default gzip header
 836 
 837 Changes in 1.2.2.1 (31 October 2004)
 838 - Allow inflateSetDictionary() call for raw inflate
 839 - Fix inflate header crc check bug for file names and comments
 840 - Add deflateSetHeader() and gz_header structure for custom gzip headers
 841 - Add inflateGetheader() to retrieve gzip headers
 842 - Add crc32_combine() and adler32_combine() functions
 843 - Add alloc_func, free_func, in_func, out_func to Z_PREFIX list
 844 - Use zstreamp consistently in zlib.h (inflate_back functions)
 845 - Remove GUNZIP condition from definition of inflate_mode in inflate.h
 846   and in contrib/inflate86/inffast.S [Truta, Anderson]
 847 - Add support for AMD64 in contrib/inflate86/inffas86.c [Anderson]

 878 - Fix configure to not hardcode directories for Darwin [Peterson]
 879 - Fix gzio.c to not return error on empty files [Brown]
 880 - Fix indentation; update version in contrib/delphi/ZLib.pas and
 881   contrib/pascal/zlibpas.pas [Truta]
 882 - Update mkasm.bat in contrib/masmx86 [Truta]
 883 - Update contrib/untgz [Truta]
 884 - Add projects/README.projects [Truta]
 885 - Add project for MS Visual C++ 6.0 in projects/visualc6 [Cadieux, Truta]
 886 - Update win32/DLL_FAQ.txt [Truta]
 887 - Update list of Z_PREFIX symbols in zconf.h [Randers-Pehrson, Truta]
 888 - Remove an unnecessary assignment to curr in inftrees.c [Truta]
 889 - Add OS/2 to exe builds in configure [Poltorak]
 890 - Remove err dummy parameter in zlib.h [Kientzle]
 891 
 892 Changes in 1.2.1.1 (9 January 2004)
 893 - Update email address in README
 894 - Several FAQ updates
 895 - Fix a big fat bug in inftrees.c that prevented decoding valid
 896   dynamic blocks with only literals and no distance codes --
 897   Thanks to "Hot Emu" for the bug report and sample file
 898 - Add a note to puff.c on no distance codes case
 899 
 900 Changes in 1.2.1 (17 November 2003)
 901 - Remove a tab in contrib/gzappend/gzappend.c
 902 - Update some interfaces in contrib for new zlib functions
 903 - Update zlib version number in some contrib entries
 904 - Add Windows CE definition for ptrdiff_t in zutil.h [Mai, Truta]
 905 - Support shared libraries on Hurd and KFreeBSD [Brown]
 906 - Fix error in NO_DIVIDE option of adler32.c
 907 
 908 Changes in 1.2.0.8 (4 November 2003)
 909 - Update version in contrib/delphi/ZLib.pas and contrib/pascal/zlibpas.pas
 910 - Add experimental NO_DIVIDE #define in adler32.c
 911     - Possibly faster on some processors (let me know if it is)
 912 - Correct Z_BLOCK to not return on first inflate call if no wrap
 913 - Fix strm->data_type on inflate() return to correctly indicate EOB
 914 - Add deflatePrime() function for appending in the middle of a byte
 915 - Add contrib/gzappend for an example of appending to a stream
 916 - Update win32/DLL_FAQ.txt [Truta]
 917 - Delete Turbo C comment in README [Truta]
 918 - Improve some indentation in zconf.h [Truta]

1056 - Improve setting of zlib format compression level flags
1057     - Report 0 for huffman and rle strategies and for level == 0 or 1
1058     - Report 2 only for level == 6
1059 - Only deal with 64K limit when necessary at compile time [Truta]
1060 - Allow TOO_FAR check to be turned off at compile time [Truta]
1061 - Add gzclearerr() function [Souza]
1062 - Add gzungetc() function
1063 
1064 Changes in 1.2.0.1 (17 March 2003)
1065 - Add Z_RLE strategy for run-length encoding [Truta]
1066     - When Z_RLE requested, restrict matches to distance one
1067     - Update zlib.h, minigzip.c, gzopen(), gzdopen() for Z_RLE
1068 - Correct FASTEST compilation to allow level == 0
1069 - Clean up what gets compiled for FASTEST
1070 - Incorporate changes to zconf.in.h [Vollant]
1071     - Refine detection of Turbo C need for dummy returns
1072     - Refine ZLIB_DLL compilation
1073     - Include additional header file on VMS for off_t typedef
1074 - Try to use _vsnprintf where it supplants vsprintf [Vollant]
1075 - Add some casts in inffast.c
1076 - Enhance comments in zlib.h on what happens if gzprintf() tries to
1077   write more than 4095 bytes before compression
1078 - Remove unused state from inflateBackEnd()
1079 - Remove exit(0) from minigzip.c, example.c
1080 - Get rid of all those darn tabs
1081 - Add "check" target to Makefile.in that does the same thing as "test"
1082 - Add "mostlyclean" and "maintainer-clean" targets to Makefile.in
1083 - Update contrib/inflate86 [Anderson]
1084 - Update contrib/testzlib, contrib/vstudio, contrib/minizip [Vollant]
1085 - Add msdos and win32 directories with makefiles [Truta]
1086 - More additions and improvements to the FAQ
1087 
1088 Changes in 1.2.0 (9 March 2003)
1089 - New and improved inflate code
1090     - About 20% faster
1091     - Does not allocate 32K window unless and until needed
1092     - Automatically detects and decompresses gzip streams
1093     - Raw inflate no longer needs an extra dummy byte at end
1094     - Added inflateBack functions using a callback interface--even faster
1095       than inflate, useful for file utilities (gzip, zip)
1096     - Added inflateCopy() function to record state for random access on

1122 - Correct Turbo C memory allocation when under Linux
1123 - Use libz.a instead of -lz in Makefile (assure use of compiled library)
1124 - Update configure to check for snprintf or vsnprintf functions and their
1125   return value, warn during make if using an insecure function
1126 - Fix configure problem with compile-time knowledge of HAVE_UNISTD_H that
1127   is lost when library is used--resolution is to build new zconf.h
1128 - Documentation improvements (in zlib.h):
1129     - Document raw deflate and inflate
1130     - Update RFCs URL
1131     - Point out that zlib and gzip formats are different
1132     - Note that Z_BUF_ERROR is not fatal
1133     - Document string limit for gzprintf() and possible buffer overflow
1134     - Note requirement on avail_out when flushing
1135     - Note permitted values of flush parameter of inflate()
1136 - Add some FAQs (and even answers) to the FAQ
1137 - Add contrib/inflate86/ for x86 faster inflate
1138 - Add contrib/blast/ for PKWare Data Compression Library decompression
1139 - Add contrib/puff/ simple inflate for deflate format description
1140 
1141 Changes in 1.1.4 (11 March 2002)
1142 - ZFREE was repeated on same allocation on some error conditions
1143   This creates a security problem described in
1144   http://www.zlib.org/advisory-2002-03-11.txt
1145 - Returned incorrect error (Z_MEM_ERROR) on some invalid data
1146 - Avoid accesses before window for invalid distances with inflate window
1147   less than 32K
1148 - force windowBits > 8 to avoid a bug in the encoder for a window size
1149   of 256 bytes. (A complete fix will be available in 1.1.5)
1150 
1151 Changes in 1.1.3 (9 July 1998)
1152 - fix "an inflate input buffer bug that shows up on rare but persistent
1153   occasions" (Mark)
1154 - fix gzread and gztell for concatenated .gz files (Didier Le Botlan)
1155 - fix gzseek(..., SEEK_SET) in write mode
1156 - fix crc check after a gzeek (Frank Faubert)
1157 - fix miniunzip when the last entry in a zip file is itself a zip file
1158   (J Lillge)
1159 - add contrib/asm586 and contrib/asm686 (Brian Raiter)
1160   See http://www.muppetlabs.com/~breadbox/software/assembly.html
1161 - add support for Delphi 3 in contrib/delphi (Bob Dellaca)
1162 - add support for C++Builder 3 and Delphi 3 in contrib/delphi2 (Davide Moretti)
1163 - do not exit prematurely in untgz if 0 at start of block (Magnus Holmgren)
1164 - use macro EXTERN instead of extern to support DLL for BeOS (Sander Stoks)
1165 - added a FAQ file
1166 
1167 - Support gzdopen on Mac with Metrowerks (Jason Linhart)
1168 - Do not redefine Byte on Mac (Brad Pettit & Jason Linhart)
1169 - define SEEK_END too if SEEK_SET is not defined (Albert Chin-A-Young)

1203   completely thread safe (Mark)
1204 - some simplifications and slight speed-up to the inflate code (Mark)
1205 - fix gzeof on non-compressed files (Allan Schrum)
1206 - add -std1 option in configure for OSF1 to fix gzprintf (Martin Mokrejs)
1207 - use default value of 4K for Z_BUFSIZE for 16-bit MSDOS (Tim Wegner + Glenn)
1208 - added os2/Makefile.def and os2/zlib.def (Andrew Zabolotny)
1209 - add shared lib support for UNIX_SV4.2MP (MATSUURA Takanori)
1210 - do not wrap extern "C" around system includes (Tom Lane)
1211 - mention zlib binding for TCL in README (Andreas Kupries)
1212 - added amiga/Makefile.pup for Amiga powerUP SAS/C PPC (Andreas Kleinert)
1213 - allow "make install prefix=..." even after configure (Glenn Randers-Pehrson)
1214 - allow "configure --prefix $HOME" (Tim Mooney)
1215 - remove warnings in example.c and gzio.c (Glenn Randers-Pehrson)
1216 - move Makefile.sas to amiga/Makefile.sas
1217 
1218 Changes in 1.1.1 (27 Feb 98)
1219 - fix macros _tr_tally_* in deflate.h for debug mode  (Glenn Randers-Pehrson)
1220 - remove block truncation heuristic which had very marginal effect for zlib
1221   (smaller lit_bufsize than in gzip 1.2.4) and degraded a little the
1222   compression ratio on some files. This also allows inlining _tr_tally for
1223   matches in deflate_slow
1224 - added msdos/Makefile.w32 for WIN32 Microsoft Visual C++ (Bob Frazier)
1225 
1226 Changes in 1.1.0 (24 Feb 98)
1227 - do not return STREAM_END prematurely in inflate (John Bowler)
1228 - revert to the zlib 1.0.8 inflate to avoid the gcc 2.8.0 bug (Jeremy Buhler)
1229 - compile with -DFASTEST to get compression code optimized for speed only
1230 - in minigzip, try mmap'ing the input file first (Miguel Albrecht)
1231 - increase size of I/O buffers in minigzip.c and gzio.c (not a big gain
1232   on Sun but significant on HP)
1233 
1234 - add a pointer to experimental unzip library in README (Gilles Vollant)
1235 - initialize variable gcc in configure (Chris Herborth)
1236 
1237 Changes in 1.0.9 (17 Feb 1998)
1238 - added gzputs and gzgets functions
1239 - do not clear eof flag in gzseek (Mark Diekhans)
1240 - fix gzseek for files in transparent mode (Mark Diekhans)
1241 - do not assume that vsprintf returns the number of bytes written (Jens Krinke)
1242 - replace EXPORT with ZEXPORT to avoid conflict with other programs
1243 - added compress2 in zconf.h, zlib.def, zlib.dnt
1244 - new asm code from Gilles Vollant in contrib/asm386
1245 - simplify the inflate code (Mark):
1246  . Replace ZALLOC's in huft_build() with single ZALLOC in inflate_blocks_new()
1247  . ZALLOC the length list in inflate_trees_fixed() instead of using stack
1248  . ZALLOC the value area for huft_build() instead of using stack
1249  . Simplify Z_FINISH check in inflate()
1250 
1251 - Avoid gcc 2.8.0 comparison bug a little differently than zlib 1.0.8
1252 - in inftrees.c, avoid cc -O bug on HP (Farshid Elahi)
1253 - in zconf.h move the ZLIB_DLL stuff earlier to avoid problems with
1254   the declaration of FAR (Gilles Vollant)
1255 - install libz.so* with mode 755 (executable) instead of 644 (Marc Lehmann)
1256 - read_buf buf parameter of type Bytef* instead of charf*
1257 - zmemcpy parameters are of type Bytef*, not charf* (Joseph Strout)
1258 - do not redeclare unlink in minigzip.c for WIN32 (John Bowler)
1259 - fix check for presence of directories in "make install" (Ian Willis)
1260 
1261 Changes in 1.0.8 (27 Jan 1998)
1262 - fixed offsets in contrib/asm386/gvmat32.asm (Gilles Vollant)
1263 - fix gzgetc and gzputc for big endian systems (Markus Oberhumer)
1264 - added compress2() to allow setting the compression level
1265 - include sys/types.h to get off_t on some systems (Marc Lehmann & QingLong)
1266 - use constant arrays for the static trees in trees.c instead of computing
1267   them at run time (thanks to Ken Raeburn for this suggestion). To create
1268   trees.h, compile with GEN_TREES_H and run "make test"
1269 - check return code of example in "make test" and display result
1270 - pass minigzip command line options to file_compress
1271 - simplifying code of inflateSync to avoid gcc 2.8 bug
1272 
1273 - support CC="gcc -Wall" in configure -s (QingLong)
1274 - avoid a flush caused by ftell in gzopen for write mode (Ken Raeburn)
1275 - fix test for shared library support to avoid compiler warnings
1276 - zlib.lib -> zlib.dll in msdos/zlib.rc (Gilles Vollant)
1277 - check for TARGET_OS_MAC in addition to MACOS (Brad Pettit)
1278 - do not use fdopen for Metrowerks on Mac (Brad Pettit))
1279 - add checks for gzputc and gzputc in example.c
1280 - avoid warnings in gzio.c and deflate.c (Andreas Kleinert)
1281 - use const for the CRC table (Ken Raeburn)
1282 - fixed "make uninstall" for shared libraries
1283 - use Tracev instead of Trace in infblock.c
1284 - in example.c use correct compressed length for test_sync
1285 - suppress +vnocompatwarnings in configure for HPUX (not always supported)
1286 
1287 Changes in 1.0.7 (20 Jan 1998)
1288 - fix gzseek which was broken in write mode
1289 - return error for gzseek to negative absolute position
1290 - fix configure for Linux (Chun-Chung Chen)
1291 - increase stack space for MSC (Tim Wegner)
1292 - get_crc_table and inflateSyncPoint are EXPORTed (Gilles Vollant)
1293 - define EXPORTVA for gzprintf (Gilles Vollant)
1294 - added man page zlib.3 (Rick Rodgers)
1295 - for contrib/untgz, fix makedir() and improve Makefile
1296 
1297 - check gzseek in write mode in example.c
1298 - allocate extra buffer for seeks only if gzseek is actually called
1299 - avoid signed/unsigned comparisons (Tim Wegner, Gilles Vollant)
1300 - add inflateSyncPoint in zconf.h
1301 - fix list of exported functions in nt/zlib.dnt and mdsos/zlib.def
1302 
1303 Changes in 1.0.6 (19 Jan 1998)
1304 - add functions gzprintf, gzputc, gzgetc, gztell, gzeof, gzseek, gzrewind and
1305   gzsetparams (thanks to Roland Giersig and Kevin Ruland for some of this code)
1306 - Fix a deflate bug occurring only with compression level 0 (thanks to
1307   Andy Buckler for finding this one)
1308 - In minigzip, pass transparently also the first byte for .Z files
1309 - return Z_BUF_ERROR instead of Z_OK if output buffer full in uncompress()
1310 - check Z_FINISH in inflate (thanks to Marc Schluper)
1311 - Implement deflateCopy (thanks to Adam Costello)
1312 - make static libraries by default in configure, add --shared option
1313 - move MSDOS or Windows specific files to directory msdos
1314 - suppress the notion of partial flush to simplify the interface
1315   (but the symbol Z_PARTIAL_FLUSH is kept for compatibility with 1.0.4)
1316 - suppress history buffer provided by application to simplify the interface
1317   (this feature was not implemented anyway in 1.0.4)
1318 - next_in and avail_in must be initialized before calling inflateInit or
1319   inflateInit2
1320 - add EXPORT in all exported functions (for Windows DLL)
1321 - added Makefile.nt (thanks to Stephen Williams)
1322 - added the unsupported "contrib" directory:
1323    contrib/asm386/ by Gilles Vollant <info@winimage.com>
1324         386 asm code replacing longest_match()
1325    contrib/iostream/ by Kevin Ruland <kevin@rodin.wustl.edu>
1326         A C++ I/O streams interface to the zlib gz* functions
1327    contrib/iostream2/  by Tyge Løvset <Tyge.Lovset@cmr.no>
1328         Another C++ I/O streams interface
1329    contrib/untgz/  by "Pedro A. Aranda Guti\irrez" <paag@tid.es>
1330         A very simple tar.gz file extractor using zlib
1331    contrib/visual-basic.txt by Carlos Rios <c_rios@sonda.cl>
1332         How to use compress(), uncompress() and the gz* functions from VB
1333 - pass params -f (filtered data), -h (huffman only), -1 to -9 (compression
1334   level) in minigzip (thanks to Tom Lane)
1335 
1336 - use const for rommable constants in deflate
1337 - added test for gzseek and gztell in example.c
1338 - add undocumented function inflateSyncPoint() (hack for Paul Mackerras)
1339 - add undocumented function zError to convert error code to string
1340   (for Tim Smithers)
1341 - Allow compilation of gzio with -DNO_DEFLATE to avoid the compression code
1342 - Use default memcpy for Symantec MSDOS compiler
1343 - Add EXPORT keyword for check_func (needed for Windows DLL)
1344 - add current directory to LD_LIBRARY_PATH for "make test"
1345 - create also a link for libz.so.1
1346 - added support for FUJITSU UXP/DS (thanks to Toshiaki Nomura)
1347 - use $(SHAREDLIB) instead of libz.so in Makefile.in (for HPUX)
1348 - added -soname for Linux in configure (Chun-Chung Chen,
1349 - assign numbers to the exported functions in zlib.def (for Windows DLL)
1350 - add advice in zlib.h for best usage of deflateSetDictionary
1351 - work around compiler bug on Atari (cast Z_NULL in call of s->checkfn)
1352 - allow compilation with ANSI keywords only enabled for TurboC in large model
1353 - avoid "versionString"[0] (Borland bug)
1354 - add NEED_DUMMY_RETURN for Borland
1355 - use variable z_verbose for tracing in debug mode (L. Peter Deutsch)
1356 - allow compilation with CC
1357 - defined STDC for OS/2 (David Charlap)
1358 - limit external names to 8 chars for MVS (Thomas Lund)
1359 - in minigzip.c, use static buffers only for 16-bit systems
1360 - fix suffix check for "minigzip -d foo.gz"
1361 - do not return an error for the 2nd of two consecutive gzflush() (Felix Lee)
1362 - use _fdopen instead of fdopen for MSC >= 6.0 (Thomas Fanslau)
1363 - added makelcc.bat for lcc-win32 (Tom St Denis)
1364 - in Makefile.dj2, use copy and del instead of install and rm (Frank Donahoe)
1365 - Avoid expanded $Id$. Use "rcs -kb" or "cvs admin -kb" to avoid Id expansion
1366 - check for unistd.h in configure (for off_t)
1367 - remove useless check parameter in inflate_blocks_free
1368 - avoid useless assignment of s->check to itself in inflate_blocks_new
1369 - do not flush twice in gzclose (thanks to Ken Raeburn)
1370 - rename FOPEN as F_OPEN to avoid clash with /usr/include/sys/file.h
1371 - use NO_ERRNO_H instead of enumeration of operating systems with errno.h
1372 - work around buggy fclose on pipes for HP/UX
1373 - support zlib DLL with BORLAND C++ 5.0 (thanks to Glenn Randers-Pehrson)
1374 - fix configure if CC is already equal to gcc
1375 
1376 Changes in 1.0.5 (3 Jan 98)
1377 - Fix inflate to terminate gracefully when fed corrupted or invalid data
1378 - Use const for rommable constants in inflate
1379 - Eliminate memory leaks on error conditions in inflate
1380 - Removed some vestigial code in inflate
1381 - Update web address in README
1382 
1383 Changes in 1.0.4 (24 Jul 96)
1384 - In very rare conditions, deflate(s, Z_FINISH) could fail to produce an EOF
1385   bit, so the decompressor could decompress all the correct data but went
1386   on to attempt decompressing extra garbage data. This affected minigzip too
1387 - zlibVersion and gzerror return const char* (needed for DLL)
1388 - port to RISCOS (no fdopen, no multiple dots, no unlink, no fileno)
1389 - use z_error only for DEBUG (avoid problem with DLLs)
1390 
1391 Changes in 1.0.3 (2 Jul 96)
1392 - use z_streamp instead of z_stream *, which is now a far pointer in MSDOS
1393   small and medium models; this makes the library incompatible with previous
1394   versions for these models. (No effect in large model or on other systems.)
1395 - return OK instead of BUF_ERROR if previous deflate call returned with
1396   avail_out as zero but there is nothing to do
1397 - added memcmp for non STDC compilers
1398 - define NO_DUMMY_DECL for more Mac compilers (.h files merged incorrectly)
1399 - define __32BIT__ if __386__ or i386 is defined (pb. with Watcom and SCO)
1400 - better check for 16-bit mode MSC (avoids problem with Symantec)
1401 
1402 Changes in 1.0.2 (23 May 96)
1403 - added Windows DLL support
1404 - added a function zlibVersion (for the DLL support)
1405 - fixed declarations using Bytef in infutil.c (pb with MSDOS medium model)
1406 - Bytef is define's instead of typedef'd only for Borland C
1407 - avoid reading uninitialized memory in example.c
1408 - mention in README that the zlib format is now RFC1950
1409 - updated Makefile.dj2
1410 - added algorithm.doc
1411 
1412 Changes in 1.0.1 (20 May 96) [1.0 skipped to avoid confusion]
1413 - fix array overlay in deflate.c which sometimes caused bad compressed data
1414 - fix inflate bug with empty stored block
1415 - fix MSDOS medium model which was broken in 0.99
1416 - fix deflateParams() which could generate bad compressed data
1417 - Bytef is define'd instead of typedef'ed (work around Borland bug)
1418 - added an INDEX file
1419 - new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32),
1420   Watcom (Makefile.wat), Amiga SAS/C (Makefile.sas)
1421 - speed up adler32 for modern machines without auto-increment
1422 - added -ansi for IRIX in configure
1423 - static_init_done in trees.c is an int
1424 - define unlink as delete for VMS
1425 - fix configure for QNX
1426 - add configure branch for SCO and HPUX
1427 - avoid many warnings (unused variables, dead assignments, etc...)
1428 - no fdopen for BeOS
1429 - fix the Watcom fix for 32 bit mode (define FAR as empty)
1430 - removed redefinition of Byte for MKWERKS
1431 - work around an MWKERKS bug (incorrect merge of all .h files)
1432 
1433 Changes in 0.99 (27 Jan 96)
1434 - allow preset dictionary shared between compressor and decompressor
1435 - allow compression level 0 (no compression)
1436 - add deflateParams in zlib.h: allow dynamic change of compression level
1437   and compression strategy
1438 - test large buffers and deflateParams in example.c
1439 - add optional "configure" to build zlib as a shared library
1440 - suppress Makefile.qnx, use configure instead
1441 - fixed deflate for 64-bit systems (detected on Cray)
1442 - fixed inflate_blocks for 64-bit systems (detected on Alpha)
1443 - declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2)
1444 - always return Z_BUF_ERROR when deflate() has nothing to do
1445 - deflateInit and inflateInit are now macros to allow version checking
1446 - prefix all global functions and types with z_ with -DZ_PREFIX
1447 - make falloc completely reentrant (inftrees.c)
1448 - fixed very unlikely race condition in ct_static_init
1449 - free in reverse order of allocation to help memory manager
1450 - use zlib-1.0/* instead of zlib/* inside the tar.gz
1451 - make zlib warning-free with "gcc -O3 -Wall -Wwrite-strings -Wpointer-arith
1452   -Wconversion -Wstrict-prototypes -Wmissing-prototypes"
1453 - allow gzread on concatenated .gz files
1454 - deflateEnd now returns Z_DATA_ERROR if it was premature
1455 - deflate is finally (?) fully deterministic (no matches beyond end of input)
1456 - Document Z_SYNC_FLUSH
1457 - add uninstall in Makefile
1458 - Check for __cpluplus in zlib.h
1459 - Better test in ct_align for partial flush
1460 - avoid harmless warnings for Borland C++
1461 - initialize hash_head in deflate.c
1462 - avoid warning on fdopen (gzio.c) for HP cc -Aa
1463 - include stdlib.h for STDC compilers
1464 - include errno.h for Cray
1465 - ignore error if ranlib doesn't exist
1466 - call ranlib twice for NeXTSTEP
1467 - use exec_prefix instead of prefix for libz.a
1468 - renamed ct_* as _tr_* to avoid conflict with applications
1469 - clear z->msg in inflateInit2 before any error return
1470 - initialize opaque in example.c, gzio.c, deflate.c and inflate.c
1471 - fixed typo in zconf.h (_GNUC__ => __GNUC__)
1472 - check for WIN32 in zconf.h and zutil.c (avoid farmalloc in 32-bit mode)
1473 - fix typo in Make_vms.com (f$trnlnm -> f$getsyi)
1474 - in fcalloc, normalize pointer if size > 65520 bytes
1475 - don't use special fcalloc for 32 bit Borland C++
1476 - use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc.
1477 - use Z_BINARY instead of BINARY
1478 - document that gzclose after gzdopen will close the file
1479 - allow "a" as mode in gzopen
1480 - fix error checking in gzread
1481 - allow skipping .gz extra-field on pipes
1482 - added reference to Perl interface in README
1483 - put the crc table in FAR data (I dislike more and more the medium model :)
1484 - added get_crc_table
1485 - added a dimension to all arrays (Borland C can't count)
1486 - workaround Borland C bug in declaration of inflate_codes_new & inflate_fast
1487 - guard against multiple inclusion of *.h (for precompiled header on Mac)
1488 - Watcom C pretends to be Microsoft C small model even in 32 bit mode
1489 - don't use unsized arrays to avoid silly warnings by Visual C++:
1490      warning C4746: 'inflate_mask' : unsized array treated as  '__far'
1491      (what's wrong with far data in far model?)
1492 - define enum out of inflate_blocks_state to allow compilation with C++
1493 
1494 Changes in 0.95 (16 Aug 95)
1495 - fix MSDOS small and medium model (now easier to adapt to any compiler)
1496 - inlined send_bits
1497 - fix the final (:-) bug for deflate with flush (output was correct but
1498   not completely flushed in rare occasions)
1499 - default window size is same for compression and decompression
1500   (it's now sufficient to set MAX_WBITS in zconf.h)
1501 - voidp -> voidpf and voidnp -> voidp (for consistency with other
1502   typedefs and because voidnp was not near in large model)
1503 
1504 Changes in 0.94 (13 Aug 95)
1505 - support MSDOS medium model
1506 - fix deflate with flush (could sometimes generate bad output)
1507 - fix deflateReset (zlib header was incorrectly suppressed)
1508 - added support for VMS
1509 - allow a compression level in gzopen()
1510 - gzflush now calls fflush
1511 - For deflate with flush, flush even if no more input is provided
1512 - rename libgz.a as libz.a
1513 - avoid complex expression in infcodes.c triggering Turbo C bug
1514 - work around a problem with gcc on Alpha (in INSERT_STRING)
1515 - don't use inline functions (problem with some gcc versions)
1516 - allow renaming of Byte, uInt, etc... with #define
1517 - avoid warning about (unused) pointer before start of array in deflate.c
1518 - avoid various warnings in gzio.c, example.c, infblock.c, adler32.c, zutil.c
1519 - avoid reserved word 'new' in trees.c
1520 
1521 Changes in 0.93 (25 June 95)
1522 - temporarily disable inline functions
1523 - make deflate deterministic
1524 - give enough lookahead for PARTIAL_FLUSH
1525 - Set binary mode for stdin/stdout in minigzip.c for OS/2
1526 - don't even use signed char in inflate (not portable enough)
1527 - fix inflate memory leak for segmented architectures
1528 
1529 Changes in 0.92 (3 May 95)
1530 - don't assume that char is signed (problem on SGI)
1531 - Clear bit buffer when starting a stored block
1532 - no memcpy on Pyramid
1533 - suppressed inftest.c
1534 - optimized fill_window, put longest_match inline for gcc
1535 - optimized inflate on stored blocks
1536 - untabify all sources to simplify patches
1537 
1538 Changes in 0.91 (2 May 95)
1539 - Default MEM_LEVEL is 8 (not 9 for Unix) as documented in zlib.h
1540 - Document the memory requirements in zconf.h
1541 - added "make install"
1542 - fix sync search logic in inflateSync
1543 - deflate(Z_FULL_FLUSH) now works even if output buffer too short
1544 - after inflateSync, don't scare people with just "lo world"
1545 - added support for DJGPP
1546 
1547 Changes in 0.9 (1 May 95)
1548 - don't assume that zalloc clears the allocated memory (the TurboC bug
1549   was Mark's bug after all :)
1550 - let again gzread copy uncompressed data unchanged (was working in 0.71)
1551 - deflate(Z_FULL_FLUSH), inflateReset and inflateSync are now fully implemented
1552 - added a test of inflateSync in example.c
1553 - moved MAX_WBITS to zconf.h because users might want to change that
1554 - document explicitly that zalloc(64K) on MSDOS must return a normalized
1555   pointer (zero offset)
1556 - added Makefiles for Microsoft C, Turbo C, Borland C++
1557 - faster crc32()
1558 
1559 Changes in 0.8 (29 April 95)
1560 - added fast inflate (inffast.c)
1561 - deflate(Z_FINISH) now returns Z_STREAM_END when done. Warning: this
1562   is incompatible with previous versions of zlib which returned Z_OK
1563 - work around a TurboC compiler bug (bad code for b << 0, see infutil.h)
1564   (actually that was not a compiler bug, see 0.81 above)
1565 - gzread no longer reads one extra byte in certain cases
1566 - In gzio destroy(), don't reference a freed structure
1567 - avoid many warnings for MSDOS
1568 - avoid the ERROR symbol which is used by MS Windows
1569 
1570 Changes in 0.71 (14 April 95)
1571 - Fixed more MSDOS compilation problems :( There is still a bug with
1572   TurboC large model
1573 
1574 Changes in 0.7 (14 April 95)
1575 - Added full inflate support
1576 - Simplified the crc32() interface. The pre- and post-conditioning
1577   (one's complement) is now done inside crc32(). WARNING: this is
1578   incompatible with previous versions; see zlib.h for the new usage
1579 
1580 Changes in 0.61 (12 April 95)
1581 - workaround for a bug in TurboC. example and minigzip now work on MSDOS
1582 
1583 Changes in 0.6 (11 April 95)
1584 - added minigzip.c
1585 - added gzdopen to reopen a file descriptor as gzFile
1586 - added transparent reading of non-gziped files in gzread
1587 - fixed bug in gzread (don't read crc as data)
1588 - fixed bug in destroy (gzio.c) (don't return Z_STREAM_END for gzclose)
1589 - don't allocate big arrays in the stack (for MSDOS)
1590 - fix some MSDOS compilation problems
1591 
1592 Changes in 0.5:
1593 - do real compression in deflate.c. Z_PARTIAL_FLUSH is supported but
1594   not yet Z_FULL_FLUSH
1595 - support decompression but only in a single step (forced Z_FINISH)
1596 - added opaque object for zalloc and zfree
1597 - added deflateReset and inflateReset
1598 - added a variable zlib_version for consistency checking
1599 - renamed the 'filter' parameter of deflateInit2 as 'strategy'
1600   Added Z_FILTERED and Z_HUFFMAN_ONLY constants
1601 
1602 Changes in 0.4:
1603 - avoid "zip" everywhere, use zlib instead of ziplib
1604 - suppress Z_BLOCK_FLUSH, interpret Z_PARTIAL_FLUSH as block flush
1605   if compression method == 8
1606 - added adler32 and crc32
1607 - renamed deflateOptions as deflateInit2, call one or the other but not both
1608 - added the method parameter for deflateInit2
1609 - added inflateInit2
1610 - simplified considerably deflateInit and inflateInit by not supporting
1611   user-provided history buffer. This is supported only in deflateInit2
1612   and inflateInit2
1613 
1614 Changes in 0.3:
1615 - prefix all macro names with Z_
1616 - use Z_FINISH instead of deflateEnd to finish compression
1617 - added Z_HUFFMAN_ONLY
1618 - added gzerror()
< prev index next >