Sunday, November 11, 2007

zlib Home Site

zlib Home Site
zlib 1.2.3, July 18, 2005
-->Version 1.2.3 eliminates potential security vulnerabilities in zlib 1.2.1 and 1.2.2, so all users of those versions should upgrade immediately. The following important fixes are provided in zlib 1.2.3:

Eliminate a potential security vulnerability when decoding invalid compressed data
Eliminate a potential security vulnerability when decoding specially crafted compressed data
Fix a bug when decompressing dynamic blocks with no distance codes
Fix crc check bug in gzread() after gzungetc()
Do not return an error when using gzread() on an empty file
Version 1.2.x adds many improvements and features to zlib. Here are some highlights:
inflate is about 20% faster and minimizes memory allocation
crc32 is about 50% faster
New, improved, and supported DLL interface and DLL FAQ
New functions and functionality:
deflate() and inflate() will now optionally encode and decode gzip streams
raw deflate() and inflate() now documented and supported
New inflateBack() functions for call-back interface -- faster than inflate()
Z_BLOCK flush option and new return information added to inflate to facilitate appending to deflate streams
raw deflate() now accepts a dictionary -- for appending
deflatePrime() for starting deflate output mid-byte -- for appending
Z_RLE strategy for run-length encoding -- option for PNG compression
gzclearerr() and gzungetc(), analogous to stdio functions
inflateCopy() added, analogous to deflateCopy()
deflateBound() and compressBound() for maximum size of compressed data
zlibCompileFlags() to provide compilation information
More supported architectures and improved shared library support
Many more FAQ entries
Several new and updated contributions in the contrib directory


Canonical URL: http://zlib.net/ (US)
Mirror sites:
http://www.gzip.org/zlib/ (France)
http://zlib.ipinfo.de/ (Germany)


zlib is designed to be a free, general-purpose, legally unencumbered -- that is, not covered by any patents -- lossless data-compression library for use on virtually any computer hardware and operating system. The zlib data format is itself portable across platforms. Unlike the LZW compression method used in Unix compress(1) and in the GIF image format, the compression method currently used in zlib essentially never expands the data. (LZW can double or triple the file size in extreme cases.) zlib's memory footprint is also independent of the input data and can be reduced, if necessary, at some cost in compression. A more precise, technical discussion of both points is available on another page.
zlib was written by Jean-loup Gailly (compression) and Mark Adler (decompression). Jean-loup is also the primary author/maintainer of gzip(1), the author of the comp.compression FAQ list and the former maintainer of Info-ZIP's Zip; Mark is also the author of gzip's and UnZip's main decompression routines and was the original author of Zip. Not surprisingly, the compression algorithm used in zlib is essentially the same as that in gzip and Zip, namely, the `deflate' method that originated in PKWARE's PKZIP 2.x.
Mark and Jean-loup can be reached by e-mail at . Please read the FAQ and the manual before asking us for help. We are getting too many questions which already have an answer in the zlib documentation.
Greg, Mark and/or Jean-loup will add some more stuff here when they think of something to add. For now this page is mainly a pointer to zlib itself and to the official zlib and deflate documentation. Note that the specifications both achieved official Internet RFC status in May 1996, and zlib itself was adopted in version 1.1 of the Java Development Kit (JDK), both as a raw class and as a component of the JAR archive format.
The lovely zlib-vise image above was provided courtesy of Bruce Gardner, art director of Dr. Dobb's Journal. It appears in Mark Nelson's article in the January 1997 issue (see below).


Related External Links

zlib for Windows 9x/NT/2000/XP/2003 (DLL version, plus related utilities)
zlib for Windows 9x/NT (DLL and static version)
zlib for .NET
zlib 32-bit OCX and 16-bit DLL (Visual Basic interface, source code and binaries, 84k)
zlib 32-bit OCX
gzip Home Page
DataCompression.info
Info-ZIP Home Page