From d44dd46696f2694ab477065b3882b450c75f299a Mon Sep 17 00:00:00 2001 From: Curtis McEnroe Date: Thu, 15 Nov 2018 22:48:31 -0500 Subject: Add gzdirect.3 --- Makefile | 1 + gzdirect.3 | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 gzdirect.3 diff --git a/Makefile b/Makefile index b6f4fd4..f98e393 100644 --- a/Makefile +++ b/Makefile @@ -19,6 +19,7 @@ MAN += deflateSetDictionary.3 MAN += deflateSetHeader.3 MAN += deflateTune.3 MAN += gzbuffer.3 +MAN += gzdirect.3 MAN += gzeof.3 MAN += gzflush.3 MAN += gzfread.3 diff --git a/gzdirect.3 b/gzdirect.3 new file mode 100644 index 0000000..478db6d --- /dev/null +++ b/gzdirect.3 @@ -0,0 +1,72 @@ +.Dd November 13, 2018 +.Dt GZDIRECT 3 +.Os +. +.Sh NAME +.Nm gzdirect +.Nd check direct copy +. +.Sh LIBRARY +.Lb libz +. +.Sh SYNOPSIS +.In zlib.h +.Ft int +.Fn gzdirect "gzFile file" +. +.Sh DESCRIPTION +Returns true (1) if +.Fa file +is being copied directly while reading, +or false (0) if +.Fa file +is a gzip stream being decompressed. +. +.Pp +If the input file is empty, +.Fn gzdirect +will return true, +since the input does not contain a gzip stream. +. +.Pp +If +.Fn gzdirect +is used immediately after +.Xr gzopen 3 +or +.Xr gzdopen 3 +it will cause buffers to be allocated +to allow reading the file +to determine if it is a gzip file. +Therefore if +.Xr gzbuffer 3 +is used, +it should be called before +.Fn gzdirect . +. +.Pp +When writing, +.Fn gzdirect +returns true (1) +if transparent writing was requested +.Po +.Dq wT +for the +.Xr gzopen 3 +mode +.Pc , +or false (0) otherwise. +.Po +Note: +.Fn gzdirect +is not needed when writing. +Transparent writing +must be explicitly requested, +so the application already knows the answer. +When linking statically, +using +.Fn gzdirect +will include all of the zlib code +for gzip file reading and decompression, +which may not be desired. +.Pc -- cgit 1.4.1