Rbcafe » Technology » Cryptography » Compression



zlib – compression/decompression library


[see zlib.h for full description]


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 compres-
sion 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

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

All functions of the compression library are documented in
the file zlib.h. The distribution source includes exam-
ples of use of the library the files example.c and

A Java implementation of zlib is available in the Java
Development Kit 1.1

A Perl interface to zlib, written by Paul Marquess (pmar- is available at CPAN (Comprehensive
Perl Archive Network) sites, such as:*

A Python interface to zlib written by A.M. Kuchling
is available from the Python Software
Association sites, such as:*.tar.gz


Questions about zlib should be sent to: or, if this fails, to the
author addresses given below. The zlib home page

The data format used by the zlib library is described by
RFC (Request for Comments) 1950 to 1952 in the files: (zlib format)
rfc1951.txt (deflate format)
rfc1952.txt (gzip format)

These documents are also available in other formats from:


Version 1.1.3 Copyright (C) 1995-1998 Jean-loup Gailly
( and Mark Adler (

This software is provided “as-is,” without any express or
implied warranty. In no event will the authors be held
liable for any damages arising from the use of this soft-
ware. See the distribution directory with respect to
requirements governing redistribution. The deflate format
used by 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 sug-
gested various improvements in zlib; who are too numerous
to cite here.

UNIX manual page by R. P. C. Rodgers, U.S. National
Library of Medicine (


Rbcafe © 2004- | Rb Cafe 1.3 | Contact Rbcafe | Rbcafe on Twitter | Rbcafe on Facebook | Privacy Policy