From cfb11f2acf7b2d504c689d097c14e7342a2d732f Mon Sep 17 00:00:00 2001 From: CocosRobot Date: Wed, 8 Apr 2015 01:56:07 +0000 Subject: [PATCH] [AUTO][ci skip]: updating cocos2dx_files.json --- external/zlib/include/zconf.h | 511 +++++ external/zlib/include/zlib.h | 1768 +++++++++++++++++ external/zlib/prebuilt/android/Android.mk | 8 + .../zlib/prebuilt/android/armeabi-v7a/libz.a | Bin 0 -> 90922 bytes external/zlib/prebuilt/android/armeabi/libz.a | Bin 0 -> 133814 bytes external/zlib/prebuilt/android/x86/libz.a | Bin 0 -> 163314 bytes external/zlib/prebuilt/mac/libz.a | Bin 0 -> 109564 bytes templates/cocos2dx_files.json | 609 +++--- 8 files changed, 2540 insertions(+), 356 deletions(-) create mode 100755 external/zlib/include/zconf.h create mode 100755 external/zlib/include/zlib.h create mode 100755 external/zlib/prebuilt/android/Android.mk create mode 100755 external/zlib/prebuilt/android/armeabi-v7a/libz.a create mode 100755 external/zlib/prebuilt/android/armeabi/libz.a create mode 100755 external/zlib/prebuilt/android/x86/libz.a create mode 100755 external/zlib/prebuilt/mac/libz.a diff --git a/external/zlib/include/zconf.h b/external/zlib/include/zconf.h new file mode 100755 index 0000000000..996fff2921 --- /dev/null +++ b/external/zlib/include/zconf.h @@ -0,0 +1,511 @@ +/* zconf.h -- configuration of the zlib compression library + * Copyright (C) 1995-2013 Jean-loup Gailly. + * For conditions of distribution and use, see copyright notice in zlib.h + */ + +/* @(#) $Id$ */ + +#ifndef ZCONF_H +#define ZCONF_H + +/* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. + * Even better than compiling with -DZ_PREFIX would be to use configure to set + * this permanently in zconf.h using "./configure --zprefix". + */ +#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */ +# define Z_PREFIX_SET + +/* all linked symbols */ +# define _dist_code z__dist_code +# define _length_code z__length_code +# define _tr_align z__tr_align +# define _tr_flush_bits z__tr_flush_bits +# define _tr_flush_block z__tr_flush_block +# define _tr_init z__tr_init +# define _tr_stored_block z__tr_stored_block +# define _tr_tally z__tr_tally +# define adler32 z_adler32 +# define adler32_combine z_adler32_combine +# define adler32_combine64 z_adler32_combine64 +# ifndef Z_SOLO +# define compress z_compress +# define compress2 z_compress2 +# define compressBound z_compressBound +# endif +# define crc32 z_crc32 +# define crc32_combine z_crc32_combine +# define crc32_combine64 z_crc32_combine64 +# define deflate z_deflate +# define deflateBound z_deflateBound +# define deflateCopy z_deflateCopy +# define deflateEnd z_deflateEnd +# define deflateInit2_ z_deflateInit2_ +# define deflateInit_ z_deflateInit_ +# define deflateParams z_deflateParams +# define deflatePending z_deflatePending +# define deflatePrime z_deflatePrime +# define deflateReset z_deflateReset +# define deflateResetKeep z_deflateResetKeep +# define deflateSetDictionary z_deflateSetDictionary +# define deflateSetHeader z_deflateSetHeader +# define deflateTune z_deflateTune +# define deflate_copyright z_deflate_copyright +# define get_crc_table z_get_crc_table +# ifndef Z_SOLO +# define gz_error z_gz_error +# define gz_intmax z_gz_intmax +# define gz_strwinerror z_gz_strwinerror +# define gzbuffer z_gzbuffer +# define gzclearerr z_gzclearerr +# define gzclose z_gzclose +# define gzclose_r z_gzclose_r +# define gzclose_w z_gzclose_w +# define gzdirect z_gzdirect +# define gzdopen z_gzdopen +# define gzeof z_gzeof +# define gzerror z_gzerror +# define gzflush z_gzflush +# define gzgetc z_gzgetc +# define gzgetc_ z_gzgetc_ +# define gzgets z_gzgets +# define gzoffset z_gzoffset +# define gzoffset64 z_gzoffset64 +# define gzopen z_gzopen +# define gzopen64 z_gzopen64 +# ifdef _WIN32 +# define gzopen_w z_gzopen_w +# endif +# define gzprintf z_gzprintf +# define gzvprintf z_gzvprintf +# define gzputc z_gzputc +# define gzputs z_gzputs +# define gzread z_gzread +# define gzrewind z_gzrewind +# define gzseek z_gzseek +# define gzseek64 z_gzseek64 +# define gzsetparams z_gzsetparams +# define gztell z_gztell +# define gztell64 z_gztell64 +# define gzungetc z_gzungetc +# define gzwrite z_gzwrite +# endif +# define inflate z_inflate +# define inflateBack z_inflateBack +# define inflateBackEnd z_inflateBackEnd +# define inflateBackInit_ z_inflateBackInit_ +# define inflateCopy z_inflateCopy +# define inflateEnd z_inflateEnd +# define inflateGetHeader z_inflateGetHeader +# define inflateInit2_ z_inflateInit2_ +# define inflateInit_ z_inflateInit_ +# define inflateMark z_inflateMark +# define inflatePrime z_inflatePrime +# define inflateReset z_inflateReset +# define inflateReset2 z_inflateReset2 +# define inflateSetDictionary z_inflateSetDictionary +# define inflateGetDictionary z_inflateGetDictionary +# define inflateSync z_inflateSync +# define inflateSyncPoint z_inflateSyncPoint +# define inflateUndermine z_inflateUndermine +# define inflateResetKeep z_inflateResetKeep +# define inflate_copyright z_inflate_copyright +# define inflate_fast z_inflate_fast +# define inflate_table z_inflate_table +# ifndef Z_SOLO +# define uncompress z_uncompress +# endif +# define zError z_zError +# ifndef Z_SOLO +# define zcalloc z_zcalloc +# define zcfree z_zcfree +# endif +# define zlibCompileFlags z_zlibCompileFlags +# define zlibVersion z_zlibVersion + +/* all zlib typedefs in zlib.h and zconf.h */ +# define Byte z_Byte +# define Bytef z_Bytef +# define alloc_func z_alloc_func +# define charf z_charf +# define free_func z_free_func +# ifndef Z_SOLO +# define gzFile z_gzFile +# endif +# define gz_header z_gz_header +# define gz_headerp z_gz_headerp +# define in_func z_in_func +# define intf z_intf +# define out_func z_out_func +# define uInt z_uInt +# define uIntf z_uIntf +# define uLong z_uLong +# define uLongf z_uLongf +# define voidp z_voidp +# define voidpc z_voidpc +# define voidpf z_voidpf + +/* all zlib structs in zlib.h and zconf.h */ +# define gz_header_s z_gz_header_s +# define internal_state z_internal_state + +#endif + +#if defined(__MSDOS__) && !defined(MSDOS) +# define MSDOS +#endif +#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2) +# define OS2 +#endif +#if defined(_WINDOWS) && !defined(WINDOWS) +# define WINDOWS +#endif +#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__) +# ifndef WIN32 +# define WIN32 +# endif +#endif +#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32) +# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__) +# ifndef SYS16BIT +# define SYS16BIT +# endif +# endif +#endif + +/* + * Compile with -DMAXSEG_64K if the alloc function cannot allocate more + * than 64k bytes at a time (needed on systems with 16-bit int). + */ +#ifdef SYS16BIT +# define MAXSEG_64K +#endif +#ifdef MSDOS +# define UNALIGNED_OK +#endif + +#ifdef __STDC_VERSION__ +# ifndef STDC +# define STDC +# endif +# if __STDC_VERSION__ >= 199901L +# ifndef STDC99 +# define STDC99 +# endif +# endif +#endif +#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus)) +# define STDC +#endif +#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__)) +# define STDC +#endif +#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32)) +# define STDC +#endif +#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__)) +# define STDC +#endif + +#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */ +# define STDC +#endif + +#ifndef STDC +# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */ +# define const /* note: need a more gentle solution here */ +# endif +#endif + +#if defined(ZLIB_CONST) && !defined(z_const) +# define z_const const +#else +# define z_const +#endif + +/* Some Mac compilers merge all .h files incorrectly: */ +#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__) +# define NO_DUMMY_DECL +#endif + +/* Maximum value for memLevel in deflateInit2 */ +#ifndef MAX_MEM_LEVEL +# ifdef MAXSEG_64K +# define MAX_MEM_LEVEL 8 +# else +# define MAX_MEM_LEVEL 9 +# endif +#endif + +/* Maximum value for windowBits in deflateInit2 and inflateInit2. + * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files + * created by gzip. (Files created by minigzip can still be extracted by + * gzip.) + */ +#ifndef MAX_WBITS +# define MAX_WBITS 15 /* 32K LZ77 window */ +#endif + +/* The memory requirements for deflate are (in bytes): + (1 << (windowBits+2)) + (1 << (memLevel+9)) + that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) + plus a few kilobytes for small objects. For example, if you want to reduce + the default memory requirements from 256K to 128K, compile with + make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" + Of course this will generally degrade compression (there's no free lunch). + + The memory requirements for inflate are (in bytes) 1 << windowBits + that is, 32K for windowBits=15 (default value) plus a few kilobytes + for small objects. +*/ + + /* Type declarations */ + +#ifndef OF /* function prototypes */ +# ifdef STDC +# define OF(args) args +# else +# define OF(args) () +# endif +#endif + +#ifndef Z_ARG /* function prototypes for stdarg */ +# if defined(STDC) || defined(Z_HAVE_STDARG_H) +# define Z_ARG(args) args +# else +# define Z_ARG(args) () +# endif +#endif + +/* The following definitions for FAR are needed only for MSDOS mixed + * model programming (small or medium model with some far allocations). + * This was tested only with MSC; for other MSDOS compilers you may have + * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, + * just define FAR to be empty. + */ +#ifdef SYS16BIT +# if defined(M_I86SM) || defined(M_I86MM) + /* MSC small or medium model */ +# define SMALL_MEDIUM +# ifdef _MSC_VER +# define FAR _far +# else +# define FAR far +# endif +# endif +# if (defined(__SMALL__) || defined(__MEDIUM__)) + /* Turbo C small or medium model */ +# define SMALL_MEDIUM +# ifdef __BORLANDC__ +# define FAR _far +# else +# define FAR far +# endif +# endif +#endif + +#if defined(WINDOWS) || defined(WIN32) + /* If building or using zlib as a DLL, define ZLIB_DLL. + * This is not mandatory, but it offers a little performance increase. + */ +# ifdef ZLIB_DLL +# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500)) +# ifdef ZLIB_INTERNAL +# define ZEXTERN extern __declspec(dllexport) +# else +# define ZEXTERN extern __declspec(dllimport) +# endif +# endif +# endif /* ZLIB_DLL */ + /* If building or using zlib with the WINAPI/WINAPIV calling convention, + * define ZLIB_WINAPI. + * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI. + */ +# ifdef ZLIB_WINAPI +# ifdef FAR +# undef FAR +# endif +# include + /* No need for _export, use ZLIB.DEF instead. */ + /* For complete Windows compatibility, use WINAPI, not __stdcall. */ +# define ZEXPORT WINAPI +# ifdef WIN32 +# define ZEXPORTVA WINAPIV +# else +# define ZEXPORTVA FAR CDECL +# endif +# endif +#endif + +#if defined (__BEOS__) +# ifdef ZLIB_DLL +# ifdef ZLIB_INTERNAL +# define ZEXPORT __declspec(dllexport) +# define ZEXPORTVA __declspec(dllexport) +# else +# define ZEXPORT __declspec(dllimport) +# define ZEXPORTVA __declspec(dllimport) +# endif +# endif +#endif + +#ifndef ZEXTERN +# define ZEXTERN extern +#endif +#ifndef ZEXPORT +# define ZEXPORT +#endif +#ifndef ZEXPORTVA +# define ZEXPORTVA +#endif + +#ifndef FAR +# define FAR +#endif + +#if !defined(__MACTYPES__) +typedef unsigned char Byte; /* 8 bits */ +#endif +typedef unsigned int uInt; /* 16 bits or more */ +typedef unsigned long uLong; /* 32 bits or more */ + +#ifdef SMALL_MEDIUM + /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */ +# define Bytef Byte FAR +#else + typedef Byte FAR Bytef; +#endif +typedef char FAR charf; +typedef int FAR intf; +typedef uInt FAR uIntf; +typedef uLong FAR uLongf; + +#ifdef STDC + typedef void const *voidpc; + typedef void FAR *voidpf; + typedef void *voidp; +#else + typedef Byte const *voidpc; + typedef Byte FAR *voidpf; + typedef Byte *voidp; +#endif + +#if !defined(Z_U4) && !defined(Z_SOLO) && defined(STDC) +# include +# if (UINT_MAX == 0xffffffffUL) +# define Z_U4 unsigned +# elif (ULONG_MAX == 0xffffffffUL) +# define Z_U4 unsigned long +# elif (USHRT_MAX == 0xffffffffUL) +# define Z_U4 unsigned short +# endif +#endif + +#ifdef Z_U4 + typedef Z_U4 z_crc_t; +#else + typedef unsigned long z_crc_t; +#endif + +#if 1 /* was set to #if 1 by ./configure */ +# define Z_HAVE_UNISTD_H +#endif + +#if 1 /* was set to #if 1 by ./configure */ +# define Z_HAVE_STDARG_H +#endif + +#ifdef STDC +# ifndef Z_SOLO +# include /* for off_t */ +# endif +#endif + +#if defined(STDC) || defined(Z_HAVE_STDARG_H) +# ifndef Z_SOLO +# include /* for va_list */ +# endif +#endif + +#ifdef _WIN32 +# ifndef Z_SOLO +# include /* for wchar_t */ +# endif +#endif + +/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and + * "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even + * though the former does not conform to the LFS document), but considering + * both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as + * equivalently requesting no 64-bit operations + */ +#if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 +# undef _LARGEFILE64_SOURCE +#endif + +#if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) +# define Z_HAVE_UNISTD_H +#endif +#ifndef Z_SOLO +# if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) +# include /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ +# ifdef VMS +# include /* for off_t */ +# endif +# ifndef z_off_t +# define z_off_t off_t +# endif +# endif +#endif + +#if defined(_LFS64_LARGEFILE) && _LFS64_LARGEFILE-0 +# define Z_LFS64 +#endif + +#if defined(_LARGEFILE64_SOURCE) && defined(Z_LFS64) +# define Z_LARGE64 +#endif + +#if defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS-0 == 64 && defined(Z_LFS64) +# define Z_WANT64 +#endif + +#if !defined(SEEK_SET) && !defined(Z_SOLO) +# define SEEK_SET 0 /* Seek from beginning of file. */ +# define SEEK_CUR 1 /* Seek from current position. */ +# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ +#endif + +#ifndef z_off_t +# define z_off_t long +#endif + +#if !defined(_WIN32) && defined(Z_LARGE64) +# define z_off64_t off64_t +#else +# if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO) +# define z_off64_t __int64 +# else +# define z_off64_t z_off_t +# endif +#endif + +/* MVS linker does not support external names larger than 8 bytes */ +#if defined(__MVS__) + #pragma map(deflateInit_,"DEIN") + #pragma map(deflateInit2_,"DEIN2") + #pragma map(deflateEnd,"DEEND") + #pragma map(deflateBound,"DEBND") + #pragma map(inflateInit_,"ININ") + #pragma map(inflateInit2_,"ININ2") + #pragma map(inflateEnd,"INEND") + #pragma map(inflateSync,"INSY") + #pragma map(inflateSetDictionary,"INSEDI") + #pragma map(compressBound,"CMBND") + #pragma map(inflate_table,"INTABL") + #pragma map(inflate_fast,"INFA") + #pragma map(inflate_copyright,"INCOPY") +#endif + +#endif /* ZCONF_H */ diff --git a/external/zlib/include/zlib.h b/external/zlib/include/zlib.h new file mode 100755 index 0000000000..3e0c7672ac --- /dev/null +++ b/external/zlib/include/zlib.h @@ -0,0 +1,1768 @@ +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.8, April 28th, 2013 + + Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + + + The data format used by the zlib library is described by RFCs (Request for + Comments) 1950 to 1952 in the files http://tools.ietf.org/html/rfc1950 + (zlib format), rfc1951 (deflate format) and rfc1952 (gzip format). +*/ + +#ifndef ZLIB_H +#define ZLIB_H + +#include "zconf.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define ZLIB_VERSION "1.2.8" +#define ZLIB_VERNUM 0x1280 +#define ZLIB_VER_MAJOR 1 +#define ZLIB_VER_MINOR 2 +#define ZLIB_VER_REVISION 8 +#define ZLIB_VER_SUBREVISION 0 + +/* + The 'zlib' compression library provides in-memory compression and + decompression functions, including integrity checks of the uncompressed data. + This version of the library supports only one compression method (deflation) + but other algorithms will be added later and will have the same stream + interface. + + Compression can be done in a single step if the buffers are large enough, + or can be done by repeated calls of the compression function. In the latter + case, the application must provide more input and/or consume the output + (providing more output space) before each call. + + The compressed data format used by default by the in-memory functions is + the zlib format, which is a zlib wrapper documented in RFC 1950, wrapped + around a deflate stream, which is itself documented in RFC 1951. + + The library also supports reading and writing files in gzip (.gz) format + with an interface similar to that of stdio using the functions that start + with "gz". The gzip format is different from the zlib format. gzip is a + gzip wrapper, documented in RFC 1952, wrapped around a deflate stream. + + This library can optionally read and write gzip streams in memory as well. + + The zlib format was designed to be compact and fast for use in memory + and on communications channels. The gzip format was designed for single- + file compression on file systems, has a larger header than zlib to maintain + directory information, and uses a different, slower check method than zlib. + + The library does not install any signal handler. The decoder checks + the consistency of the compressed data, so the library should never crash + even in case of corrupted input. +*/ + +typedef voidpf (*alloc_func) OF((voidpf opaque, uInt items, uInt size)); +typedef void (*free_func) OF((voidpf opaque, voidpf address)); + +struct internal_state; + +typedef struct z_stream_s { + z_const Bytef *next_in; /* next input byte */ + uInt avail_in; /* number of bytes available at next_in */ + uLong total_in; /* total number of input bytes read so far */ + + Bytef *next_out; /* next output byte should be put there */ + uInt avail_out; /* remaining free space at next_out */ + uLong total_out; /* total number of bytes output so far */ + + z_const char *msg; /* last error message, NULL if no error */ + struct internal_state FAR *state; /* not visible by applications */ + + alloc_func zalloc; /* used to allocate the internal state */ + free_func zfree; /* used to free the internal state */ + voidpf opaque; /* private data object passed to zalloc and zfree */ + + int data_type; /* best guess about the data type: binary or text */ + uLong adler; /* adler32 value of the uncompressed data */ + uLong reserved; /* reserved for future use */ +} z_stream; + +typedef z_stream FAR *z_streamp; + +/* + gzip header information passed to and from zlib routines. See RFC 1952 + for more details on the meanings of these fields. +*/ +typedef struct gz_header_s { + int text; /* true if compressed data believed to be text */ + uLong time; /* modification time */ + int xflags; /* extra flags (not used when writing a gzip file) */ + int os; /* operating system */ + Bytef *extra; /* pointer to extra field or Z_NULL if none */ + uInt extra_len; /* extra field length (valid if extra != Z_NULL) */ + uInt extra_max; /* space at extra (only when reading header) */ + Bytef *name; /* pointer to zero-terminated file name or Z_NULL */ + uInt name_max; /* space at name (only when reading header) */ + Bytef *comment; /* pointer to zero-terminated comment or Z_NULL */ + uInt comm_max; /* space at comment (only when reading header) */ + int hcrc; /* true if there was or will be a header crc */ + int done; /* true when done reading gzip header (not used + when writing a gzip file) */ +} gz_header; + +typedef gz_header FAR *gz_headerp; + +/* + The application must update next_in and avail_in when avail_in has dropped + to zero. It must update next_out and avail_out when avail_out has dropped + to zero. The application must initialize zalloc, zfree and opaque before + calling the init function. All other fields are set by the compression + library and must not be updated by the application. + + The opaque value provided by the application will be passed as the first + parameter for calls of zalloc and zfree. This can be useful for custom + memory management. The compression library attaches no meaning to the + opaque value. + + zalloc must return Z_NULL if there is not enough memory for the object. + If zlib is used in a multi-threaded application, zalloc and zfree must be + thread safe. + + On 16-bit systems, the functions zalloc and zfree must be able to allocate + exactly 65536 bytes, but will not be required to allocate more than this if + the symbol MAXSEG_64K is defined (see zconf.h). WARNING: On MSDOS, pointers + returned by zalloc for objects of exactly 65536 bytes *must* have their + offset normalized to zero. The default allocation function provided by this + library ensures this (see zutil.c). To reduce memory requirements and avoid + any allocation of 64K objects, at the expense of compression ratio, compile + the library with -DMAX_WBITS=14 (see zconf.h). + + The fields total_in and total_out can be used for statistics or progress + reports. After compression, total_in holds the total size of the + uncompressed data and may be saved for use in the decompressor (particularly + if the decompressor wants to decompress everything in a single step). +*/ + + /* constants */ + +#define Z_NO_FLUSH 0 +#define Z_PARTIAL_FLUSH 1 +#define Z_SYNC_FLUSH 2 +#define Z_FULL_FLUSH 3 +#define Z_FINISH 4 +#define Z_BLOCK 5 +#define Z_TREES 6 +/* Allowed flush values; see deflate() and inflate() below for details */ + +#define Z_OK 0 +#define Z_STREAM_END 1 +#define Z_NEED_DICT 2 +#define Z_ERRNO (-1) +#define Z_STREAM_ERROR (-2) +#define Z_DATA_ERROR (-3) +#define Z_MEM_ERROR (-4) +#define Z_BUF_ERROR (-5) +#define Z_VERSION_ERROR (-6) +/* Return codes for the compression/decompression functions. Negative values + * are errors, positive values are used for special but normal events. + */ + +#define Z_NO_COMPRESSION 0 +#define Z_BEST_SPEED 1 +#define Z_BEST_COMPRESSION 9 +#define Z_DEFAULT_COMPRESSION (-1) +/* compression levels */ + +#define Z_FILTERED 1 +#define Z_HUFFMAN_ONLY 2 +#define Z_RLE 3 +#define Z_FIXED 4 +#define Z_DEFAULT_STRATEGY 0 +/* compression strategy; see deflateInit2() below for details */ + +#define Z_BINARY 0 +#define Z_TEXT 1 +#define Z_ASCII Z_TEXT /* for compatibility with 1.2.2 and earlier */ +#define Z_UNKNOWN 2 +/* Possible values of the data_type field (though see inflate()) */ + +#define Z_DEFLATED 8 +/* The deflate compression method (the only one supported in this version) */ + +#define Z_NULL 0 /* for initializing zalloc, zfree, opaque */ + +#define zlib_version zlibVersion() +/* for compatibility with versions < 1.0.2 */ + + + /* basic functions */ + +ZEXTERN const char * ZEXPORT zlibVersion OF((void)); +/* The application can compare zlibVersion and ZLIB_VERSION for consistency. + If the first character differs, the library code actually used is not + compatible with the zlib.h header file used by the application. This check + is automatically made by deflateInit and inflateInit. + */ + +/* +ZEXTERN int ZEXPORT deflateInit OF((z_streamp strm, int level)); + + Initializes the internal stream state for compression. The fields + zalloc, zfree and opaque must be initialized before by the caller. If + zalloc and zfree are set to Z_NULL, deflateInit updates them to use default + allocation functions. + + The compression level must be Z_DEFAULT_COMPRESSION, or between 0 and 9: + 1 gives best speed, 9 gives best compression, 0 gives no compression at all + (the input data is simply copied a block at a time). Z_DEFAULT_COMPRESSION + requests a default compromise between speed and compression (currently + equivalent to level 6). + + deflateInit returns Z_OK if success, Z_MEM_ERROR if there was not enough + memory, Z_STREAM_ERROR if level is not a valid compression level, or + Z_VERSION_ERROR if the zlib library version (zlib_version) is incompatible + with the version assumed by the caller (ZLIB_VERSION). msg is set to null + if there is no error message. deflateInit does not perform any compression: + this will be done by deflate(). +*/ + + +ZEXTERN int ZEXPORT deflate OF((z_streamp strm, int flush)); +/* + deflate compresses as much data as possible, and stops when the input + buffer becomes empty or the output buffer becomes full. It may introduce + some output latency (reading input without producing any output) except when + forced to flush. + + The detailed semantics are as follows. deflate performs one or both of the + following actions: + + - Compress more input starting at next_in and update next_in and avail_in + accordingly. If not all input can be processed (because there is not + enough room in the output buffer), next_in and avail_in are updated and + processing will resume at this point for the next call of deflate(). + + - Provide more output starting at next_out and update next_out and avail_out + accordingly. This action is forced if the parameter flush is non zero. + Forcing flush frequently degrades the compression ratio, so this parameter + should be set only when necessary (in interactive applications). Some + output may be provided even if flush is not set. + + Before the call of deflate(), the application should ensure that at least + one of the actions is possible, by providing more input and/or consuming more + output, and updating avail_in or avail_out accordingly; avail_out should + never be zero before the call. The application can consume the compressed + output when it wants, for example when the output buffer is full (avail_out + == 0), or after each call of deflate(). If deflate returns Z_OK and with + zero avail_out, it must be called again after making room in the output + buffer because there might be more output pending. + + Normally the parameter flush is set to Z_NO_FLUSH, which allows deflate to + decide how much data to accumulate before producing output, in order to + maximize compression. + + If the parameter flush is set to Z_SYNC_FLUSH, all pending output is + flushed to the output buffer and the output is aligned on a byte boundary, so + that the decompressor can get all input data available so far. (In + particular avail_in is zero after the call if enough output space has been + provided before the call.) Flushing may degrade compression for some + compression algorithms and so it should be used only when necessary. This + completes the current deflate block and follows it with an empty stored block + that is three bits plus filler bits to the next byte, followed by four bytes + (00 00 ff ff). + + If flush is set to Z_PARTIAL_FLUSH, all pending output is flushed to the + output buffer, but the output is not aligned to a byte boundary. All of the + input data so far will be available to the decompressor, as for Z_SYNC_FLUSH. + This completes the current deflate block and follows it with an empty fixed + codes block that is 10 bits long. This assures that enough bytes are output + in order for the decompressor to finish the block before the empty fixed code + block. + + If flush is set to Z_BLOCK, a deflate block is completed and emitted, as + for Z_SYNC_FLUSH, but the output is not aligned on a byte boundary, and up to + seven bits of the current block are held to be written as the next byte after + the next deflate block is completed. In this case, the decompressor may not + be provided enough bits at this point in order to complete decompression of + the data provided so far to the compressor. It may need to wait for the next + block to be emitted. This is for advanced applications that need to control + the emission of deflate blocks. + + If flush is set to Z_FULL_FLUSH, all output is flushed as with + Z_SYNC_FLUSH, and the compression state is reset so that decompression can + restart from this point if previous compressed data has been damaged or if + random access is desired. Using Z_FULL_FLUSH too often can seriously degrade + compression. + + If deflate returns with avail_out == 0, this function must be called again + with the same value of the flush parameter and more output space (updated + avail_out), until the flush is complete (deflate returns with non-zero + avail_out). In the case of a Z_FULL_FLUSH or Z_SYNC_FLUSH, make sure that + avail_out is greater than six to avoid repeated flush markers due to + avail_out == 0 on return. + + If the parameter flush is set to Z_FINISH, pending input is processed, + pending output is flushed and deflate returns with Z_STREAM_END if there was + enough output space; if deflate returns with Z_OK, this function must be + called again with Z_FINISH and more output space (updated avail_out) but no + more input data, until it returns with Z_STREAM_END or an error. After + deflate has returned Z_STREAM_END, the only possible operations on the stream + are deflateReset or deflateEnd. + + Z_FINISH can be used immediately after deflateInit if all the compression + is to be done in a single step. In this case, avail_out must be at least the + value returned by deflateBound (see below). Then deflate is guaranteed to + return Z_STREAM_END. If not enough output space is provided, deflate will + not return Z_STREAM_END, and it must be called again as described above. + + deflate() sets strm->adler to the adler32 checksum of all input read + so far (that is, total_in bytes). + + deflate() may update strm->data_type if it can make a good guess about + the input data type (Z_BINARY or Z_TEXT). In doubt, the data is considered + binary. This field is only for information purposes and does not affect the + compression algorithm in any manner. + + deflate() returns Z_OK if some progress has been made (more input + processed or more output produced), Z_STREAM_END if all input has been + consumed and all output has been produced (only when flush is set to + Z_FINISH), Z_STREAM_ERROR if the stream state was inconsistent (for example + if next_in or next_out was Z_NULL), Z_BUF_ERROR if no progress is possible + (for example avail_in or avail_out was zero). Note that Z_BUF_ERROR is not + fatal, and deflate() can be called again with more input and more output + space to continue compressing. +*/ + + +ZEXTERN int ZEXPORT deflateEnd OF((z_streamp strm)); +/* + All dynamically allocated data structures for this stream are freed. + This function discards any unprocessed input and does not flush any pending + output. + + deflateEnd returns Z_OK if success, Z_STREAM_ERROR if the + stream state was inconsistent, Z_DATA_ERROR if the stream was freed + prematurely (some input or output was discarded). In the error case, msg + may be set but then points to a static string (which must not be + deallocated). +*/ + + +/* +ZEXTERN int ZEXPORT inflateInit OF((z_streamp strm)); + + Initializes the internal stream state for decompression. The fields + next_in, avail_in, zalloc, zfree and opaque must be initialized before by + the caller. If next_in is not Z_NULL and avail_in is large enough (the + exact value depends on the compression method), inflateInit determines the + compression method from the zlib header and allocates all data structures + accordingly; otherwise the allocation will be deferred to the first call of + inflate. If zalloc and zfree are set to Z_NULL, inflateInit updates them to + use default allocation functions. + + inflateInit returns Z_OK if success, Z_MEM_ERROR if there was not enough + memory, Z_VERSION_ERROR if the zlib library version is incompatible with the + version assumed by the caller, or Z_STREAM_ERROR if the parameters are + invalid, such as a null pointer to the structure. msg is set to null if + there is no error message. inflateInit does not perform any decompression + apart from possibly reading the zlib header if present: actual decompression + will be done by inflate(). (So next_in and avail_in may be modified, but + next_out and avail_out are unused and unchanged.) The current implementation + of inflateInit() does not process any header information -- that is deferred + until inflate() is called. +*/ + + +ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush)); +/* + inflate decompresses as much data as possible, and stops when the input + buffer becomes empty or the output buffer becomes full. It may introduce + some output latency (reading input without producing any output) except when + forced to flush. + + The detailed semantics are as follows. inflate performs one or both of the + following actions: + + - Decompress more input starting at next_in and update next_in and avail_in + accordingly. If not all input can be processed (because there is not + enough room in the output buffer), next_in is updated and processing will + resume at this point for the next call of inflate(). + + - Provide more output starting at next_out and update next_out and avail_out + accordingly. inflate() provides as much output as possible, until there is + no more input data or no more space in the output buffer (see below about + the flush parameter). + + Before the call of inflate(), the application should ensure that at least + one of the actions is possible, by providing more input and/or consuming more + output, and updating the next_* and avail_* values accordingly. The + application can consume the uncompressed output when it wants, for example + when the output buffer is full (avail_out == 0), or after each call of + inflate(). If inflate returns Z_OK and with zero avail_out, it must be + called again after making room in the output buffer because there might be + more output pending. + + The flush parameter of inflate() can be Z_NO_FLUSH, Z_SYNC_FLUSH, Z_FINISH, + Z_BLOCK, or Z_TREES. Z_SYNC_FLUSH requests that inflate() flush as much + output as possible to the output buffer. Z_BLOCK requests that inflate() + stop if and when it gets to the next deflate block boundary. When decoding + the zlib or gzip format, this will cause inflate() to return immediately + after the header and before the first block. When doing a raw inflate, + inflate() will go ahead and process the first block, and will return when it + gets to the end of that block, or when it runs out of data. + + The Z_BLOCK option assists in appending to or combining deflate streams. + Also to assist in this, on return inflate() will set strm->data_type to the + number of unused bits in the last byte taken from strm->next_in, plus 64 if + inflate() is currently decoding the last block in the deflate stream, plus + 128 if inflate() returned immediately after decoding an end-of-block code or + decoding the complete header up to just before the first byte of the deflate + stream. The end-of-block will not be indicated until all of the uncompressed + data from that block has been written to strm->next_out. The number of + unused bits may in general be greater than seven, except when bit 7 of + data_type is set, in which case the number of unused bits will be less than + eight. data_type is set as noted here every time inflate() returns for all + flush options, and so can be used to determine the amount of currently + consumed input in bits. + + The Z_TREES option behaves as Z_BLOCK does, but it also returns when the + end of each deflate block header is reached, before any actual data in that + block is decoded. This allows the caller to determine the length of the + deflate block header for later use in random access within a deflate block. + 256 is added to the value of strm->data_type when inflate() returns + immediately after reaching the end of the deflate block header. + + inflate() should normally be called until it returns Z_STREAM_END or an + error. However if all decompression is to be performed in a single step (a + single call of inflate), the parameter flush should be set to Z_FINISH. In + this case all pending input is processed and all pending output is flushed; + avail_out must be large enough to hold all of the uncompressed data for the + operation to complete. (The size of the uncompressed data may have been + saved by the compressor for this purpose.) The use of Z_FINISH is not + required to perform an inflation in one step. However it may be used to + inform inflate that a faster approach can be used for the single inflate() + call. Z_FINISH also informs inflate to not maintain a sliding window if the + stream completes, which reduces inflate's memory footprint. If the stream + does not complete, either because not all of the stream is provided or not + enough output space is provided, then a sliding window will be allocated and + inflate() can be called again to continue the operation as if Z_NO_FLUSH had + been used. + + In this implementation, inflate() always flushes as much output as + possible to the output buffer, and always uses the faster approach on the + first call. So the effects of the flush parameter in this implementation are + on the return value of inflate() as noted below, when inflate() returns early + when Z_BLOCK or Z_TREES is used, and when inflate() avoids the allocation of + memory for a sliding window when Z_FINISH is used. + + If a preset dictionary is needed after this call (see inflateSetDictionary + below), inflate sets strm->adler to the Adler-32 checksum of the dictionary + chosen by the compressor and returns Z_NEED_DICT; otherwise it sets + strm->adler to the Adler-32 checksum of all output produced so far (that is, + total_out bytes) and returns Z_OK, Z_STREAM_END or an error code as described + below. At the end of the stream, inflate() checks that its computed adler32 + checksum is equal to that saved by the compressor and returns Z_STREAM_END + only if the checksum is correct. + + inflate() can decompress and check either zlib-wrapped or gzip-wrapped + deflate data. The header type is detected automatically, if requested when + initializing with inflateInit2(). Any information contained in the gzip + header is not retained, so applications that need that information should + instead use raw inflate, see inflateInit2() below, or inflateBack() and + perform their own processing of the gzip header and trailer. When processing + gzip-wrapped deflate data, strm->adler32 is set to the CRC-32 of the output + producted so far. The CRC-32 is checked against the gzip trailer. + + inflate() returns Z_OK if some progress has been made (more input processed + or more output produced), Z_STREAM_END if the end of the compressed data has + been reached and all uncompressed output has been produced, Z_NEED_DICT if a + preset dictionary is needed at this point, Z_DATA_ERROR if the input data was + corrupted (input stream not conforming to the zlib format or incorrect check + value), Z_STREAM_ERROR if the stream structure was inconsistent (for example + next_in or next_out was Z_NULL), Z_MEM_ERROR if there was not enough memory, + Z_BUF_ERROR if no progress is possible or if there was not enough room in the + output buffer when Z_FINISH is used. Note that Z_BUF_ERROR is not fatal, and + inflate() can be called again with more input and more output space to + continue decompressing. If Z_DATA_ERROR is returned, the application may + then call inflateSync() to look for a good compression block if a partial + recovery of the data is desired. +*/ + + +ZEXTERN int ZEXPORT inflateEnd OF((z_streamp strm)); +/* + All dynamically allocated data structures for this stream are freed. + This function discards any unprocessed input and does not flush any pending + output. + + inflateEnd returns Z_OK if success, Z_STREAM_ERROR if the stream state + was inconsistent. In the error case, msg may be set but then points to a + static string (which must not be deallocated). +*/ + + + /* Advanced functions */ + +/* + The following functions are needed only in some special applications. +*/ + +/* +ZEXTERN int ZEXPORT deflateInit2 OF((z_streamp strm, + int level, + int method, + int windowBits, + int memLevel, + int strategy)); + + This is another version of deflateInit with more compression options. The + fields next_in, zalloc, zfree and opaque must be initialized before by the + caller. + + The method parameter is the compression method. It must be Z_DEFLATED in + this version of the library. + + The windowBits parameter is the base two logarithm of the window size + (the size of the history buffer). It should be in the range 8..15 for this + version of the library. Larger values of this parameter result in better + compression at the expense of memory usage. The default value is 15 if + deflateInit is used instead. + + windowBits can also be -8..-15 for raw deflate. In this case, -windowBits + determines the window size. deflate() will then generate raw deflate data + with no zlib header or trailer, and will not compute an adler32 check value. + + windowBits can also be greater than 15 for optional gzip encoding. Add + 16 to windowBits to write a simple gzip header and trailer around the + compressed data instead of a zlib wrapper. The gzip header will have no + file name, no extra data, no comment, no modification time (set to zero), no + header crc, and the operating system will be set to 255 (unknown). If a + gzip stream is being written, strm->adler is a crc32 instead of an adler32. + + The memLevel parameter specifies how much memory should be allocated + for the internal compression state. memLevel=1 uses minimum memory but is + slow and reduces compression ratio; memLevel=9 uses maximum memory for + optimal speed. The default value is 8. See zconf.h for total memory usage + as a function of windowBits and memLevel. + + The strategy parameter is used to tune the compression algorithm. Use the + value Z_DEFAULT_STRATEGY for normal data, Z_FILTERED for data produced by a + filter (or predictor), Z_HUFFMAN_ONLY to force Huffman encoding only (no + string match), or Z_RLE to limit match distances to one (run-length + encoding). Filtered data consists mostly of small values with a somewhat + random distribution. In this case, the compression algorithm is tuned to + compress them better. The effect of Z_FILTERED is to force more Huffman + coding and less string matching; it is somewhat intermediate between + Z_DEFAULT_STRATEGY and Z_HUFFMAN_ONLY. Z_RLE is designed to be almost as + fast as Z_HUFFMAN_ONLY, but give better compression for PNG image data. The + strategy parameter only affects the compression ratio but not the + correctness of the compressed output even if it is not set appropriately. + Z_FIXED prevents the use of dynamic Huffman codes, allowing for a simpler + decoder for special applications. + + deflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough + memory, Z_STREAM_ERROR if any parameter is invalid (such as an invalid + method), or Z_VERSION_ERROR if the zlib library version (zlib_version) is + incompatible with the version assumed by the caller (ZLIB_VERSION). msg is + set to null if there is no error message. deflateInit2 does not perform any + compression: this will be done by deflate(). +*/ + +ZEXTERN int ZEXPORT deflateSetDictionary OF((z_streamp strm, + const Bytef *dictionary, + uInt dictLength)); +/* + Initializes the compression dictionary from the given byte sequence + without producing any compressed output. When using the zlib format, this + function must be called immediately after deflateInit, deflateInit2 or + deflateReset, and before any call of deflate. When doing raw deflate, this + function must be called either before any call of deflate, or immediately + after the completion of a deflate block, i.e. after all input has been + consumed and all output has been delivered when using any of the flush + options Z_BLOCK, Z_PARTIAL_FLUSH, Z_SYNC_FLUSH, or Z_FULL_FLUSH. The + compressor and decompressor must use exactly the same dictionary (see + inflateSetDictionary). + + The dictionary should consist of strings (byte sequences) that are likely + to be encountered later in the data to be compressed, with the most commonly + used strings preferably put towards the end of the dictionary. Using a + dictionary is most useful when the data to be compressed is short and can be + predicted with good accuracy; the data can then be compressed better than + with the default empty dictionary. + + Depending on the size of the compression data structures selected by + deflateInit or deflateInit2, a part of the dictionary may in effect be + discarded, for example if the dictionary is larger than the window size + provided in deflateInit or deflateInit2. Thus the strings most likely to be + useful should be put at the end of the dictionary, not at the front. In + addition, the current implementation of deflate will use at most the window + size minus 262 bytes of the provided dictionary. + + Upon return of this function, strm->adler is set to the adler32 value + of the dictionary; the decompressor may later use this value to determine + which dictionary has been used by the compressor. (The adler32 value + applies to the whole dictionary even if only a subset of the dictionary is + actually used by the compressor.) If a raw deflate was requested, then the + adler32 value is not computed and strm->adler is not set. + + deflateSetDictionary returns Z_OK if success, or Z_STREAM_ERROR if a + parameter is invalid (e.g. dictionary being Z_NULL) or the stream state is + inconsistent (for example if deflate has already been called for this stream + or if not at a block boundary for raw deflate). deflateSetDictionary does + not perform any compression: this will be done by deflate(). +*/ + +ZEXTERN int ZEXPORT deflateCopy OF((z_streamp dest, + z_streamp source)); +/* + Sets the destination stream as a complete copy of the source stream. + + This function can be useful when several compression strategies will be + tried, for example when there are several ways of pre-processing the input + data with a filter. The streams that will be discarded should then be freed + by calling deflateEnd. Note that deflateCopy duplicates the internal + compression state which can be quite large, so this strategy is slow and can + consume lots of memory. + + deflateCopy returns Z_OK if success, Z_MEM_ERROR if there was not + enough memory, Z_STREAM_ERROR if the source stream state was inconsistent + (such as zalloc being Z_NULL). msg is left unchanged in both source and + destination. +*/ + +ZEXTERN int ZEXPORT deflateReset OF((z_streamp strm)); +/* + This function is equivalent to deflateEnd followed by deflateInit, + but does not free and reallocate all the internal compression state. The + stream will keep the same compression level and any other attributes that + may have been set by deflateInit2. + + deflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source + stream state was inconsistent (such as zalloc or state being Z_NULL). +*/ + +ZEXTERN int ZEXPORT deflateParams OF((z_streamp strm, + int level, + int strategy)); +/* + Dynamically update the compression level and compression strategy. The + interpretation of level and strategy is as in deflateInit2. This can be + used to switch between compression and straight copy of the input data, or + to switch to a different kind of input data requiring a different strategy. + If the compression level is changed, the input available so far is + compressed with the old level (and may be flushed); the new level will take + effect only at the next call of deflate(). + + Before the call of deflateParams, the stream state must be set as for + a call of deflate(), since the currently available input may have to be + compressed and flushed. In particular, strm->avail_out must be non-zero. + + deflateParams returns Z_OK if success, Z_STREAM_ERROR if the source + stream state was inconsistent or if a parameter was invalid, Z_BUF_ERROR if + strm->avail_out was zero. +*/ + +ZEXTERN int ZEXPORT deflateTune OF((z_streamp strm, + int good_length, + int max_lazy, + int nice_length, + int max_chain)); +/* + Fine tune deflate's internal compression parameters. This should only be + used by someone who understands the algorithm used by zlib's deflate for + searching for the best matching string, and even then only by the most + fanatic optimizer trying to squeeze out the last compressed bit for their + specific input data. Read the deflate.c source code for the meaning of the + max_lazy, good_length, nice_length, and max_chain parameters. + + deflateTune() can be called after deflateInit() or deflateInit2(), and + returns Z_OK on success, or Z_STREAM_ERROR for an invalid deflate stream. + */ + +ZEXTERN uLong ZEXPORT deflateBound OF((z_streamp strm, + uLong sourceLen)); +/* + deflateBound() returns an upper bound on the compressed size after + deflation of sourceLen bytes. It must be called after deflateInit() or + deflateInit2(), and after deflateSetHeader(), if used. This would be used + to allocate an output buffer for deflation in a single pass, and so would be + called before deflate(). If that first deflate() call is provided the + sourceLen input bytes, an output buffer allocated to the size returned by + deflateBound(), and the flush value Z_FINISH, then deflate() is guaranteed + to return Z_STREAM_END. Note that it is possible for the compressed size to + be larger than the value returned by deflateBound() if flush options other + than Z_FINISH or Z_NO_FLUSH are used. +*/ + +ZEXTERN int ZEXPORT deflatePending OF((z_streamp strm, + unsigned *pending, + int *bits)); +/* + deflatePending() returns the number of bytes and bits of output that have + been generated, but not yet provided in the available output. The bytes not + provided would be due to the available output space having being consumed. + The number of bits of output not provided are between 0 and 7, where they + await more bits to join them in order to fill out a full byte. If pending + or bits are Z_NULL, then those values are not set. + + deflatePending returns Z_OK if success, or Z_STREAM_ERROR if the source + stream state was inconsistent. + */ + +ZEXTERN int ZEXPORT deflatePrime OF((z_streamp strm, + int bits, + int value)); +/* + deflatePrime() inserts bits in the deflate output stream. The intent + is that this function is used to start off the deflate output with the bits + leftover from a previous deflate stream when appending to it. As such, this + function can only be used for raw deflate, and must be used before the first + deflate() call after a deflateInit2() or deflateReset(). bits must be less + than or equal to 16, and that many of the least significant bits of value + will be inserted in the output. + + deflatePrime returns Z_OK if success, Z_BUF_ERROR if there was not enough + room in the internal buffer to insert the bits, or Z_STREAM_ERROR if the + source stream state was inconsistent. +*/ + +ZEXTERN int ZEXPORT deflateSetHeader OF((z_streamp strm, + gz_headerp head)); +/* + deflateSetHeader() provides gzip header information for when a gzip + stream is requested by deflateInit2(). deflateSetHeader() may be called + after deflateInit2() or deflateReset() and before the first call of + deflate(). The text, time, os, extra field, name, and comment information + in the provided gz_header structure are written to the gzip header (xflag is + ignored -- the extra flags are set according to the compression level). The + caller must assure that, if not Z_NULL, name and comment are terminated with + a zero byte, and that if extra is not Z_NULL, that extra_len bytes are + available there. If hcrc is true, a gzip header crc is included. Note that + the current versions of the command-line version of gzip (up through version + 1.3.x) do not support header crc's, and will report that it is a "multi-part + gzip file" and give up. + + If deflateSetHeader is not used, the default gzip header has text false, + the time set to zero, and os set to 255, with no extra, name, or comment + fields. The gzip header is returned to the default state by deflateReset(). + + deflateSetHeader returns Z_OK if success, or Z_STREAM_ERROR if the source + stream state was inconsistent. +*/ + +/* +ZEXTERN int ZEXPORT inflateInit2 OF((z_streamp strm, + int windowBits)); + + This is another version of inflateInit with an extra parameter. The + fields next_in, avail_in, zalloc, zfree and opaque must be initialized + before by the caller. + + The windowBits parameter is the base two logarithm of the maximum window + size (the size of the history buffer). It should be in the range 8..15 for + this version of the library. The default value is 15 if inflateInit is used + instead. windowBits must be greater than or equal to the windowBits value + provided to deflateInit2() while compressing, or it must be equal to 15 if + deflateInit2() was not used. If a compressed stream with a larger window + size is given as input, inflate() will return with the error code + Z_DATA_ERROR instead of trying to allocate a larger window. + + windowBits can also be zero to request that inflate use the window size in + the zlib header of the compressed stream. + + windowBits can also be -8..-15 for raw inflate. In this case, -windowBits + determines the window size. inflate() will then process raw deflate data, + not looking for a zlib or gzip header, not generating a check value, and not + looking for any check values for comparison at the end of the stream. This + is for use with other formats that use the deflate compressed data format + such as zip. Those formats provide their own check values. If a custom + format is developed using the raw deflate format for compressed data, it is + recommended that a check value such as an adler32 or a crc32 be applied to + the uncompressed data as is done in the zlib, gzip, and zip formats. For + most applications, the zlib format should be used as is. Note that comments + above on the use in deflateInit2() applies to the magnitude of windowBits. + + windowBits can also be greater than 15 for optional gzip decoding. Add + 32 to windowBits to enable zlib and gzip decoding with automatic header + detection, or add 16 to decode only the gzip format (the zlib format will + return a Z_DATA_ERROR). If a gzip stream is being decoded, strm->adler is a + crc32 instead of an adler32. + + inflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough + memory, Z_VERSION_ERROR if the zlib library version is incompatible with the + version assumed by the caller, or Z_STREAM_ERROR if the parameters are + invalid, such as a null pointer to the structure. msg is set to null if + there is no error message. inflateInit2 does not perform any decompression + apart from possibly reading the zlib header if present: actual decompression + will be done by inflate(). (So next_in and avail_in may be modified, but + next_out and avail_out are unused and unchanged.) The current implementation + of inflateInit2() does not process any header information -- that is + deferred until inflate() is called. +*/ + +ZEXTERN int ZEXPORT inflateSetDictionary OF((z_streamp strm, + const Bytef *dictionary, + uInt dictLength)); +/* + Initializes the decompression dictionary from the given uncompressed byte + sequence. This function must be called immediately after a call of inflate, + if that call returned Z_NEED_DICT. The dictionary chosen by the compressor + can be determined from the adler32 value returned by that call of inflate. + The compressor and decompressor must use exactly the same dictionary (see + deflateSetDictionary). For raw inflate, this function can be called at any + time to set the dictionary. If the provided dictionary is smaller than the + window and there is already data in the window, then the provided dictionary + will amend what's there. The application must insure that the dictionary + that was used for compression is provided. + + inflateSetDictionary returns Z_OK if success, Z_STREAM_ERROR if a + parameter is invalid (e.g. dictionary being Z_NULL) or the stream state is + inconsistent, Z_DATA_ERROR if the given dictionary doesn't match the + expected one (incorrect adler32 value). inflateSetDictionary does not + perform any decompression: this will be done by subsequent calls of + inflate(). +*/ + +ZEXTERN int ZEXPORT inflateGetDictionary OF((z_streamp strm, + Bytef *dictionary, + uInt *dictLength)); +/* + Returns the sliding dictionary being maintained by inflate. dictLength is + set to the number of bytes in the dictionary, and that many bytes are copied + to dictionary. dictionary must have enough space, where 32768 bytes is + always enough. If inflateGetDictionary() is called with dictionary equal to + Z_NULL, then only the dictionary length is returned, and nothing is copied. + Similary, if dictLength is Z_NULL, then it is not set. + + inflateGetDictionary returns Z_OK on success, or Z_STREAM_ERROR if the + stream state is inconsistent. +*/ + +ZEXTERN int ZEXPORT inflateSync OF((z_streamp strm)); +/* + Skips invalid compressed data until a possible full flush point (see above + for the description of deflate with Z_FULL_FLUSH) can be found, or until all + available input is skipped. No output is provided. + + 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. + + inflateSync returns Z_OK if a possible full flush point has been found, + Z_BUF_ERROR if no more input was provided, Z_DATA_ERROR if no flush point + has been found, or Z_STREAM_ERROR if the stream structure was inconsistent. + In the success case, the application may save the current current value of + total_in which indicates where valid compressed data was found. In the + error case, the application may repeatedly call inflateSync, providing more + input each time, until success or end of the input data. +*/ + +ZEXTERN int ZEXPORT inflateCopy OF((z_streamp dest, + z_streamp source)); +/* + Sets the destination stream as a complete copy of the source stream. + + This function can be useful when randomly accessing a large stream. The + first pass through the stream can periodically record the inflate state, + allowing restarting inflate at those points when randomly accessing the + stream. + + inflateCopy returns Z_OK if success, Z_MEM_ERROR if there was not + enough memory, Z_STREAM_ERROR if the source stream state was inconsistent + (such as zalloc being Z_NULL). msg is left unchanged in both source and + destination. +*/ + +ZEXTERN int ZEXPORT inflateReset OF((z_streamp strm)); +/* + This function is equivalent to inflateEnd followed by inflateInit, + but does not free and reallocate all the internal decompression state. The + stream will keep attributes that may have been set by inflateInit2. + + inflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source + stream state was inconsistent (such as zalloc or state being Z_NULL). +*/ + +ZEXTERN int ZEXPORT inflateReset2 OF((z_streamp strm, + int windowBits)); +/* + This function is the same as inflateReset, but it also permits changing + the wrap and window size requests. The windowBits parameter is interpreted + the same as it is for inflateInit2. + + inflateReset2 returns Z_OK if success, or Z_STREAM_ERROR if the source + stream state was inconsistent (such as zalloc or state being Z_NULL), or if + the windowBits parameter is invalid. +*/ + +ZEXTERN int ZEXPORT inflatePrime OF((z_streamp strm, + int bits, + int value)); +/* + This function inserts bits in the inflate input stream. The intent is + that this function is used to start inflating at a bit position in the + middle of a byte. The provided bits will be used before any bytes are used + from next_in. This function should only be used with raw inflate, and + should be used before the first inflate() call after inflateInit2() or + inflateReset(). bits must be less than or equal to 16, and that many of the + least significant bits of value will be inserted in the input. + + If bits is negative, then the input stream bit buffer is emptied. Then + inflatePrime() can be called again to put bits in the buffer. This is used + to clear out bits leftover after feeding inflate a block description prior + to feeding inflate codes. + + inflatePrime returns Z_OK if success, or Z_STREAM_ERROR if the source + stream state was inconsistent. +*/ + +ZEXTERN long ZEXPORT inflateMark OF((z_streamp strm)); +/* + This function returns two values, one in the lower 16 bits of the return + value, and the other in the remaining upper bits, obtained by shifting the + return value down 16 bits. If the upper value is -1 and the lower value is + zero, then inflate() is currently decoding information outside of a block. + If the upper value is -1 and the lower value is non-zero, then inflate is in + the middle of a stored block, with the lower value equaling the number of + bytes from the input remaining to copy. If the upper value is not -1, then + it is the number of bits back from the current bit position in the input of + the code (literal or length/distance pair) currently being processed. In + that case the lower value is the number of bytes already emitted for that + code. + + A code is being processed if inflate is waiting for more input to complete + decoding of the code, or if it has completed decoding but is waiting for + more output space to write the literal or match data. + + inflateMark() is used to mark locations in the input data for random + access, which may be at bit positions, and to note those cases where the + output of a code may span boundaries of random access blocks. The current + location in the input stream can be determined from avail_in and data_type + as noted in the description for the Z_BLOCK flush parameter for inflate. + + inflateMark returns the value noted above or -1 << 16 if the provided + source stream state was inconsistent. +*/ + +ZEXTERN int ZEXPORT inflateGetHeader OF((z_streamp strm, + gz_headerp head)); +/* + inflateGetHeader() requests that gzip header information be stored in the + provided gz_header structure. inflateGetHeader() may be called after + inflateInit2() or inflateReset(), and before the first call of inflate(). + As inflate() processes the gzip stream, head->done is zero until the header + is completed, at which time head->done is set to one. If a zlib stream is + being decoded, then head->done is set to -1 to indicate that there will be + no gzip header information forthcoming. Note that Z_BLOCK or Z_TREES can be + used to force inflate() to return immediately after header processing is + complete and before any actual data is decompressed. + + The text, time, xflags, and os fields are filled in with the gzip header + contents. hcrc is set to true if there is a header CRC. (The header CRC + was valid if done is set to one.) If extra is not Z_NULL, then extra_max + contains the maximum number of bytes to write to extra. Once done is true, + extra_len contains the actual extra field length, and extra contains the + extra field, or that field truncated if extra_max is less than extra_len. + If name is not Z_NULL, then up to name_max characters are written there, + terminated with a zero unless the length is greater than name_max. If + comment is not Z_NULL, then up to comm_max characters are written there, + terminated with a zero unless the length is greater than comm_max. When any + of extra, name, or comment are not Z_NULL and the respective field is not + present in the header, then that field is set to Z_NULL to signal its + absence. This allows the use of deflateSetHeader() with the returned + structure to duplicate the header. However if those fields are set to + allocated memory, then the application will need to save those pointers + elsewhere so that they can be eventually freed. + + If inflateGetHeader is not used, then the header information is simply + discarded. The header is always checked for validity, including the header + CRC if present. inflateReset() will reset the process to discard the header + information. The application would need to call inflateGetHeader() again to + retrieve the header from the next gzip stream. + + inflateGetHeader returns Z_OK if success, or Z_STREAM_ERROR if the source + stream state was inconsistent. +*/ + +/* +ZEXTERN int ZEXPORT inflateBackInit OF((z_streamp strm, int windowBits, + unsigned char FAR *window)); + + Initialize the internal stream state for decompression using inflateBack() + calls. The fields zalloc, zfree and opaque in strm must be initialized + before the call. If zalloc and zfree are Z_NULL, then the default library- + derived memory allocation routines are used. windowBits is the base two + logarithm of the window size, in the range 8..15. window is a caller + supplied buffer of that size. Except for special applications where it is + assured that deflate was used with small window sizes, windowBits must be 15 + and a 32K byte window must be supplied to be able to decompress general + deflate streams. + + See inflateBack() for the usage of these routines. + + inflateBackInit will return Z_OK on success, Z_STREAM_ERROR if any of + the parameters are invalid, Z_MEM_ERROR if the internal state could not be + allocated, or Z_VERSION_ERROR if the version of the library does not match + the version of the header file. +*/ + +typedef unsigned (*in_func) OF((void FAR *, + z_const unsigned char FAR * FAR *)); +typedef int (*out_func) OF((void FAR *, unsigned char FAR *, unsigned)); + +ZEXTERN int ZEXPORT inflateBack OF((z_streamp strm, + in_func in, void FAR *in_desc, + out_func out, void FAR *out_desc)); +/* + inflateBack() does a raw inflate with a single call using a call-back + interface for input and output. This is potentially more efficient than + inflate() for file i/o applications, in that it avoids copying between the + output and the sliding window by simply making the window itself the output + buffer. inflate() can be faster on modern CPUs when used with large + buffers. inflateBack() trusts the application to not change the output + buffer passed by the output function, at least until inflateBack() returns. + + inflateBackInit() must be called first to allocate the internal state + and to initialize the state with the user-provided window buffer. + inflateBack() may then be used multiple times to inflate a complete, raw + deflate stream with each call. inflateBackEnd() is then called to free the + allocated state. + + A raw deflate stream is one with no zlib or gzip header or trailer. + This routine would normally be used in a utility that reads zip or gzip + files and writes out uncompressed files. The utility would decode the + header and process the trailer on its own, hence this routine expects only + the raw deflate stream to decompress. This is different from the normal + behavior of inflate(), which expects either a zlib or gzip header and + trailer around the deflate stream. + + inflateBack() uses two subroutines supplied by the caller that are then + called by inflateBack() for input and output. inflateBack() calls those + routines until it reads a complete deflate stream and writes out all of the + uncompressed data, or until it encounters an error. The function's + parameters and return types are defined above in the in_func and out_func + typedefs. inflateBack() will call in(in_desc, &buf) which should return the + number of bytes of provided input, and a pointer to that input in buf. If + there is no input available, in() must return zero--buf is ignored in that + case--and inflateBack() will return a buffer error. inflateBack() will call + out(out_desc, buf, len) to write the uncompressed data buf[0..len-1]. out() + should return zero on success, or non-zero on failure. If out() returns + non-zero, inflateBack() will return with an error. Neither in() nor out() + are permitted to change the contents of the window provided to + inflateBackInit(), which is also the buffer that out() uses to write from. + The length written by out() will be at most the window size. Any non-zero + amount of input may be provided by in(). + + For convenience, inflateBack() can be provided input on the first call by + setting strm->next_in and strm->avail_in. If that input is exhausted, then + in() will be called. Therefore strm->next_in must be initialized before + calling inflateBack(). If strm->next_in is Z_NULL, then in() will be called + immediately for input. If strm->next_in is not Z_NULL, then strm->avail_in + must also be initialized, and then if strm->avail_in is not zero, input will + initially be taken from strm->next_in[0 .. strm->avail_in - 1]. + + The in_desc and out_desc parameters of inflateBack() is passed as the + first parameter of in() and out() respectively when they are called. These + descriptors can be optionally used to pass any information that the caller- + supplied in() and out() functions need to do their job. + + On return, inflateBack() will set strm->next_in and strm->avail_in to + pass back any unused input that was provided by the last in() call. The + return values of inflateBack() can be Z_STREAM_END on success, Z_BUF_ERROR + if in() or out() returned an error, Z_DATA_ERROR if there was a format error + in the deflate stream (in which case strm->msg is set to indicate the nature + of the error), or Z_STREAM_ERROR if the stream was not properly initialized. + In the case of Z_BUF_ERROR, an input or output error can be distinguished + using strm->next_in which will be Z_NULL only if in() returned an error. If + strm->next_in is not Z_NULL, then the Z_BUF_ERROR was due to out() returning + non-zero. (in() will always be called before out(), so strm->next_in is + assured to be defined if out() returns non-zero.) Note that inflateBack() + cannot return Z_OK. +*/ + +ZEXTERN int ZEXPORT inflateBackEnd OF((z_streamp strm)); +/* + All memory allocated by inflateBackInit() is freed. + + inflateBackEnd() returns Z_OK on success, or Z_STREAM_ERROR if the stream + state was inconsistent. +*/ + +ZEXTERN uLong ZEXPORT zlibCompileFlags OF((void)); +/* Return flags indicating compile-time options. + + Type sizes, two bits each, 00 = 16 bits, 01 = 32, 10 = 64, 11 = other: + 1.0: size of uInt + 3.2: size of uLong + 5.4: size of voidpf (pointer) + 7.6: size of z_off_t + + Compiler, assembler, and debug options: + 8: DEBUG + 9: ASMV or ASMINF -- use ASM code + 10: ZLIB_WINAPI -- exported functions use the WINAPI calling convention + 11: 0 (reserved) + + One-time table building (smaller code, but not thread-safe if true): + 12: BUILDFIXED -- build static block decoding tables when needed + 13: DYNAMIC_CRC_TABLE -- build CRC calculation tables when needed + 14,15: 0 (reserved) + + Library content (indicates missing functionality): + 16: NO_GZCOMPRESS -- gz* functions cannot compress (to avoid linking + deflate code when not needed) + 17: NO_GZIP -- deflate can't write gzip streams, and inflate can't detect + and decode gzip streams (to avoid linking crc code) + 18-19: 0 (reserved) + + Operation variations (changes in library functionality): + 20: PKZIP_BUG_WORKAROUND -- slightly more permissive inflate + 21: FASTEST -- deflate algorithm with only one, lowest compression level + 22,23: 0 (reserved) + + The sprintf variant used by gzprintf (zero is best): + 24: 0 = vs*, 1 = s* -- 1 means limited to 20 arguments after the format + 25: 0 = *nprintf, 1 = *printf -- 1 means gzprintf() not secure! + 26: 0 = returns value, 1 = void -- 1 means inferred string length returned + + Remainder: + 27-31: 0 (reserved) + */ + +#ifndef Z_SOLO + + /* utility functions */ + +/* + The following utility functions are implemented on top of the basic + stream-oriented functions. To simplify the interface, some default options + are assumed (compression level and memory usage, standard memory allocation + functions). The source code of these utility functions can be modified if + you need special options. +*/ + +ZEXTERN int ZEXPORT compress OF((Bytef *dest, uLongf *destLen, + const Bytef *source, uLong sourceLen)); +/* + Compresses the source buffer into the destination buffer. sourceLen is + the byte length of the source buffer. Upon entry, destLen is the total size + of the destination buffer, which must be at least the value returned by + compressBound(sourceLen). Upon exit, destLen is the actual size of the + compressed buffer. + + compress returns Z_OK if success, Z_MEM_ERROR if there was not + enough memory, Z_BUF_ERROR if there was not enough room in the output + buffer. +*/ + +ZEXTERN int ZEXPORT compress2 OF((Bytef *dest, uLongf *destLen, + const Bytef *source, uLong sourceLen, + int level)); +/* + Compresses the source buffer into the destination buffer. The level + parameter has the same meaning as in deflateInit. sourceLen is the byte + length of the source buffer. Upon entry, destLen is the total size of the + destination buffer, which must be at least the value returned by + compressBound(sourceLen). Upon exit, destLen is the actual size of the + compressed buffer. + + compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough + memory, Z_BUF_ERROR if there was not enough room in the output buffer, + Z_STREAM_ERROR if the level parameter is invalid. +*/ + +ZEXTERN uLong ZEXPORT compressBound OF((uLong sourceLen)); +/* + compressBound() returns an upper bound on the compressed size after + compress() or compress2() on sourceLen bytes. It would be used before a + compress() or compress2() call to allocate the destination buffer. +*/ + +ZEXTERN int ZEXPORT uncompress OF((Bytef *dest, uLongf *destLen, + const Bytef *source, uLong sourceLen)); +/* + Decompresses the source buffer into the destination buffer. sourceLen is + the byte length of the source buffer. Upon entry, destLen is the total size + of the destination buffer, which must be large enough to hold the entire + uncompressed data. (The size of the uncompressed data must have been saved + previously by the compressor and transmitted to the decompressor by some + mechanism outside the scope of this compression library.) Upon exit, destLen + is the actual size of the uncompressed buffer. + + uncompress returns Z_OK if success, Z_MEM_ERROR if there was not + enough memory, Z_BUF_ERROR if there was not enough room in the output + buffer, or Z_DATA_ERROR if the input data was corrupted or incomplete. In + the case where there is not enough room, uncompress() will fill the output + buffer with the uncompressed data up to that point. +*/ + + /* gzip file access functions */ + +/* + This library supports reading and writing files in gzip (.gz) format with + an interface similar to that of stdio, using the functions that start with + "gz". The gzip format is different from the zlib format. gzip is a gzip + wrapper, documented in RFC 1952, wrapped around a deflate stream. +*/ + +typedef struct gzFile_s *gzFile; /* semi-opaque gzip file descriptor */ + +/* +ZEXTERN gzFile ZEXPORT gzopen OF((const char *path, const char *mode)); + + Opens a gzip (.gz) file for reading or writing. The mode parameter is as + in fopen ("rb" or "wb") but can also include a compression level ("wb9") or + a strategy: 'f' for filtered data as in "wb6f", 'h' for Huffman-only + compression as in "wb1h", 'R' for run-length encoding as in "wb1R", or 'F' + for fixed code compression as in "wb9F". (See the description of + deflateInit2 for more information about the strategy parameter.) 'T' will + request transparent writing or appending with no compression and not using + the gzip format. + + "a" can be used instead of "w" to request that the gzip stream that will + be written be appended to the file. "+" will result in an error, since + reading and writing to the same gzip file is not supported. The addition of + "x" when writing will create the file exclusively, which fails if the file + already exists. On systems that support it, the addition of "e" when + reading or writing will set the flag to close the file on an execve() call. + + These functions, as well as gzip, will read and decode a sequence of gzip + streams in a file. The append function of gzopen() can be used to create + such a file. (Also see gzflush() for another way to do this.) When + appending, gzopen does not test whether the file begins with a gzip stream, + nor does it look for the end of the gzip streams to begin appending. gzopen + will simply append a gzip stream to the existing file. + + gzopen can be used to read a file which is not in gzip format; in this + case gzread will directly read from the file without decompression. When + reading, this will be detected automatically by looking for the magic two- + byte gzip header. + + gzopen returns NULL if the file could not be opened, if there was + insufficient memory to allocate the gzFile state, or if an invalid mode was + specified (an 'r', 'w', or 'a' was not provided, or '+' was provided). + errno can be checked to determine if the reason gzopen failed was that the + file could not be opened. +*/ + +ZEXTERN gzFile ZEXPORT gzdopen OF((int fd, const char *mode)); +/* + gzdopen associates a gzFile with the file descriptor fd. File descriptors + are obtained from calls like open, dup, creat, pipe or fileno (if the file + has been previously opened with fopen). The mode parameter is as in gzopen. + + The next call of gzclose on the returned gzFile will also close the file + descriptor fd, just like fclose(fdopen(fd, mode)) closes the file descriptor + fd. If you want to keep fd open, use fd = dup(fd_keep); gz = gzdopen(fd, + mode);. The duplicated descriptor should be saved to avoid a leak, since + gzdopen does not close fd if it fails. If you are using fileno() to get the + file descriptor from a FILE *, then you will have to use dup() to avoid + double-close()ing the file descriptor. Both gzclose() and fclose() will + close the associated file descriptor, so they need to have different file + descriptors. + + gzdopen returns NULL if there was insufficient memory to allocate the + gzFile state, if an invalid mode was specified (an 'r', 'w', or 'a' was not + provided, or '+' was provided), or if fd is -1. The file descriptor is not + used until the next gz* read, write, seek, or close operation, so gzdopen + will not detect if fd is invalid (unless fd is -1). +*/ + +ZEXTERN int ZEXPORT gzbuffer OF((gzFile file, unsigned size)); +/* + Set the internal buffer size used by this library's functions. The + default buffer size is 8192 bytes. This function must be called after + gzopen() or gzdopen(), and before any other calls that read or write the + file. The buffer memory allocation is always deferred to the first read or + write. Two buffers are allocated, either both of the specified size when + writing, or one of the specified size and the other twice that size when + reading. A larger buffer size of, for example, 64K or 128K bytes will + noticeably increase the speed of decompression (reading). + + The new buffer size also affects the maximum length for gzprintf(). + + gzbuffer() returns 0 on success, or -1 on failure, such as being called + too late. +*/ + +ZEXTERN int ZEXPORT gzsetparams OF((gzFile file, int level, int strategy)); +/* + Dynamically update the compression level or strategy. See the description + of deflateInit2 for the meaning of these parameters. + + gzsetparams returns Z_OK if success, or Z_STREAM_ERROR if the file was not + opened for writing. +*/ + +ZEXTERN int ZEXPORT gzread OF((gzFile file, voidp buf, unsigned len)); +/* + Reads the given number of uncompressed bytes from the compressed file. If + the input file is not in gzip format, gzread copies the given number of + bytes into the buffer directly from the file. + + After reaching the end of a gzip stream in the input, gzread will continue + to read, looking for another gzip stream. Any number of gzip streams may be + concatenated in the input file, and will all be decompressed by gzread(). + If something other than a gzip stream is encountered after a gzip stream, + that remaining trailing garbage is ignored (and no error is returned). + + gzread can be used to read a gzip file that is being concurrently written. + Upon reaching the end of the input, gzread will return with the available + data. If the error code returned by gzerror is Z_OK or Z_BUF_ERROR, then + gzclearerr can be used to clear the end of file indicator in order to permit + gzread to be tried again. Z_OK indicates that a gzip stream was completed + on the last gzread. Z_BUF_ERROR indicates that the input file ended in the + middle of a gzip stream. Note that gzread does not return -1 in the event + of an incomplete gzip stream. This error is deferred until gzclose(), which + will return Z_BUF_ERROR if the last gzread ended in the middle of a gzip + stream. Alternatively, gzerror can be used before gzclose to detect this + case. + + gzread returns the number of uncompressed bytes actually read, less than + len for end of file, or -1 for error. +*/ + +ZEXTERN int ZEXPORT gzwrite OF((gzFile file, + voidpc buf, unsigned len)); +/* + Writes the given number of uncompressed bytes into the compressed file. + gzwrite returns the number of uncompressed bytes written or 0 in case of + error. +*/ + +ZEXTERN int ZEXPORTVA gzprintf Z_ARG((gzFile file, const char *format, ...)); +/* + Converts, formats, and writes the arguments to the compressed file under + control of the format string, as in fprintf. gzprintf returns the number of + uncompressed bytes actually written, or 0 in case of error. The number of + uncompressed bytes written is limited to 8191, or one less than the buffer + size given to gzbuffer(). The caller should assure that this limit is not + exceeded. If it is exceeded, then gzprintf() will return an error (0) with + nothing written. In this case, there may also be a buffer overflow with + unpredictable consequences, which is possible only if zlib was compiled with + the insecure functions sprintf() or vsprintf() because the secure snprintf() + or vsnprintf() functions were not available. This can be determined using + zlibCompileFlags(). +*/ + +ZEXTERN int ZEXPORT gzputs OF((gzFile file, const char *s)); +/* + Writes the given null-terminated string to the compressed file, excluding + the terminating null character. + + gzputs returns the number of characters written, or -1 in case of error. +*/ + +ZEXTERN char * ZEXPORT gzgets OF((gzFile file, char *buf, int len)); +/* + Reads bytes from the compressed file until len-1 characters are read, or a + newline character is read and transferred to buf, or an end-of-file + condition is encountered. If any characters are read or if len == 1, the + string is terminated with a null character. If no characters are read due + to an end-of-file or len < 1, then the buffer is left untouched. + + gzgets returns buf which is a null-terminated string, or it returns NULL + for end-of-file or in case of error. If there was an error, the contents at + buf are indeterminate. +*/ + +ZEXTERN int ZEXPORT gzputc OF((gzFile file, int c)); +/* + Writes c, converted to an unsigned char, into the compressed file. gzputc + returns the value that was written, or -1 in case of error. +*/ + +ZEXTERN int ZEXPORT gzgetc OF((gzFile file)); +/* + Reads one byte from the compressed file. gzgetc returns this byte or -1 + in case of end of file or error. This is implemented as a macro for speed. + As such, it does not do all of the checking the other functions do. I.e. + it does not check to see if file is NULL, nor whether the structure file + points to has been clobbered or not. +*/ + +ZEXTERN int ZEXPORT gzungetc OF((int c, gzFile file)); +/* + Push one character back onto the stream to be read as the first character + on the next read. At least one character of push-back is allowed. + gzungetc() returns the character pushed, or -1 on failure. gzungetc() will + fail if c is -1, and may fail if a character has been pushed but not read + yet. If gzungetc is used immediately after gzopen or gzdopen, at least the + output buffer size of pushed characters is allowed. (See gzbuffer above.) + The pushed character will be discarded if the stream is repositioned with + gzseek() or gzrewind(). +*/ + +ZEXTERN int ZEXPORT gzflush OF((gzFile file, int flush)); +/* + Flushes all pending output into the compressed file. The parameter flush + is as in the deflate() function. The return value is the zlib error number + (see function gzerror below). gzflush is only permitted when writing. + + If the flush parameter is Z_FINISH, the remaining data is written and the + gzip stream is completed in the output. If gzwrite() is called again, a new + gzip stream will be started in the output. gzread() is able to read such + concatented gzip streams. + + gzflush should be called only when strictly necessary because it will + degrade compression if called too often. +*/ + +/* +ZEXTERN z_off_t ZEXPORT gzseek OF((gzFile file, + z_off_t offset, int whence)); + + Sets the starting position for the next gzread or gzwrite on the given + compressed file. The offset represents a number of bytes in the + uncompressed data stream. The whence parameter is defined as in lseek(2); + the value SEEK_END is not supported. + + If the file is opened for reading, this function is emulated but can be + extremely slow. If the file is opened for writing, only forward seeks are + supported; gzseek then compresses a sequence of zeroes up to the new + starting position. + + gzseek returns the resulting offset location as measured in bytes from + the beginning of the uncompressed stream, or -1 in case of error, in + particular if the file is opened for writing and the new starting position + would be before the current position. +*/ + +ZEXTERN int ZEXPORT gzrewind OF((gzFile file)); +/* + Rewinds the given file. This function is supported only for reading. + + gzrewind(file) is equivalent to (int)gzseek(file, 0L, SEEK_SET) +*/ + +/* +ZEXTERN z_off_t ZEXPORT gztell OF((gzFile file)); + + Returns the starting position for the next gzread or gzwrite on the given + compressed file. This position represents a number of bytes in the + uncompressed data stream, and is zero when starting, even if appending or + reading a gzip stream from the middle of a file using gzdopen(). + + gztell(file) is equivalent to gzseek(file, 0L, SEEK_CUR) +*/ + +/* +ZEXTERN z_off_t ZEXPORT gzoffset OF((gzFile file)); + + Returns the current offset in the file being read or written. This offset + includes the count of bytes that precede the gzip stream, for example when + appending or when using gzdopen() for reading. When reading, the offset + does not include as yet unused buffered input. This information can be used + for a progress indicator. On error, gzoffset() returns -1. +*/ + +ZEXTERN int ZEXPORT gzeof OF((gzFile file)); +/* + Returns true (1) if the end-of-file indicator has been set while reading, + false (0) otherwise. Note that the end-of-file indicator is set only if the + read tried to go past the end of the input, but came up short. Therefore, + just like feof(), gzeof() may return false even if there is no more data to + read, in the event that the last read request was for the exact number of + bytes remaining in the input file. This will happen if the input file size + is an exact multiple of the buffer size. + + If gzeof() returns true, then the read functions will return no more data, + unless the end-of-file indicator is reset by gzclearerr() and the input file + has grown since the previous end of file was detected. +*/ + +ZEXTERN int ZEXPORT gzdirect OF((gzFile file)); +/* + Returns true (1) if file is being copied directly while reading, or false + (0) if file is a gzip stream being decompressed. + + If the input file is empty, gzdirect() will return true, since the input + does not contain a gzip stream. + + If gzdirect() is used immediately after gzopen() or gzdopen() it will + cause buffers to be allocated to allow reading the file to determine if it + is a gzip file. Therefore if gzbuffer() is used, it should be called before + gzdirect(). + + When writing, gzdirect() returns true (1) if transparent writing was + requested ("wT" for the gzopen() mode), or false (0) otherwise. (Note: + gzdirect() is not needed when writing. Transparent writing must be + explicitly requested, so the application already knows the answer. When + linking statically, using gzdirect() will include all of the zlib code for + gzip file reading and decompression, which may not be desired.) +*/ + +ZEXTERN int ZEXPORT gzclose OF((gzFile file)); +/* + Flushes all pending output if necessary, closes the compressed file and + deallocates the (de)compression state. Note that once file is closed, you + cannot call gzerror with file, since its structures have been deallocated. + gzclose must not be called more than once on the same file, just as free + must not be called more than once on the same allocation. + + gzclose will return Z_STREAM_ERROR if file is not valid, Z_ERRNO on a + file operation error, Z_MEM_ERROR if out of memory, Z_BUF_ERROR if the + last read ended in the middle of a gzip stream, or Z_OK on success. +*/ + +ZEXTERN int ZEXPORT gzclose_r OF((gzFile file)); +ZEXTERN int ZEXPORT gzclose_w OF((gzFile file)); +/* + Same as gzclose(), but gzclose_r() is only for use when reading, and + gzclose_w() is only for use when writing or appending. The advantage to + using these instead of gzclose() is that they avoid linking in zlib + compression or decompression code that is not used when only reading or only + writing respectively. If gzclose() is used, then both compression and + decompression code will be included the application when linking to a static + zlib library. +*/ + +ZEXTERN const char * ZEXPORT gzerror OF((gzFile file, int *errnum)); +/* + Returns the error message for the last error which occurred on the given + compressed file. errnum is set to zlib error number. If an error occurred + in the file system and not in the compression library, errnum is set to + Z_ERRNO and the application may consult errno to get the exact error code. + + The application must not modify the returned string. Future calls to + this function may invalidate the previously returned string. If file is + closed, then the string previously returned by gzerror will no longer be + available. + + gzerror() should be used to distinguish errors from end-of-file for those + functions above that do not distinguish those cases in their return values. +*/ + +ZEXTERN void ZEXPORT gzclearerr OF((gzFile file)); +/* + Clears the error and end-of-file flags for file. This is analogous to the + clearerr() function in stdio. This is useful for continuing to read a gzip + file that is being written concurrently. +*/ + +#endif /* !Z_SOLO */ + + /* checksum functions */ + +/* + These functions are not related to compression but are exported + anyway because they might be useful in applications using the compression + library. +*/ + +ZEXTERN uLong ZEXPORT adler32 OF((uLong adler, const Bytef *buf, uInt len)); +/* + Update a running Adler-32 checksum with the bytes buf[0..len-1] and + return the updated checksum. If buf is Z_NULL, this function returns the + required initial value for the checksum. + + An Adler-32 checksum is almost as reliable as a CRC32 but can be computed + much faster. + + Usage example: + + uLong adler = adler32(0L, Z_NULL, 0); + + while (read_buffer(buffer, length) != EOF) { + adler = adler32(adler, buffer, length); + } + if (adler != original_adler) error(); +*/ + +/* +ZEXTERN uLong ZEXPORT adler32_combine OF((uLong adler1, uLong adler2, + z_off_t len2)); + + Combine two Adler-32 checksums into one. For two sequences of bytes, seq1 + and seq2 with lengths len1 and len2, Adler-32 checksums were calculated for + each, adler1 and adler2. adler32_combine() returns the Adler-32 checksum of + seq1 and seq2 concatenated, requiring only adler1, adler2, and len2. Note + that the z_off_t type (like off_t) is a signed integer. If len2 is + negative, the result has no meaning or utility. +*/ + +ZEXTERN uLong ZEXPORT crc32 OF((uLong crc, const Bytef *buf, uInt len)); +/* + Update a running CRC-32 with the bytes buf[0..len-1] and return the + updated CRC-32. If buf is Z_NULL, this function returns the required + initial value for the crc. Pre- and post-conditioning (one's complement) is + performed within this function so it shouldn't be done by the application. + + Usage example: + + uLong crc = crc32(0L, Z_NULL, 0); + + while (read_buffer(buffer, length) != EOF) { + crc = crc32(crc, buffer, length); + } + if (crc != original_crc) error(); +*/ + +/* +ZEXTERN uLong ZEXPORT crc32_combine OF((uLong crc1, uLong crc2, z_off_t len2)); + + Combine two CRC-32 check values into one. For two sequences of bytes, + seq1 and seq2 with lengths len1 and len2, CRC-32 check values were + calculated for each, crc1 and crc2. crc32_combine() returns the CRC-32 + check value of seq1 and seq2 concatenated, requiring only crc1, crc2, and + len2. +*/ + + + /* various hacks, don't look :) */ + +/* deflateInit and inflateInit are macros to allow checking the zlib version + * and the compiler's view of z_stream: + */ +ZEXTERN int ZEXPORT deflateInit_ OF((z_streamp strm, int level, + const char *version, int stream_size)); +ZEXTERN int ZEXPORT inflateInit_ OF((z_streamp strm, + const char *version, int stream_size)); +ZEXTERN int ZEXPORT deflateInit2_ OF((z_streamp strm, int level, int method, + int windowBits, int memLevel, + int strategy, const char *version, + int stream_size)); +ZEXTERN int ZEXPORT inflateInit2_ OF((z_streamp strm, int windowBits, + const char *version, int stream_size)); +ZEXTERN int ZEXPORT inflateBackInit_ OF((z_streamp strm, int windowBits, + unsigned char FAR *window, + const char *version, + int stream_size)); +#define deflateInit(strm, level) \ + deflateInit_((strm), (level), ZLIB_VERSION, (int)sizeof(z_stream)) +#define inflateInit(strm) \ + inflateInit_((strm), ZLIB_VERSION, (int)sizeof(z_stream)) +#define deflateInit2(strm, level, method, windowBits, memLevel, strategy) \ + deflateInit2_((strm),(level),(method),(windowBits),(memLevel),\ + (strategy), ZLIB_VERSION, (int)sizeof(z_stream)) +#define inflateInit2(strm, windowBits) \ + inflateInit2_((strm), (windowBits), ZLIB_VERSION, \ + (int)sizeof(z_stream)) +#define inflateBackInit(strm, windowBits, window) \ + inflateBackInit_((strm), (windowBits), (window), \ + ZLIB_VERSION, (int)sizeof(z_stream)) + +#ifndef Z_SOLO + +/* gzgetc() macro and its supporting function and exposed data structure. Note + * that the real internal state is much larger than the exposed structure. + * This abbreviated structure exposes just enough for the gzgetc() macro. The + * user should not mess with these exposed elements, since their names or + * behavior could change in the future, perhaps even capriciously. They can + * only be used by the gzgetc() macro. You have been warned. + */ +struct gzFile_s { + unsigned have; + unsigned char *next; + z_off64_t pos; +}; +ZEXTERN int ZEXPORT gzgetc_ OF((gzFile file)); /* backward compatibility */ +#ifdef Z_PREFIX_SET +# undef z_gzgetc +# define z_gzgetc(g) \ + ((g)->have ? ((g)->have--, (g)->pos++, *((g)->next)++) : gzgetc(g)) +#else +# define gzgetc(g) \ + ((g)->have ? ((g)->have--, (g)->pos++, *((g)->next)++) : gzgetc(g)) +#endif + +/* provide 64-bit offset functions if _LARGEFILE64_SOURCE defined, and/or + * change the regular functions to 64 bits if _FILE_OFFSET_BITS is 64 (if + * both are true, the application gets the *64 functions, and the regular + * functions are changed to 64 bits) -- in case these are set on systems + * without large file support, _LFS64_LARGEFILE must also be true + */ +#ifdef Z_LARGE64 + ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); + ZEXTERN z_off64_t ZEXPORT gzseek64 OF((gzFile, z_off64_t, int)); + ZEXTERN z_off64_t ZEXPORT gztell64 OF((gzFile)); + ZEXTERN z_off64_t ZEXPORT gzoffset64 OF((gzFile)); + ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off64_t)); + ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off64_t)); +#endif + +#if !defined(ZLIB_INTERNAL) && defined(Z_WANT64) +# ifdef Z_PREFIX_SET +# define z_gzopen z_gzopen64 +# define z_gzseek z_gzseek64 +# define z_gztell z_gztell64 +# define z_gzoffset z_gzoffset64 +# define z_adler32_combine z_adler32_combine64 +# define z_crc32_combine z_crc32_combine64 +# else +# define gzopen gzopen64 +# define gzseek gzseek64 +# define gztell gztell64 +# define gzoffset gzoffset64 +# define adler32_combine adler32_combine64 +# define crc32_combine crc32_combine64 +# endif +# ifndef Z_LARGE64 + ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); + ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int)); + ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile)); + ZEXTERN z_off_t ZEXPORT gzoffset64 OF((gzFile)); + ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off_t)); + ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off_t)); +# endif +#else + ZEXTERN gzFile ZEXPORT gzopen OF((const char *, const char *)); + ZEXTERN z_off_t ZEXPORT gzseek OF((gzFile, z_off_t, int)); + ZEXTERN z_off_t ZEXPORT gztell OF((gzFile)); + ZEXTERN z_off_t ZEXPORT gzoffset OF((gzFile)); + ZEXTERN uLong ZEXPORT adler32_combine OF((uLong, uLong, z_off_t)); + ZEXTERN uLong ZEXPORT crc32_combine OF((uLong, uLong, z_off_t)); +#endif + +#else /* Z_SOLO */ + + ZEXTERN uLong ZEXPORT adler32_combine OF((uLong, uLong, z_off_t)); + ZEXTERN uLong ZEXPORT crc32_combine OF((uLong, uLong, z_off_t)); + +#endif /* !Z_SOLO */ + +/* hack for buggy compilers */ +#if !defined(ZUTIL_H) && !defined(NO_DUMMY_DECL) + struct internal_state {int dummy;}; +#endif + +/* undocumented functions */ +ZEXTERN const char * ZEXPORT zError OF((int)); +ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp)); +ZEXTERN const z_crc_t FAR * ZEXPORT get_crc_table OF((void)); +ZEXTERN int ZEXPORT inflateUndermine OF((z_streamp, int)); +ZEXTERN int ZEXPORT inflateResetKeep OF((z_streamp)); +ZEXTERN int ZEXPORT deflateResetKeep OF((z_streamp)); +#if defined(_WIN32) && !defined(Z_SOLO) +ZEXTERN gzFile ZEXPORT gzopen_w OF((const wchar_t *path, + const char *mode)); +#endif +#if defined(STDC) || defined(Z_HAVE_STDARG_H) +# ifndef Z_SOLO +ZEXTERN int ZEXPORTVA gzvprintf Z_ARG((gzFile file, + const char *format, + va_list va)); +# endif +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* ZLIB_H */ diff --git a/external/zlib/prebuilt/android/Android.mk b/external/zlib/prebuilt/android/Android.mk new file mode 100755 index 0000000000..19399169a0 --- /dev/null +++ b/external/zlib/prebuilt/android/Android.mk @@ -0,0 +1,8 @@ +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) +LOCAL_MODULE := cocos_zlib_static +LOCAL_MODULE_FILENAME := zlib +LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libz.a +LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../include +include $(PREBUILT_STATIC_LIBRARY) diff --git a/external/zlib/prebuilt/android/armeabi-v7a/libz.a b/external/zlib/prebuilt/android/armeabi-v7a/libz.a new file mode 100755 index 0000000000000000000000000000000000000000..268c1193be238dc207a4b24ad7322379278ae531 GIT binary patch literal 90922 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

R~P7qI5#JnSe)Q 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

    buvONNJ5&v` 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 z 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 literal 0 HcmV?d00001 diff --git a/external/zlib/prebuilt/android/armeabi/libz.a b/external/zlib/prebuilt/android/armeabi/libz.a new file mode 100755 index 0000000000000000000000000000000000000000..54f68523f4d35144f288ddf143801c82e7f33865 GIT binary patch literal 133814 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 literal 0 HcmV?d00001 diff --git a/external/zlib/prebuilt/android/x86/libz.a b/external/zlib/prebuilt/android/x86/libz.a new file mode 100755 index 0000000000000000000000000000000000000000..b55a516f6bf58e4a81fbb43b4446f8579d83821c GIT binary patch literal 163314 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

    =%$FExa3w`QsKiOTY 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 H8xj70rqv|; literal 0 HcmV?d00001 diff --git a/external/zlib/prebuilt/mac/libz.a b/external/zlib/prebuilt/mac/libz.a new file mode 100755 index 0000000000000000000000000000000000000000..294579d02904d585a04a47057f9c1ae4c2c6fd6b GIT binary patch literal 109564 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

    N(W1b9&eSoACi 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%0AB{a4Ez-M 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