about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
-rw-r--r--Makefile1
-rw-r--r--gzfwrite.360
2 files changed, 61 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 6d61cbf..dd0e2a9 100644
--- a/Makefile
+++ b/Makefile
@@ -20,6 +20,7 @@ MAN += deflateSetHeader.3
 MAN += deflateTune.3
 MAN += gzbuffer.3
 MAN += gzfread.3
+MAN += gzfwrite.3
 MAN += gzopen.3
 MAN += gzread.3
 MAN += gzsetparams.3
diff --git a/gzfwrite.3 b/gzfwrite.3
new file mode 100644
index 0000000..ef2a8ff
--- /dev/null
+++ b/gzfwrite.3
@@ -0,0 +1,60 @@
+.Dd November 13, 2018
+.Dt GZFWRITE 3
+.Os
+.
+.Sh NAME
+.Nm gzfwrite
+.Nd write to compressed file
+.
+.Sh LIBRARY
+.Lb libz
+.
+.Sh SYNOPSIS
+.In zlib.h
+.Ft z_size_t
+.Fn gzfwrite "voidpc buf" "z_size_t size" "z_size_t nitems" "gzFile file"
+.
+.Sh DESCRIPTION
+.Fn gzfwrite
+writes
+.Fa nitems
+items of size
+.Fa size
+from
+.Fa buf
+to
+.Fa file ,
+duplicating the interface of stdio's
+.Xr fwrite 3 ,
+with
+.Vt size_t
+request and return types.
+If the library defines
+.Vt size_t ,
+then
+.Vt z_size_t
+is identical to
+.Vt size_t .
+If not,
+then
+.Vt z_size_t
+is an unsigned integer type
+that can contain a pointer.
+.
+.Sh RETURN VALUES
+.Fn gzfwrite
+returns the number of full items
+written of size
+.Fa size ,
+or zero if there was an error.
+If the multiplication of
+.Fa size
+and
+.Fa nitems
+overflows,
+i.e. the product does not fit in a
+.Vt z_size_t ,
+then nothing is written,
+zero is returned,
+and the error state is set to
+.Dv Z_STREAM_ERROR .