xref: /netbsd-src/common/dist/zlib/contrib/infback9/infback9.h (revision b175d1c2a0d8a7ee59df83b5ae5f0bd11632ced6)
1aaf4ece6Schristos /* infback9.h -- header for using inflateBack9 functions
2aaf4ece6Schristos  * Copyright (C) 2003 Mark Adler
3aaf4ece6Schristos  * For conditions of distribution and use, see copyright notice in zlib.h
4aaf4ece6Schristos  */
5aaf4ece6Schristos 
6aaf4ece6Schristos /*
7aaf4ece6Schristos  * This header file and associated patches provide a decoder for PKWare's
8aaf4ece6Schristos  * undocumented deflate64 compression method (method 9).  Use with infback9.c,
9aaf4ece6Schristos  * inftree9.h, inftree9.c, and inffix9.h.  These patches are not supported.
10aaf4ece6Schristos  * This should be compiled with zlib, since it uses zutil.h and zutil.o.
11aaf4ece6Schristos  * This code has not yet been tested on 16-bit architectures.  See the
12aaf4ece6Schristos  * comments in zlib.h for inflateBack() usage.  These functions are used
13aaf4ece6Schristos  * identically, except that there is no windowBits parameter, and a 64K
14aaf4ece6Schristos  * window must be provided.  Also if int's are 16 bits, then a zero for
15aaf4ece6Schristos  * the third parameter of the "out" function actually means 65536UL.
16aaf4ece6Schristos  * zlib.h must be included before this header file.
17aaf4ece6Schristos  */
18aaf4ece6Schristos 
19aaf4ece6Schristos #ifdef __cplusplus
20aaf4ece6Schristos extern "C" {
21aaf4ece6Schristos #endif
22aaf4ece6Schristos 
23*b175d1c2Schristos ZEXTERN int ZEXPORT inflateBack9(z_stream FAR *strm,
24aaf4ece6Schristos                                  in_func in, void FAR *in_desc,
25*b175d1c2Schristos                                  out_func out, void FAR *out_desc);
26*b175d1c2Schristos ZEXTERN int ZEXPORT inflateBack9End(z_stream FAR *strm);
27*b175d1c2Schristos ZEXTERN int ZEXPORT inflateBack9Init_(z_stream FAR *strm,
28aaf4ece6Schristos                                       unsigned char FAR *window,
29aaf4ece6Schristos                                       const char *version,
30*b175d1c2Schristos                                       int stream_size);
31aaf4ece6Schristos #define inflateBack9Init(strm, window) \
32aaf4ece6Schristos         inflateBack9Init_((strm), (window), \
33aaf4ece6Schristos         ZLIB_VERSION, sizeof(z_stream))
34aaf4ece6Schristos 
35aaf4ece6Schristos #ifdef __cplusplus
36aaf4ece6Schristos }
37aaf4ece6Schristos #endif
38