zlib library is a general purpose data compression library.
The code is thread safe, assuming that the standard library functions
used are thread safe, such as memory allocation routines.
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 may be added later
with the same stream interface.
Compression can be done in a single step if the buffers are large enough
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
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 the 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
in the files
test/minigzip.c, as well as other examples in the
Changes to this version are documented in the file
ChangeLog that accompanies the source.
zlib is available in Java using the java.util.zip package:
Copyright (C) 1995-2013 Jean-loup Gailly (firstname.lastname@example.org)
and Mark Adler (email@example.com).
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 software.
See the distribution directory with respect to requirements
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 suggested various
zlib; who are too numerous to cite here.
UNIX manual page by R. P. C. Rodgers,
U.S. National Library of Medicine (firstname.lastname@example.org).