ZLIB(3) Introduction to Library Functions ZLIB(3)

NAME


zlib - compression/decompression library

SYNOPSIS


[see zlib.h for full description]

DESCRIPTION


The 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 gzip(1) (.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 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/example.c and test/minigzip.c, as well as
other examples in the examples/ directory.

Changes to this version are documented in the file ChangeLog that
accompanies the source.

zlib is built in to many languages and operating systems, including
but not limited to Java, Python, .NET, PHP, Perl, Ruby, Swift, and
Go.

An experimental package to read and write files in the .zip format,
written on top of zlib by Gilles Vollant (info@winimage.com), is
available at:

http://www.winimage.com/zLibDll/minizip.html and also in the
contrib/minizip directory of the main zlib source
distribution.

SEE ALSO


The zlib web site can be found at:

http://zlib.net/

The data format used by the zlib library is described by RFC (Request
for Comments) 1950 to 1952 in the files:

http://tools.ietf.org/html/rfc1950 (for the zlib header and
trailer format)
http://tools.ietf.org/html/rfc1951 (for the deflate compressed
data format)
http://tools.ietf.org/html/rfc1952 (for the gzip header and
trailer format)

Mark Nelson wrote an article about zlib for the Jan. 1997 issue of
Dr. Dobb's Journal; a copy of the article is available at:

http://marknelson.us/1997/01/01/zlib-engine/

REPORTING PROBLEMS


Before reporting a problem, please check the zlib web site to verify
that you have the latest version of zlib; otherwise, obtain the
latest version and see if the problem still exists. Please read the
zlib FAQ at:

http://zlib.net/zlib_faq.html

before asking for help. Send questions and/or comments to
zlib@gzip.org, or (for the Windows DLL version) to Gilles Vollant
(info@winimage.com).

AUTHORS AND LICENSE


Version 1.3.1

Copyright (C) 1995-2024 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 software.

Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute
it freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must
not claim that you wrote the original software. If you use this
software in a product, an acknowledgment in the product
documentation would be appreciated but is not required.

2. Altered source versions must be plainly marked as such, and must
not be misrepresented as being the original software.

3. This notice may not be removed or altered from any source
distribution.

Jean-loup Gailly Mark Adler
jloup@gzip.org madler@alumni.caltech.edu

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
improvements in zlib; who are too numerous to cite here.

UNIX manual page by R. P. C. Rodgers, U.S. National Library of
Medicine (rodgers@nlm.nih.gov).

22 Jan 2024 ZLIB(3)

tribblix@gmail.com :: GitHub :: Privacy