about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2018-11-11 21:19:55 -0500
committerJune McEnroe <june@causal.agency>2018-11-11 21:19:55 -0500
commit7c6222563e7e5c5a1ec2646a03d1feff157fda71 (patch)
tree210058d54b7f36404e33cd7beca9a406c4d81ffc
parentAdd inflateGetDictionary.3 (diff)
downloadzlib-man-pages-7c6222563e7e5c5a1ec2646a03d1feff157fda71.tar.gz
zlib-man-pages-7c6222563e7e5c5a1ec2646a03d1feff157fda71.zip
Add inflateSync.3
-rw-r--r--Makefile1
-rw-r--r--inflateSync.358
2 files changed, 59 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 193cc85..4ba5e8d 100644
--- a/Makefile
+++ b/Makefile
@@ -24,6 +24,7 @@ MAN += inflateGetDictionary.3
 MAN += inflateInit.3
 MAN += inflateInit2.3
 MAN += inflateSetDictionary.3
+MAN += inflateSync.3
 MAN += uncompress.3
 MAN += zlibCompileFlags.3
 MAN += zlibVersion.3
diff --git a/inflateSync.3 b/inflateSync.3
new file mode 100644
index 0000000..a70a06c
--- /dev/null
+++ b/inflateSync.3
@@ -0,0 +1,58 @@
+.Dd November 11, 2018
+.Dt INFLATESYNC 3
+.Os
+.
+.Sh NAME
+.Nm inflateSync
+.Nd skip invalid data
+.
+.Sh LIBRARY
+.Lb libz
+.
+.Sh SYNOPSIS
+.In zlib.h
+.Ft int
+.Fn inflateSync "z_streamp strm"
+.
+.Sh DESCRIPTION
+Skips invalid compressed data
+until a possible full flush point
+.Po
+see
+.Xr deflate 3
+for the description of
+.Dv Z_FULL_FLUSH
+.Pc
+can be found,
+or until all available input is skipped.
+No output is provided.
+.
+.Pp
+.Fn inflateSync
+searches for a 00 00 FF FF pattern
+in the compressed data.
+All full flush points have this pattern,
+but not all occurrences of this pattern
+are full flush points.
+.
+.Sh RETURN VALUES
+.Fn inflateSync
+returns
+.Dv Z_OK
+if a possible full flush point has been found,
+.Dv Z_BUF_ERROR
+if no more input was provided,
+.Dv Z_DATA_ERROR
+if no flush point has been found,
+or
+.Dv Z_STREAM_ERROR
+if the stream structure was inconsistent.
+In the success case,
+the application may save the current value of
+.Fa total_in
+which indicates where valid compressed data was found.
+In the error case,
+the application may repeatedly call
+.Fn inflateSync ,
+providing more input each time,
+until success or the end of the input data.