about summary refs log tree commit diff homepage
path: root/compress.3
blob: 799312d00ff1d30e98741565b5c0b0df99f56518 (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
.Dd November 8, 2018
.Dt COMPRESS 3
.Os
.
.Sh NAME
.Nm compress ,
.Nm compress2 ,
.Nm compressBound
.Nd compress source buffer into destination buffer
.
.Sh LIBRARY
.Lb libz
.
.Sh SYNOPSIS
.In zlib.h
.
.Ft int
.Fo compress
.Fa "Bytef *dest"
.Fa "uLongf *destLen"
.Fa "const Bytef *source"
.Fa "uLong sourceLen"
.Fc
.
.Ft int
.Fo compress2
.Fa "Bytef *dest"
.Fa "uLongf *destLen"
.Fa "const Bytef *source"
.Fa "uLong sourceLen"
.Fa "int level"
.Fc
.
.Ft uLong
.Fn compressBound "uLong sourceLen"
.
.Sh DESCRIPTION
Compresses the source buffer into the destination buffer.
.Fa sourceLen
is the byte length of the source buffer.
Upon entry,
.Fa destLen
is the total size of the destination buffer,
which must be at least the value returned by
.Fn compressBound sourceLen .
Upon exit,
.Fa destLen
is the actual size of the compressed data.
.
.Pp
.Fn compress
is equivalent to
.Fn compress2
with a
.Fa level
parameter of
.Dv Z_DEFAULT_COMPRESSION .
.
.Pp
.Fn compressBound
returns an upper bound on the compressed size after
.Fn compress
or
.Fn compress2
on
.Fa sourceLen
bytes.
It would be used before a
.Fn compress
or
.Fn compress2
call to allocate the destination buffer.
.
.Sh RETURN VALUES
.Fn compress
and
.Fn compress2
return
.Dv Z_OK
on success,
.Dv Z_MEM_ERROR
if there was not enough memory,
.Dv Z_BUF_ERROR
if there was not enough room in the output buffer,
.Dv Z_STREAM_ERROR
if the
.Fa level
parameter is invalid.