1ZLIB(3) Library Functions Manual ZLIB(3)
2
3
4
6 zlib - compression/decompression library
7
9 [see zlib.h for full description]
10
12 The zlib library is a general purpose data compression library. The
13 code is thread safe, assuming that the standard library functions used
14 are thread safe, such as memory allocation routines. It provides in-
15 memory compression and decompression functions, including integrity
16 checks of the uncompressed data. This version of the library supports
17 only one compression method (deflation) but other algorithms may be
18 added later with the same stream interface.
19
20 Compression can be done in a single step if the buffers are large
21 enough or can be done by repeated calls of the compression function.
22 In the latter case, the application must provide more input and/or con‐
23 sume the output (providing more output space) before each call.
24
25 The library also supports reading and writing files in gzip(1) (.gz)
26 format with an interface similar to that of stdio.
27
28 The library does not install any signal handler. The decoder checks
29 the consistency of the compressed data, so the library should never
30 crash even in the case of corrupted input.
31
32 All functions of the compression library are documented in the file
33 zlib.h. The distribution source includes examples of use of the li‐
34 brary in the files test/example.c and test/minigzip.c, as well as other
35 examples in the examples/ directory.
36
37 Changes to this version are documented in the file ChangeLog that ac‐
38 companies the source.
39
40 zlib is built in to many languages and operating systems, including but
41 not limited to Java, Python, .NET, PHP, Perl, Ruby, Swift, and Go.
42
43 An experimental package to read and write files in the .zip format,
44 written on top of zlib by Gilles Vollant (info@winimage.com), is avail‐
45 able at:
46
47 http://www.winimage.com/zLibDll/minizip.html and also in the
48 contrib/minizip directory of the main zlib source distribution.
49
51 The zlib web site can be found at:
52
53 http://zlib.net/
54
55 The data format used by the zlib library is described by RFC (Request
56 for Comments) 1950 to 1952 in the files:
57
58 http://tools.ietf.org/html/rfc1950 (for the zlib header and
59 trailer format)
60 http://tools.ietf.org/html/rfc1951 (for the deflate compressed
61 data format)
62 http://tools.ietf.org/html/rfc1952 (for the gzip header and
63 trailer format)
64
65 Mark Nelson wrote an article about zlib for the Jan. 1997 issue of Dr.
66 Dobb's Journal; a copy of the article is available at:
67
68 http://marknelson.us/1997/01/01/zlib-engine/
69
71 Before reporting a problem, please check the zlib web site to verify
72 that you have the latest version of zlib; otherwise, obtain the latest
73 version and see if the problem still exists. Please read the zlib FAQ
74 at:
75
76 http://zlib.net/zlib_faq.html
77
78 before asking for help. Send questions and/or comments to
79 zlib@gzip.org, or (for the Windows DLL version) to Gilles Vollant
80 (info@winimage.com).
81
83 Version 1.2.13
84
85 Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler
86
87 This software is provided 'as-is', without any express or implied war‐
88 ranty. In no event will the authors be held liable for any damages
89 arising from the use of this software.
90
91 Permission is granted to anyone to use this software for any purpose,
92 including commercial applications, and to alter it and redistribute it
93 freely, subject to the following restrictions:
94
95 1. The origin of this software must not be misrepresented; you must not
96 claim that you wrote the original software. If you use this software
97 in a product, an acknowledgment in the product documentation would
98 be appreciated but is not required.
99
100 2. Altered source versions must be plainly marked as such, and must not
101 be misrepresented as being the original software.
102
103 3. This notice may not be removed or altered from any source distribu‐
104 tion.
105
106 Jean-loup Gailly Mark Adler
107 jloup@gzip.org madler@alumni.caltech.edu
108
109 The deflate format used by zlib was defined by Phil Katz. The deflate
110 and zlib specifications were written by L. Peter Deutsch. Thanks to
111 all the people who reported problems and suggested various improvements
112 in zlib; who are too numerous to cite here.
113
114 UNIX manual page by R. P. C. Rodgers, U.S. National Library of Medicine
115 (rodgers@nlm.nih.gov).
116
117
118
119 13 Oct 2022 ZLIB(3)