blob: 3435a5329b700cb0955caa558674cf277d2d086b (
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
|
.Dd November 13, 2018
.Dt GZPRINTF 3
.Os
.
.Sh NAME
.Nm gzprintf
.Nd format output to compressed file
.
.Sh LIBRARY
.Lb libz
.
.Sh SYNOPSIS
.In zlib.h
.Ft int
.Fn gzprintf "gzFile file" "const char *format" "..."
.
.Sh DESCRIPTION
Converts, formats, and writes the arguments
to the compressed file
under control of the format string,
as in
.Xr fprintf 3 .
.
.Sh RETURN VALUES
.Fn gzprintf
returns the number of
uncompressed bytes actually written,
or a negative zlib error code
in case of error.
The number of uncompressed bytes written
is limited to 8191,
or one less than the buffer size given to
.Xr gzbuffer 3 .
The caller should assure that
this limit is not exceeded.
If it is exceeded,
then
.Fn gzprintf
will return an error (0)
with nothing written.
In this case,
there may also be a buffer overflow
with unpredictable consequences,
which is possibly only if zlib
was compiled with the insecure functions
.Xr sprintf 3
or
.Xr vsprintf 3
because the secure
.Xr snprintf 3
or
.Xr vsnprintf 3
functions
were not available.
This can be determined using
.Xr zlibCompileFlags 3 .
|