summary refs log tree commit diff
path: root/doc/zlib/gzclose.3
blob: 77eae11eea101878951d5e910e2bd9796809a315 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
.Dd January 15, 2017
.Dt GZCLOSE 3
.Os
.
.Sh NAME
.Nm gzclose ,
.Nm gzclose_r ,
.Nm gzclose_w
.Nd close compressed file
.
.Sh LIBRARY
.Lb libz
.
.Sh SYNOPSIS
.In zlib.h
.Ft int
.Fn gzclose "gzFile file"
.Ft int
.Fn gzclose_r "gzFile file"
.Ft int
.Fn gzclose_w "gzFile file"
.
.Sh DESCRIPTION
Flushes all pending output if necessary,
closes the compressed file
and deallocates the (de)compression state.
Note that once
.Fa file
is closed,
you cannot call
.Xr gzerror 3
with
.Fa file ,
since its structures
have been deallocated.
.Fn gzclose
must not be called more than once
on the same file,
just as
.Xr free 3
must not be called more than once
on the same allocation.
.
.Pp
.Fn gzclose_r
and
.Fn gzclose_w
are the same as
.Fn gzclose ,
but
.Fn gzclose_r
is only for use when reading,
and
.Fn gzclose_w
is only for use when writing or appending.
The advantage to using these instead of
.Fn gzclose
is that they avoid linking in
zlib compression or decompression code
that is not used when only reading
or only writing respectively.
If
.Fn gzclose
is used,
then both compression and decompression code
will be included in the application
when linking to a static zlib library.
.
.Sh RETURN VALUES
.Fn gzclose
will return
.Dv Z_STREAM_ERROR
if
.Fa file
is not valid,
.Dv Z_ERRNO
on a file operator error,
.Dv Z_MEM_ERROR
if out of memory,
.Dv Z_BUF_ERROR
if the last read ended in the middle of a gzip stream,
or
.Dv Z_OK
on success.
.
.Sh SEE ALSO
.Xr gzopen 3
.
.Sh HISTORY
This manual page was converted from
.In zlib.h
to mdoc format by
.An C. McEnroe Aq Mt june@causal.agency .
.
.Sh AUTHORS
.An Jean-loup Gailly Aq Mt jloup@gzip.org
.An Mark Adler Aq Mt madler@alumni.caltech.edu