The zlib library is a general purpose data compression library. The code is thread safe. It provides in-memory compression and decompression functions, including integrity checks of the uncompressed data. This version of the library supports only one compression method (deflation) but other algorithms will be added later and will have the same stream interface.
Compression can be done in a single step if the buffers are large enough (for example if an input file is mmap'ed), or can be done by repeated calls of the compression function. In the latter case, the application must provide more input and/or consume the output (providing more output space) before each call.
The library also supports reading and writing files in gzip (.gz) format with an interface similar to that of stdio.
The library does not install any signal handler. The decoder checks the consistency of the compressed data, so the library should never crash even in case of corrupted input.
All functions of the compression library are documented in the file zlib.h. The distribution source includes examples of use of the library the files example.c and minigzip.c.
A Java implementation of zlib is available in the Java Development Kit 1.1
A Perl interface to zlib, written by Paul Marquess (firstname.lastname@example.org) is available at CPAN (Comprehensive Perl Archive Network) sites, such as:
A Python interface to zlib written by A.M. Kuchling ''
Questions about zlib should be sent to:
email@example.com or, if this fails, to the author addresses given below. The zlib home page is:
The data format used by the zlib library is described by RFC (Request for Comments) 1950 to 1952 in the files:
ftp://ds.internic.net/rfc/rfc1950.txt (zlib format) rfc1951.txt (deflate format) rfc1952.txt (gzip format)
These documents are also available in other formats from:
Version 1.1.4 Copyright (C) 1995-2002 Jean-loup Gailly (firstname.lastname@example.org) and Mark Adler (email@example.com).
This software is provided zlib was defined by Phil Katz. The deflate and zlib specifications were written by L. Peter Deutsch. Thanks to all the people who reported problems and suggested various improvements in zlib''; who are too numerous to cite here.