将zlib库改为1.2.8版本,和png库统一
This commit is contained in:
parent
504ca85feb
commit
1321a5de96
|
@ -17,6 +17,7 @@
|
||||||
<Add option="-g" />
|
<Add option="-g" />
|
||||||
<Add directory="../../../third_party/libjpeg/uos/amd64/include" />
|
<Add directory="../../../third_party/libjpeg/uos/amd64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/uos/amd64/include" />
|
<Add directory="../../../third_party/libnsbmp/uos/amd64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/uos/amd64/include" />
|
||||||
<Add directory="../../../third_party/libpng/uos/amd64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/uos/amd64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/uos/amd64/include" />
|
<Add directory="../../../third_party/libtiff/uos/amd64/include" />
|
||||||
<Add directory="../../../third_party/libzip/uos/amd64/include" />
|
<Add directory="../../../third_party/libzip/uos/amd64/include" />
|
||||||
|
@ -46,6 +47,7 @@
|
||||||
<Add option="-O2" />
|
<Add option="-O2" />
|
||||||
<Add directory="../../../third_party/libjpeg/uos/amd64/include" />
|
<Add directory="../../../third_party/libjpeg/uos/amd64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/uos/amd64/include" />
|
<Add directory="../../../third_party/libnsbmp/uos/amd64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/uos/amd64/include" />
|
||||||
<Add directory="../../../third_party/libpng/uos/amd64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/uos/amd64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/uos/amd64/include" />
|
<Add directory="../../../third_party/libtiff/uos/amd64/include" />
|
||||||
<Add directory="../../../third_party/libzip/uos/amd64/include" />
|
<Add directory="../../../third_party/libzip/uos/amd64/include" />
|
||||||
|
@ -76,6 +78,7 @@
|
||||||
<Add option="-g" />
|
<Add option="-g" />
|
||||||
<Add directory="../../../third_party/libjpeg/uos/aarch64/include" />
|
<Add directory="../../../third_party/libjpeg/uos/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/uos/aarch64/include" />
|
<Add directory="../../../third_party/libnsbmp/uos/aarch64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/uos/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libpng/uos/aarch64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/uos/aarch64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/uos/aarch64/include" />
|
<Add directory="../../../third_party/libtiff/uos/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libzip/uos/aarch64/include" />
|
<Add directory="../../../third_party/libzip/uos/aarch64/include" />
|
||||||
|
@ -105,6 +108,7 @@
|
||||||
<Add option="-O2" />
|
<Add option="-O2" />
|
||||||
<Add directory="../../../third_party/libjpeg/uos/aarch64/include" />
|
<Add directory="../../../third_party/libjpeg/uos/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/uos/aarch64/include" />
|
<Add directory="../../../third_party/libnsbmp/uos/aarch64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/uos/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libpng/uos/aarch64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/uos/aarch64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/uos/aarch64/include" />
|
<Add directory="../../../third_party/libtiff/uos/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libzip/uos/aarch64/include" />
|
<Add directory="../../../third_party/libzip/uos/aarch64/include" />
|
||||||
|
@ -135,6 +139,7 @@
|
||||||
<Add option="-g" />
|
<Add option="-g" />
|
||||||
<Add directory="../../../third_party/libjpeg/uos/mips64/include" />
|
<Add directory="../../../third_party/libjpeg/uos/mips64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/uos/mips64/include" />
|
<Add directory="../../../third_party/libnsbmp/uos/mips64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/uos/mips64/include" />
|
||||||
<Add directory="../../../third_party/libpng/uos/mips64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/uos/mips64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/uos/mips64/include" />
|
<Add directory="../../../third_party/libtiff/uos/mips64/include" />
|
||||||
<Add directory="../../../third_party/libzip/uos/mips64/include" />
|
<Add directory="../../../third_party/libzip/uos/mips64/include" />
|
||||||
|
@ -164,6 +169,7 @@
|
||||||
<Add option="-O2" />
|
<Add option="-O2" />
|
||||||
<Add directory="../../../third_party/libjpeg/uos/mips64/include" />
|
<Add directory="../../../third_party/libjpeg/uos/mips64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/uos/mips64/include" />
|
<Add directory="../../../third_party/libnsbmp/uos/mips64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/uos/mips64/include" />
|
||||||
<Add directory="../../../third_party/libpng/uos/mips64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/uos/mips64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/uos/mips64/include" />
|
<Add directory="../../../third_party/libtiff/uos/mips64/include" />
|
||||||
<Add directory="../../../third_party/libzip/uos/mips64/include" />
|
<Add directory="../../../third_party/libzip/uos/mips64/include" />
|
||||||
|
@ -194,6 +200,7 @@
|
||||||
<Add option="-g" />
|
<Add option="-g" />
|
||||||
<Add directory="../../../third_party/libjpeg/kylin/amd64/include" />
|
<Add directory="../../../third_party/libjpeg/kylin/amd64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/kylin/amd64/include" />
|
<Add directory="../../../third_party/libnsbmp/kylin/amd64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/kylin/amd64/include" />
|
||||||
<Add directory="../../../third_party/libpng/kylin/amd64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/kylin/amd64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/kylin/amd64/include" />
|
<Add directory="../../../third_party/libtiff/kylin/amd64/include" />
|
||||||
<Add directory="../../../third_party/libzip/kylin/amd64/include" />
|
<Add directory="../../../third_party/libzip/kylin/amd64/include" />
|
||||||
|
@ -223,6 +230,7 @@
|
||||||
<Add option="-O2" />
|
<Add option="-O2" />
|
||||||
<Add directory="../../../third_party/libjpeg/kylin/amd64/include" />
|
<Add directory="../../../third_party/libjpeg/kylin/amd64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/kylin/amd64/include" />
|
<Add directory="../../../third_party/libnsbmp/kylin/amd64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/kylin/amd64/include" />
|
||||||
<Add directory="../../../third_party/libpng/kylin/amd64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/kylin/amd64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/kylin/amd64/include" />
|
<Add directory="../../../third_party/libtiff/kylin/amd64/include" />
|
||||||
<Add directory="../../../third_party/libzip/kylin/amd64/include" />
|
<Add directory="../../../third_party/libzip/kylin/amd64/include" />
|
||||||
|
@ -253,6 +261,7 @@
|
||||||
<Add option="-g" />
|
<Add option="-g" />
|
||||||
<Add directory="../../../third_party/libjpeg/kylin/aarch64/include" />
|
<Add directory="../../../third_party/libjpeg/kylin/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/kylin/aarch64/include" />
|
<Add directory="../../../third_party/libnsbmp/kylin/aarch64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/kylin/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libpng/kylin/aarch64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/kylin/aarch64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/kylin/aarch64/include" />
|
<Add directory="../../../third_party/libtiff/kylin/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libzip/kylin/aarch64/include" />
|
<Add directory="../../../third_party/libzip/kylin/aarch64/include" />
|
||||||
|
@ -282,6 +291,7 @@
|
||||||
<Add option="-O2" />
|
<Add option="-O2" />
|
||||||
<Add directory="../../../third_party/libjpeg/kylin/aarch64/include" />
|
<Add directory="../../../third_party/libjpeg/kylin/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/kylin/aarch64/include" />
|
<Add directory="../../../third_party/libnsbmp/kylin/aarch64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/kylin/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libpng/kylin/aarch64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/kylin/aarch64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/kylin/aarch64/include" />
|
<Add directory="../../../third_party/libtiff/kylin/aarch64/include" />
|
||||||
<Add directory="../../../third_party/libzip/kylin/aarch64/include" />
|
<Add directory="../../../third_party/libzip/kylin/aarch64/include" />
|
||||||
|
@ -312,6 +322,7 @@
|
||||||
<Add option="-g" />
|
<Add option="-g" />
|
||||||
<Add directory="../../../third_party/libjpeg/kylin/mips64/include" />
|
<Add directory="../../../third_party/libjpeg/kylin/mips64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/kylin/mips64/include" />
|
<Add directory="../../../third_party/libnsbmp/kylin/mips64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/kylin/mips64/include" />
|
||||||
<Add directory="../../../third_party/libpng/kylin/mips64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/kylin/mips64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/kylin/mips64/include" />
|
<Add directory="../../../third_party/libtiff/kylin/mips64/include" />
|
||||||
<Add directory="../../../third_party/libzip/kylin/mips64/include" />
|
<Add directory="../../../third_party/libzip/kylin/mips64/include" />
|
||||||
|
@ -341,6 +352,7 @@
|
||||||
<Add option="-O2" />
|
<Add option="-O2" />
|
||||||
<Add directory="../../../third_party/libjpeg/kylin/mips64/include" />
|
<Add directory="../../../third_party/libjpeg/kylin/mips64/include" />
|
||||||
<Add directory="../../../third_party/libnsbmp/kylin/mips64/include" />
|
<Add directory="../../../third_party/libnsbmp/kylin/mips64/include" />
|
||||||
|
<Add directory="../../../third_party/zlib/kylin/mips64/include" />
|
||||||
<Add directory="../../../third_party/libpng/kylin/mips64/include/libpng16" />
|
<Add directory="../../../third_party/libpng/kylin/mips64/include/libpng16" />
|
||||||
<Add directory="../../../third_party/libtiff/kylin/mips64/include" />
|
<Add directory="../../../third_party/libtiff/kylin/mips64/include" />
|
||||||
<Add directory="../../../third_party/libzip/kylin/mips64/include" />
|
<Add directory="../../../third_party/libzip/kylin/mips64/include" />
|
||||||
|
|
|
@ -31,6 +31,7 @@
|
||||||
#include <dlfcn.h>
|
#include <dlfcn.h>
|
||||||
#include <iconv.h>
|
#include <iconv.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
|
#include <dirent.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* __HGINC_H__ */
|
#endif /* __HGINC_H__ */
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
#include "ManagerV2.h"
|
#include "ManagerV2.h"
|
||||||
|
#include "base/HGDef.h"
|
||||||
|
#include "base/HGInc.h"
|
||||||
#include "base/HGBuffer.h"
|
#include "base/HGBuffer.h"
|
||||||
#include "base/HGBase64.h"
|
#include "base/HGBase64.h"
|
||||||
#include "base/HGUtility.h"
|
#include "base/HGUtility.h"
|
||||||
|
@ -3458,7 +3460,10 @@ namespace ver_2
|
||||||
{
|
{
|
||||||
char fileName[256];
|
char fileName[256];
|
||||||
sprintf(fileName, "%s%s", m_bindFolder.c_str(), dire->d_name);
|
sprintf(fileName, "%s%s", m_bindFolder.c_str(), dire->d_name);
|
||||||
if (!IS_DIR(fileName))
|
|
||||||
|
struct stat filebuf;
|
||||||
|
lstat(fileName, &filebuf);
|
||||||
|
if (!S_ISDIR(filebuf.st_mode))
|
||||||
{
|
{
|
||||||
HGBase_DeleteFile(fileName);
|
HGBase_DeleteFile(fileName);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* zconf.h -- configuration of the zlib compression library
|
/* zconf.h -- configuration of the zlib compression library
|
||||||
* Copyright (C) 1995-2016 Jean-loup Gailly, Mark Adler
|
* Copyright (C) 1995-2013 Jean-loup Gailly.
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@
|
||||||
#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */
|
#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */
|
||||||
# define Z_PREFIX_SET
|
# define Z_PREFIX_SET
|
||||||
|
|
||||||
/* all linked symbols and init macros */
|
/* all linked symbols */
|
||||||
# define _dist_code z__dist_code
|
# define _dist_code z__dist_code
|
||||||
# define _length_code z__length_code
|
# define _length_code z__length_code
|
||||||
# define _tr_align z__tr_align
|
# define _tr_align z__tr_align
|
||||||
|
@ -29,7 +29,6 @@
|
||||||
# define adler32 z_adler32
|
# define adler32 z_adler32
|
||||||
# define adler32_combine z_adler32_combine
|
# define adler32_combine z_adler32_combine
|
||||||
# define adler32_combine64 z_adler32_combine64
|
# define adler32_combine64 z_adler32_combine64
|
||||||
# define adler32_z z_adler32_z
|
|
||||||
# ifndef Z_SOLO
|
# ifndef Z_SOLO
|
||||||
# define compress z_compress
|
# define compress z_compress
|
||||||
# define compress2 z_compress2
|
# define compress2 z_compress2
|
||||||
|
@ -38,14 +37,10 @@
|
||||||
# define crc32 z_crc32
|
# define crc32 z_crc32
|
||||||
# define crc32_combine z_crc32_combine
|
# define crc32_combine z_crc32_combine
|
||||||
# define crc32_combine64 z_crc32_combine64
|
# define crc32_combine64 z_crc32_combine64
|
||||||
# define crc32_z z_crc32_z
|
|
||||||
# define deflate z_deflate
|
# define deflate z_deflate
|
||||||
# define deflateBound z_deflateBound
|
# define deflateBound z_deflateBound
|
||||||
# define deflateCopy z_deflateCopy
|
# define deflateCopy z_deflateCopy
|
||||||
# define deflateEnd z_deflateEnd
|
# define deflateEnd z_deflateEnd
|
||||||
# define deflateGetDictionary z_deflateGetDictionary
|
|
||||||
# define deflateInit z_deflateInit
|
|
||||||
# define deflateInit2 z_deflateInit2
|
|
||||||
# define deflateInit2_ z_deflateInit2_
|
# define deflateInit2_ z_deflateInit2_
|
||||||
# define deflateInit_ z_deflateInit_
|
# define deflateInit_ z_deflateInit_
|
||||||
# define deflateParams z_deflateParams
|
# define deflateParams z_deflateParams
|
||||||
|
@ -72,8 +67,6 @@
|
||||||
# define gzeof z_gzeof
|
# define gzeof z_gzeof
|
||||||
# define gzerror z_gzerror
|
# define gzerror z_gzerror
|
||||||
# define gzflush z_gzflush
|
# define gzflush z_gzflush
|
||||||
# define gzfread z_gzfread
|
|
||||||
# define gzfwrite z_gzfwrite
|
|
||||||
# define gzgetc z_gzgetc
|
# define gzgetc z_gzgetc
|
||||||
# define gzgetc_ z_gzgetc_
|
# define gzgetc_ z_gzgetc_
|
||||||
# define gzgets z_gzgets
|
# define gzgets z_gzgets
|
||||||
|
@ -85,6 +78,7 @@
|
||||||
# define gzopen_w z_gzopen_w
|
# define gzopen_w z_gzopen_w
|
||||||
# endif
|
# endif
|
||||||
# define gzprintf z_gzprintf
|
# define gzprintf z_gzprintf
|
||||||
|
# define gzvprintf z_gzvprintf
|
||||||
# define gzputc z_gzputc
|
# define gzputc z_gzputc
|
||||||
# define gzputs z_gzputs
|
# define gzputs z_gzputs
|
||||||
# define gzread z_gzread
|
# define gzread z_gzread
|
||||||
|
@ -95,39 +89,32 @@
|
||||||
# define gztell z_gztell
|
# define gztell z_gztell
|
||||||
# define gztell64 z_gztell64
|
# define gztell64 z_gztell64
|
||||||
# define gzungetc z_gzungetc
|
# define gzungetc z_gzungetc
|
||||||
# define gzvprintf z_gzvprintf
|
|
||||||
# define gzwrite z_gzwrite
|
# define gzwrite z_gzwrite
|
||||||
# endif
|
# endif
|
||||||
# define inflate z_inflate
|
# define inflate z_inflate
|
||||||
# define inflateBack z_inflateBack
|
# define inflateBack z_inflateBack
|
||||||
# define inflateBackEnd z_inflateBackEnd
|
# define inflateBackEnd z_inflateBackEnd
|
||||||
# define inflateBackInit z_inflateBackInit
|
|
||||||
# define inflateBackInit_ z_inflateBackInit_
|
# define inflateBackInit_ z_inflateBackInit_
|
||||||
# define inflateCodesUsed z_inflateCodesUsed
|
|
||||||
# define inflateCopy z_inflateCopy
|
# define inflateCopy z_inflateCopy
|
||||||
# define inflateEnd z_inflateEnd
|
# define inflateEnd z_inflateEnd
|
||||||
# define inflateGetDictionary z_inflateGetDictionary
|
|
||||||
# define inflateGetHeader z_inflateGetHeader
|
# define inflateGetHeader z_inflateGetHeader
|
||||||
# define inflateInit z_inflateInit
|
|
||||||
# define inflateInit2 z_inflateInit2
|
|
||||||
# define inflateInit2_ z_inflateInit2_
|
# define inflateInit2_ z_inflateInit2_
|
||||||
# define inflateInit_ z_inflateInit_
|
# define inflateInit_ z_inflateInit_
|
||||||
# define inflateMark z_inflateMark
|
# define inflateMark z_inflateMark
|
||||||
# define inflatePrime z_inflatePrime
|
# define inflatePrime z_inflatePrime
|
||||||
# define inflateReset z_inflateReset
|
# define inflateReset z_inflateReset
|
||||||
# define inflateReset2 z_inflateReset2
|
# define inflateReset2 z_inflateReset2
|
||||||
# define inflateResetKeep z_inflateResetKeep
|
|
||||||
# define inflateSetDictionary z_inflateSetDictionary
|
# define inflateSetDictionary z_inflateSetDictionary
|
||||||
|
# define inflateGetDictionary z_inflateGetDictionary
|
||||||
# define inflateSync z_inflateSync
|
# define inflateSync z_inflateSync
|
||||||
# define inflateSyncPoint z_inflateSyncPoint
|
# define inflateSyncPoint z_inflateSyncPoint
|
||||||
# define inflateUndermine z_inflateUndermine
|
# define inflateUndermine z_inflateUndermine
|
||||||
# define inflateValidate z_inflateValidate
|
# define inflateResetKeep z_inflateResetKeep
|
||||||
# define inflate_copyright z_inflate_copyright
|
# define inflate_copyright z_inflate_copyright
|
||||||
# define inflate_fast z_inflate_fast
|
# define inflate_fast z_inflate_fast
|
||||||
# define inflate_table z_inflate_table
|
# define inflate_table z_inflate_table
|
||||||
# ifndef Z_SOLO
|
# ifndef Z_SOLO
|
||||||
# define uncompress z_uncompress
|
# define uncompress z_uncompress
|
||||||
# define uncompress2 z_uncompress2
|
|
||||||
# endif
|
# endif
|
||||||
# define zError z_zError
|
# define zError z_zError
|
||||||
# ifndef Z_SOLO
|
# ifndef Z_SOLO
|
||||||
|
@ -237,19 +224,9 @@
|
||||||
# define z_const
|
# define z_const
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef Z_SOLO
|
/* Some Mac compilers merge all .h files incorrectly: */
|
||||||
typedef unsigned long z_size_t;
|
#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
|
||||||
#else
|
# define NO_DUMMY_DECL
|
||||||
# define z_longlong long long
|
|
||||||
# if defined(NO_SIZE_T)
|
|
||||||
typedef unsigned NO_SIZE_T z_size_t;
|
|
||||||
# elif defined(STDC)
|
|
||||||
# include <stddef.h>
|
|
||||||
typedef size_t z_size_t;
|
|
||||||
# else
|
|
||||||
typedef unsigned long z_size_t;
|
|
||||||
# endif
|
|
||||||
# undef z_longlong
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Maximum value for memLevel in deflateInit2 */
|
/* Maximum value for memLevel in deflateInit2 */
|
||||||
|
@ -279,7 +256,7 @@
|
||||||
Of course this will generally degrade compression (there's no free lunch).
|
Of course this will generally degrade compression (there's no free lunch).
|
||||||
|
|
||||||
The memory requirements for inflate are (in bytes) 1 << windowBits
|
The memory requirements for inflate are (in bytes) 1 << windowBits
|
||||||
that is, 32K for windowBits=15 (default value) plus about 7 kilobytes
|
that is, 32K for windowBits=15 (default value) plus a few kilobytes
|
||||||
for small objects.
|
for small objects.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/* zlib.h -- interface of the 'zlib' general purpose compression library
|
/* zlib.h -- interface of the 'zlib' general purpose compression library
|
||||||
version 1.2.11, January 15th, 2017
|
version 1.2.8, April 28th, 2013
|
||||||
|
|
||||||
Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
|
Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
|
@ -37,11 +37,11 @@
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define ZLIB_VERSION "1.2.11"
|
#define ZLIB_VERSION "1.2.8"
|
||||||
#define ZLIB_VERNUM 0x12b0
|
#define ZLIB_VERNUM 0x1280
|
||||||
#define ZLIB_VER_MAJOR 1
|
#define ZLIB_VER_MAJOR 1
|
||||||
#define ZLIB_VER_MINOR 2
|
#define ZLIB_VER_MINOR 2
|
||||||
#define ZLIB_VER_REVISION 11
|
#define ZLIB_VER_REVISION 8
|
||||||
#define ZLIB_VER_SUBREVISION 0
|
#define ZLIB_VER_SUBREVISION 0
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -65,8 +65,7 @@ extern "C" {
|
||||||
with "gz". The gzip format is different from the zlib format. gzip is a
|
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.
|
gzip wrapper, documented in RFC 1952, wrapped around a deflate stream.
|
||||||
|
|
||||||
This library can optionally read and write gzip and raw deflate streams in
|
This library can optionally read and write gzip streams in memory as well.
|
||||||
memory as well.
|
|
||||||
|
|
||||||
The zlib format was designed to be compact and fast for use in memory
|
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-
|
and on communications channels. The gzip format was designed for single-
|
||||||
|
@ -75,7 +74,7 @@ extern "C" {
|
||||||
|
|
||||||
The library does not install any signal handler. The decoder checks
|
The library does not install any signal handler. The decoder checks
|
||||||
the consistency of the compressed data, so the library should never crash
|
the consistency of the compressed data, so the library should never crash
|
||||||
even in the case of corrupted input.
|
even in case of corrupted input.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
typedef voidpf (*alloc_func) OF((voidpf opaque, uInt items, uInt size));
|
typedef voidpf (*alloc_func) OF((voidpf opaque, uInt items, uInt size));
|
||||||
|
@ -88,7 +87,7 @@ typedef struct z_stream_s {
|
||||||
uInt avail_in; /* number of bytes available at next_in */
|
uInt avail_in; /* number of bytes available at next_in */
|
||||||
uLong total_in; /* total number of input bytes read so far */
|
uLong total_in; /* total number of input bytes read so far */
|
||||||
|
|
||||||
Bytef *next_out; /* next output byte will go here */
|
Bytef *next_out; /* next output byte should be put there */
|
||||||
uInt avail_out; /* remaining free space at next_out */
|
uInt avail_out; /* remaining free space at next_out */
|
||||||
uLong total_out; /* total number of bytes output so far */
|
uLong total_out; /* total number of bytes output so far */
|
||||||
|
|
||||||
|
@ -99,9 +98,8 @@ typedef struct z_stream_s {
|
||||||
free_func zfree; /* used to free the internal state */
|
free_func zfree; /* used to free the internal state */
|
||||||
voidpf opaque; /* private data object passed to zalloc and zfree */
|
voidpf opaque; /* private data object passed to zalloc and zfree */
|
||||||
|
|
||||||
int data_type; /* best guess about the data type: binary or text
|
int data_type; /* best guess about the data type: binary or text */
|
||||||
for deflate, or the decoding state for inflate */
|
uLong adler; /* adler32 value of the uncompressed data */
|
||||||
uLong adler; /* Adler-32 or CRC-32 value of the uncompressed data */
|
|
||||||
uLong reserved; /* reserved for future use */
|
uLong reserved; /* reserved for future use */
|
||||||
} z_stream;
|
} z_stream;
|
||||||
|
|
||||||
|
@ -144,9 +142,7 @@ typedef gz_header FAR *gz_headerp;
|
||||||
|
|
||||||
zalloc must return Z_NULL if there is not enough memory for the object.
|
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
|
If zlib is used in a multi-threaded application, zalloc and zfree must be
|
||||||
thread safe. In that case, zlib is thread-safe. When zalloc and zfree are
|
thread safe.
|
||||||
Z_NULL on entry to the initialization function, they are set to internal
|
|
||||||
routines that use the standard library functions malloc() and free().
|
|
||||||
|
|
||||||
On 16-bit systems, the functions zalloc and zfree must be able to allocate
|
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
|
exactly 65536 bytes, but will not be required to allocate more than this if
|
||||||
|
@ -159,7 +155,7 @@ typedef gz_header FAR *gz_headerp;
|
||||||
|
|
||||||
The fields total_in and total_out can be used for statistics or progress
|
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
|
reports. After compression, total_in holds the total size of the
|
||||||
uncompressed data and may be saved for use by the decompressor (particularly
|
uncompressed data and may be saved for use in the decompressor (particularly
|
||||||
if the decompressor wants to decompress everything in a single step).
|
if the decompressor wants to decompress everything in a single step).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -204,7 +200,7 @@ typedef gz_header FAR *gz_headerp;
|
||||||
#define Z_TEXT 1
|
#define Z_TEXT 1
|
||||||
#define Z_ASCII Z_TEXT /* for compatibility with 1.2.2 and earlier */
|
#define Z_ASCII Z_TEXT /* for compatibility with 1.2.2 and earlier */
|
||||||
#define Z_UNKNOWN 2
|
#define Z_UNKNOWN 2
|
||||||
/* Possible values of the data_type field for deflate() */
|
/* Possible values of the data_type field (though see inflate()) */
|
||||||
|
|
||||||
#define Z_DEFLATED 8
|
#define Z_DEFLATED 8
|
||||||
/* The deflate compression method (the only one supported in this version) */
|
/* The deflate compression method (the only one supported in this version) */
|
||||||
|
@ -262,11 +258,11 @@ ZEXTERN int ZEXPORT deflate OF((z_streamp strm, int flush));
|
||||||
enough room in the output buffer), next_in and avail_in are updated and
|
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().
|
processing will resume at this point for the next call of deflate().
|
||||||
|
|
||||||
- Generate more output starting at next_out and update next_out and avail_out
|
- 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.
|
accordingly. This action is forced if the parameter flush is non zero.
|
||||||
Forcing flush frequently degrades the compression ratio, so this parameter
|
Forcing flush frequently degrades the compression ratio, so this parameter
|
||||||
should be set only when necessary. Some output may be provided even if
|
should be set only when necessary (in interactive applications). Some
|
||||||
flush is zero.
|
output may be provided even if flush is not set.
|
||||||
|
|
||||||
Before the call of deflate(), the application should ensure that at least
|
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
|
one of the actions is possible, by providing more input and/or consuming more
|
||||||
|
@ -275,9 +271,7 @@ ZEXTERN int ZEXPORT deflate OF((z_streamp strm, int flush));
|
||||||
output when it wants, for example when the output buffer is full (avail_out
|
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
|
== 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
|
zero avail_out, it must be called again after making room in the output
|
||||||
buffer because there might be more output pending. See deflatePending(),
|
buffer because there might be more output pending.
|
||||||
which can be used if desired to determine whether or not there is more ouput
|
|
||||||
in that case.
|
|
||||||
|
|
||||||
Normally the parameter flush is set to Z_NO_FLUSH, which allows deflate to
|
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
|
decide how much data to accumulate before producing output, in order to
|
||||||
|
@ -298,8 +292,8 @@ ZEXTERN int ZEXPORT deflate OF((z_streamp strm, int flush));
|
||||||
input data so far will be available to the decompressor, as for Z_SYNC_FLUSH.
|
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
|
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
|
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
|
in order for the decompressor to finish the block before the empty fixed code
|
||||||
codes block.
|
block.
|
||||||
|
|
||||||
If flush is set to Z_BLOCK, a deflate block is completed and emitted, as
|
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
|
for Z_SYNC_FLUSH, but the output is not aligned on a byte boundary, and up to
|
||||||
|
@ -325,38 +319,34 @@ ZEXTERN int ZEXPORT deflate OF((z_streamp strm, int flush));
|
||||||
|
|
||||||
If the parameter flush is set to Z_FINISH, pending input is processed,
|
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
|
pending output is flushed and deflate returns with Z_STREAM_END if there was
|
||||||
enough output space. If deflate returns with Z_OK or Z_BUF_ERROR, this
|
enough output space; if deflate returns with Z_OK, this function must be
|
||||||
function must be called again with Z_FINISH and more output space (updated
|
called again with Z_FINISH and more output space (updated avail_out) but no
|
||||||
avail_out) but no more input data, until it returns with Z_STREAM_END or an
|
more input data, until it returns with Z_STREAM_END or an error. After
|
||||||
error. After deflate has returned Z_STREAM_END, the only possible operations
|
deflate has returned Z_STREAM_END, the only possible operations on the stream
|
||||||
on the stream are deflateReset or deflateEnd.
|
are deflateReset or deflateEnd.
|
||||||
|
|
||||||
Z_FINISH can be used in the first deflate call after deflateInit if all the
|
Z_FINISH can be used immediately after deflateInit if all the compression
|
||||||
compression is to be done in a single step. In order to complete in one
|
is to be done in a single step. In this case, avail_out must be at least the
|
||||||
call, avail_out must be at least the value returned by deflateBound (see
|
value returned by deflateBound (see below). Then deflate is guaranteed to
|
||||||
below). Then deflate is guaranteed to return Z_STREAM_END. If not enough
|
return Z_STREAM_END. If not enough output space is provided, deflate will
|
||||||
output space is provided, deflate will not return Z_STREAM_END, and it must
|
not return Z_STREAM_END, and it must be called again as described above.
|
||||||
be called again as described above.
|
|
||||||
|
|
||||||
deflate() sets strm->adler to the Adler-32 checksum of all input read
|
deflate() sets strm->adler to the adler32 checksum of all input read
|
||||||
so far (that is, total_in bytes). If a gzip stream is being generated, then
|
so far (that is, total_in bytes).
|
||||||
strm->adler will be the CRC-32 checksum of the input read so far. (See
|
|
||||||
deflateInit2 below.)
|
|
||||||
|
|
||||||
deflate() may update strm->data_type if it can make a good guess about
|
deflate() may update strm->data_type if it can make a good guess about
|
||||||
the input data type (Z_BINARY or Z_TEXT). If in doubt, the data is
|
the input data type (Z_BINARY or Z_TEXT). In doubt, the data is considered
|
||||||
considered binary. This field is only for information purposes and does not
|
binary. This field is only for information purposes and does not affect the
|
||||||
affect the compression algorithm in any manner.
|
compression algorithm in any manner.
|
||||||
|
|
||||||
deflate() returns Z_OK if some progress has been made (more input
|
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
|
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
|
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
|
Z_FINISH), Z_STREAM_ERROR if the stream state was inconsistent (for example
|
||||||
if next_in or next_out was Z_NULL or the state was inadvertently written over
|
if next_in or next_out was Z_NULL), Z_BUF_ERROR if no progress is possible
|
||||||
by the application), or Z_BUF_ERROR if no progress is possible (for example
|
(for example avail_in or avail_out was zero). Note that Z_BUF_ERROR is not
|
||||||
avail_in or avail_out was zero). Note that Z_BUF_ERROR is not fatal, and
|
fatal, and deflate() can be called again with more input and more output
|
||||||
deflate() can be called again with more input and more output space to
|
space to continue compressing.
|
||||||
continue compressing.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
@ -379,21 +369,23 @@ ZEXTERN int ZEXPORT inflateInit OF((z_streamp strm));
|
||||||
|
|
||||||
Initializes the internal stream state for decompression. The fields
|
Initializes the internal stream state for decompression. The fields
|
||||||
next_in, avail_in, zalloc, zfree and opaque must be initialized before by
|
next_in, avail_in, zalloc, zfree and opaque must be initialized before by
|
||||||
the caller. In the current version of inflate, the provided input is not
|
the caller. If next_in is not Z_NULL and avail_in is large enough (the
|
||||||
read or consumed. The allocation of a sliding window will be deferred to
|
exact value depends on the compression method), inflateInit determines the
|
||||||
the first call of inflate (if the decompression does not complete on the
|
compression method from the zlib header and allocates all data structures
|
||||||
first call). If zalloc and zfree are set to Z_NULL, inflateInit updates
|
accordingly; otherwise the allocation will be deferred to the first call of
|
||||||
them to use default allocation functions.
|
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
|
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
|
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
|
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
|
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.
|
there is no error message. inflateInit does not perform any decompression
|
||||||
Actual decompression will be done by inflate(). So next_in, and avail_in,
|
apart from possibly reading the zlib header if present: actual decompression
|
||||||
next_out, and avail_out are unused and unchanged. The current
|
will be done by inflate(). (So next_in and avail_in may be modified, but
|
||||||
implementation of inflateInit() does not process any header information --
|
next_out and avail_out are unused and unchanged.) The current implementation
|
||||||
that is deferred until inflate() is called.
|
of inflateInit() does not process any header information -- that is deferred
|
||||||
|
until inflate() is called.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
@ -409,20 +401,17 @@ ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush));
|
||||||
|
|
||||||
- Decompress more input starting at next_in and update next_in and avail_in
|
- 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
|
accordingly. If not all input can be processed (because there is not
|
||||||
enough room in the output buffer), then next_in and avail_in are updated
|
enough room in the output buffer), next_in is updated and processing will
|
||||||
accordingly, and processing will resume at this point for the next call of
|
resume at this point for the next call of inflate().
|
||||||
inflate().
|
|
||||||
|
|
||||||
- Generate more output starting at next_out and update next_out and avail_out
|
- 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
|
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
|
no more input data or no more space in the output buffer (see below about
|
||||||
the flush parameter).
|
the flush parameter).
|
||||||
|
|
||||||
Before the call of inflate(), the application should ensure that at least
|
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
|
one of the actions is possible, by providing more input and/or consuming more
|
||||||
output, and updating the next_* and avail_* values accordingly. If the
|
output, and updating the next_* and avail_* values accordingly. The
|
||||||
caller of inflate() does not provide both available input and available
|
|
||||||
output space, it is possible that there will be no progress made. The
|
|
||||||
application can consume the uncompressed output when it wants, for example
|
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
|
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
|
inflate(). If inflate returns Z_OK and with zero avail_out, it must be
|
||||||
|
@ -439,7 +428,7 @@ ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush));
|
||||||
gets to the end of that block, or when it runs out of data.
|
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.
|
The Z_BLOCK option assists in appending to or combining deflate streams.
|
||||||
To assist in this, on return inflate() always sets strm->data_type to the
|
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
|
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
|
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
|
128 if inflate() returned immediately after decoding an end-of-block code or
|
||||||
|
@ -487,33 +476,32 @@ ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush));
|
||||||
chosen by the compressor and returns Z_NEED_DICT; otherwise it sets
|
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,
|
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
|
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 Adler-32
|
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
|
checksum is equal to that saved by the compressor and returns Z_STREAM_END
|
||||||
only if the checksum is correct.
|
only if the checksum is correct.
|
||||||
|
|
||||||
inflate() can decompress and check either zlib-wrapped or gzip-wrapped
|
inflate() can decompress and check either zlib-wrapped or gzip-wrapped
|
||||||
deflate data. The header type is detected automatically, if requested when
|
deflate data. The header type is detected automatically, if requested when
|
||||||
initializing with inflateInit2(). Any information contained in the gzip
|
initializing with inflateInit2(). Any information contained in the gzip
|
||||||
header is not retained unless inflateGetHeader() is used. When processing
|
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
|
gzip-wrapped deflate data, strm->adler32 is set to the CRC-32 of the output
|
||||||
produced so far. The CRC-32 is checked against the gzip trailer, as is the
|
producted so far. The CRC-32 is checked against the gzip trailer.
|
||||||
uncompressed length, modulo 2^32.
|
|
||||||
|
|
||||||
inflate() returns Z_OK if some progress has been made (more input processed
|
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
|
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
|
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
|
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
|
corrupted (input stream not conforming to the zlib format or incorrect check
|
||||||
value, in which case strm->msg points to a string with a more specific
|
value), Z_STREAM_ERROR if the stream structure was inconsistent (for example
|
||||||
error), 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,
|
||||||
next_in or next_out was Z_NULL, or the state was inadvertently written over
|
Z_BUF_ERROR if no progress is possible or if there was not enough room in the
|
||||||
by the application), Z_MEM_ERROR if there was not enough memory, Z_BUF_ERROR
|
output buffer when Z_FINISH is used. Note that Z_BUF_ERROR is not fatal, and
|
||||||
if no progress was 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
|
inflate() can be called again with more input and more output space to
|
||||||
continue decompressing. If Z_DATA_ERROR is returned, the application may
|
continue decompressing. If Z_DATA_ERROR is returned, the application may
|
||||||
then call inflateSync() to look for a good compression block if a partial
|
then call inflateSync() to look for a good compression block if a partial
|
||||||
recovery of the data is to be attempted.
|
recovery of the data is desired.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
@ -523,8 +511,9 @@ ZEXTERN int ZEXPORT inflateEnd OF((z_streamp strm));
|
||||||
This function discards any unprocessed input and does not flush any pending
|
This function discards any unprocessed input and does not flush any pending
|
||||||
output.
|
output.
|
||||||
|
|
||||||
inflateEnd returns Z_OK if success, or Z_STREAM_ERROR if the stream state
|
inflateEnd returns Z_OK if success, Z_STREAM_ERROR if the stream state
|
||||||
was inconsistent.
|
was inconsistent. In the error case, msg may be set but then points to a
|
||||||
|
static string (which must not be deallocated).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
@ -555,29 +544,16 @@ ZEXTERN int ZEXPORT deflateInit2 OF((z_streamp strm,
|
||||||
compression at the expense of memory usage. The default value is 15 if
|
compression at the expense of memory usage. The default value is 15 if
|
||||||
deflateInit is used instead.
|
deflateInit is used instead.
|
||||||
|
|
||||||
For the current implementation of deflate(), a windowBits value of 8 (a
|
|
||||||
window size of 256 bytes) is not supported. As a result, a request for 8
|
|
||||||
will result in 9 (a 512-byte window). In that case, providing 8 to
|
|
||||||
inflateInit2() will result in an error when the zlib header with 9 is
|
|
||||||
checked against the initialization of inflate(). The remedy is to not use 8
|
|
||||||
with deflateInit2() with this initialization, or at least in that case use 9
|
|
||||||
with inflateInit2().
|
|
||||||
|
|
||||||
windowBits can also be -8..-15 for raw deflate. In this case, -windowBits
|
windowBits can also be -8..-15 for raw deflate. In this case, -windowBits
|
||||||
determines the window size. deflate() will then generate raw deflate data
|
determines the window size. deflate() will then generate raw deflate data
|
||||||
with no zlib header or trailer, and will not compute a check value.
|
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
|
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
|
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
|
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
|
file name, no extra data, no comment, no modification time (set to zero), no
|
||||||
header crc, and the operating system will be set to the appropriate value,
|
header crc, and the operating system will be set to 255 (unknown). If a
|
||||||
if the operating system was determined at compile time. If a gzip stream is
|
gzip stream is being written, strm->adler is a crc32 instead of an adler32.
|
||||||
being written, strm->adler is a CRC-32 instead of an Adler-32.
|
|
||||||
|
|
||||||
For raw deflate or gzip encoding, a request for a 256-byte window is
|
|
||||||
rejected as invalid, since only the zlib header provides a means of
|
|
||||||
transmitting the window size to the decompressor.
|
|
||||||
|
|
||||||
The memLevel parameter specifies how much memory should be allocated
|
The memLevel parameter specifies how much memory should be allocated
|
||||||
for the internal compression state. memLevel=1 uses minimum memory but is
|
for the internal compression state. memLevel=1 uses minimum memory but is
|
||||||
|
@ -638,12 +614,12 @@ ZEXTERN int ZEXPORT deflateSetDictionary OF((z_streamp strm,
|
||||||
addition, the current implementation of deflate will use at most the window
|
addition, the current implementation of deflate will use at most the window
|
||||||
size minus 262 bytes of the provided dictionary.
|
size minus 262 bytes of the provided dictionary.
|
||||||
|
|
||||||
Upon return of this function, strm->adler is set to the Adler-32 value
|
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
|
of the dictionary; the decompressor may later use this value to determine
|
||||||
which dictionary has been used by the compressor. (The Adler-32 value
|
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
|
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
|
actually used by the compressor.) If a raw deflate was requested, then the
|
||||||
Adler-32 value is not computed and strm->adler is not set.
|
adler32 value is not computed and strm->adler is not set.
|
||||||
|
|
||||||
deflateSetDictionary returns Z_OK if success, or Z_STREAM_ERROR if a
|
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
|
parameter is invalid (e.g. dictionary being Z_NULL) or the stream state is
|
||||||
|
@ -652,28 +628,6 @@ ZEXTERN int ZEXPORT deflateSetDictionary OF((z_streamp strm,
|
||||||
not perform any compression: this will be done by deflate().
|
not perform any compression: this will be done by deflate().
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN int ZEXPORT deflateGetDictionary OF((z_streamp strm,
|
|
||||||
Bytef *dictionary,
|
|
||||||
uInt *dictLength));
|
|
||||||
/*
|
|
||||||
Returns the sliding dictionary being maintained by deflate. 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 deflateGetDictionary() 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.
|
|
||||||
|
|
||||||
deflateGetDictionary() may return a length less than the window size, even
|
|
||||||
when more than the window size in input has been provided. It may return up
|
|
||||||
to 258 bytes less in that case, due to how zlib's implementation of deflate
|
|
||||||
manages the sliding window and lookahead for matches, where matches can be
|
|
||||||
up to 258 bytes long. If the application needs the last window-size bytes of
|
|
||||||
input, then that would need to be saved by the application outside of zlib.
|
|
||||||
|
|
||||||
deflateGetDictionary returns Z_OK on success, or Z_STREAM_ERROR if the
|
|
||||||
stream state is inconsistent.
|
|
||||||
*/
|
|
||||||
|
|
||||||
ZEXTERN int ZEXPORT deflateCopy OF((z_streamp dest,
|
ZEXTERN int ZEXPORT deflateCopy OF((z_streamp dest,
|
||||||
z_streamp source));
|
z_streamp source));
|
||||||
/*
|
/*
|
||||||
|
@ -694,10 +648,10 @@ ZEXTERN int ZEXPORT deflateCopy OF((z_streamp dest,
|
||||||
|
|
||||||
ZEXTERN int ZEXPORT deflateReset OF((z_streamp strm));
|
ZEXTERN int ZEXPORT deflateReset OF((z_streamp strm));
|
||||||
/*
|
/*
|
||||||
This function is equivalent to deflateEnd followed by deflateInit, but
|
This function is equivalent to deflateEnd followed by deflateInit,
|
||||||
does not free and reallocate the internal compression state. The stream
|
but does not free and reallocate all the internal compression state. The
|
||||||
will leave the compression level and any other attributes that may have been
|
stream will keep the same compression level and any other attributes that
|
||||||
set unchanged.
|
may have been set by deflateInit2.
|
||||||
|
|
||||||
deflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
|
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).
|
stream state was inconsistent (such as zalloc or state being Z_NULL).
|
||||||
|
@ -708,36 +662,20 @@ ZEXTERN int ZEXPORT deflateParams OF((z_streamp strm,
|
||||||
int strategy));
|
int strategy));
|
||||||
/*
|
/*
|
||||||
Dynamically update the compression level and compression strategy. The
|
Dynamically update the compression level and compression strategy. The
|
||||||
interpretation of level and strategy is as in deflateInit2(). This can be
|
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
|
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.
|
to switch to a different kind of input data requiring a different strategy.
|
||||||
If the compression approach (which is a function of the level) or the
|
If the compression level is changed, the input available so far is
|
||||||
strategy is changed, and if any input has been consumed in a previous
|
compressed with the old level (and may be flushed); the new level will take
|
||||||
deflate() call, then the input available so far is compressed with the old
|
effect only at the next call of deflate().
|
||||||
level and strategy using deflate(strm, Z_BLOCK). There are three approaches
|
|
||||||
for the compression levels 0, 1..3, and 4..9 respectively. The new level
|
|
||||||
and strategy will take effect at the next call of deflate().
|
|
||||||
|
|
||||||
If a deflate(strm, Z_BLOCK) is performed by deflateParams(), and it does
|
Before the call of deflateParams, the stream state must be set as for
|
||||||
not have enough output space to complete, then the parameter change will not
|
a call of deflate(), since the currently available input may have to be
|
||||||
take effect. In this case, deflateParams() can be called again with the
|
compressed and flushed. In particular, strm->avail_out must be non-zero.
|
||||||
same parameters and more output space to try again.
|
|
||||||
|
|
||||||
In order to assure a change in the parameters on the first try, the
|
deflateParams returns Z_OK if success, Z_STREAM_ERROR if the source
|
||||||
deflate stream should be flushed using deflate() with Z_BLOCK or other flush
|
stream state was inconsistent or if a parameter was invalid, Z_BUF_ERROR if
|
||||||
request until strm.avail_out is not zero, before calling deflateParams().
|
strm->avail_out was zero.
|
||||||
Then no more input data should be provided before the deflateParams() call.
|
|
||||||
If this is done, the old level and strategy will be applied to the data
|
|
||||||
compressed before deflateParams(), and the new level and strategy will be
|
|
||||||
applied to the the data compressed after deflateParams().
|
|
||||||
|
|
||||||
deflateParams returns Z_OK on success, Z_STREAM_ERROR if the source stream
|
|
||||||
state was inconsistent or if a parameter was invalid, or Z_BUF_ERROR if
|
|
||||||
there was not enough output space to complete the compression of the
|
|
||||||
available input data before a change in the strategy or approach. Note that
|
|
||||||
in the case of a Z_BUF_ERROR, the parameters are not changed. A return
|
|
||||||
value of Z_BUF_ERROR is not fatal, in which case deflateParams() can be
|
|
||||||
retried with more output space.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN int ZEXPORT deflateTune OF((z_streamp strm,
|
ZEXTERN int ZEXPORT deflateTune OF((z_streamp strm,
|
||||||
|
@ -855,7 +793,7 @@ ZEXTERN int ZEXPORT inflateInit2 OF((z_streamp strm,
|
||||||
is for use with other formats that use the deflate compressed data format
|
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
|
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
|
format is developed using the raw deflate format for compressed data, it is
|
||||||
recommended that a check value such as an Adler-32 or a CRC-32 be applied to
|
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
|
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
|
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.
|
above on the use in deflateInit2() applies to the magnitude of windowBits.
|
||||||
|
@ -864,10 +802,7 @@ ZEXTERN int ZEXPORT inflateInit2 OF((z_streamp strm,
|
||||||
32 to windowBits to enable zlib and gzip decoding with automatic header
|
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
|
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
|
return a Z_DATA_ERROR). If a gzip stream is being decoded, strm->adler is a
|
||||||
CRC-32 instead of an Adler-32. Unlike the gunzip utility and gzread() (see
|
crc32 instead of an adler32.
|
||||||
below), inflate() will not automatically decode concatenated gzip streams.
|
|
||||||
inflate() will return Z_STREAM_END at the end of the gzip stream. The state
|
|
||||||
would need to be reset to continue decoding a subsequent gzip stream.
|
|
||||||
|
|
||||||
inflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough
|
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
|
memory, Z_VERSION_ERROR if the zlib library version is incompatible with the
|
||||||
|
@ -888,7 +823,7 @@ ZEXTERN int ZEXPORT inflateSetDictionary OF((z_streamp strm,
|
||||||
Initializes the decompression dictionary from the given uncompressed byte
|
Initializes the decompression dictionary from the given uncompressed byte
|
||||||
sequence. This function must be called immediately after a call of inflate,
|
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
|
if that call returned Z_NEED_DICT. The dictionary chosen by the compressor
|
||||||
can be determined from the Adler-32 value returned by that call of inflate.
|
can be determined from the adler32 value returned by that call of inflate.
|
||||||
The compressor and decompressor must use exactly the same dictionary (see
|
The compressor and decompressor must use exactly the same dictionary (see
|
||||||
deflateSetDictionary). For raw inflate, this function can be called at any
|
deflateSetDictionary). For raw inflate, this function can be called at any
|
||||||
time to set the dictionary. If the provided dictionary is smaller than the
|
time to set the dictionary. If the provided dictionary is smaller than the
|
||||||
|
@ -899,7 +834,7 @@ ZEXTERN int ZEXPORT inflateSetDictionary OF((z_streamp strm,
|
||||||
inflateSetDictionary returns Z_OK if success, Z_STREAM_ERROR if a
|
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
|
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
|
inconsistent, Z_DATA_ERROR if the given dictionary doesn't match the
|
||||||
expected one (incorrect Adler-32 value). inflateSetDictionary does not
|
expected one (incorrect adler32 value). inflateSetDictionary does not
|
||||||
perform any decompression: this will be done by subsequent calls of
|
perform any decompression: this will be done by subsequent calls of
|
||||||
inflate().
|
inflate().
|
||||||
*/
|
*/
|
||||||
|
@ -957,7 +892,7 @@ ZEXTERN int ZEXPORT inflateCopy OF((z_streamp dest,
|
||||||
ZEXTERN int ZEXPORT inflateReset OF((z_streamp strm));
|
ZEXTERN int ZEXPORT inflateReset OF((z_streamp strm));
|
||||||
/*
|
/*
|
||||||
This function is equivalent to inflateEnd followed by inflateInit,
|
This function is equivalent to inflateEnd followed by inflateInit,
|
||||||
but does not free and reallocate the internal decompression state. The
|
but does not free and reallocate all the internal decompression state. The
|
||||||
stream will keep attributes that may have been set by inflateInit2.
|
stream will keep attributes that may have been set by inflateInit2.
|
||||||
|
|
||||||
inflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
|
inflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
|
||||||
|
@ -969,9 +904,7 @@ ZEXTERN int ZEXPORT inflateReset2 OF((z_streamp strm,
|
||||||
/*
|
/*
|
||||||
This function is the same as inflateReset, but it also permits changing
|
This function is the same as inflateReset, but it also permits changing
|
||||||
the wrap and window size requests. The windowBits parameter is interpreted
|
the wrap and window size requests. The windowBits parameter is interpreted
|
||||||
the same as it is for inflateInit2. If the window size is changed, then the
|
the same as it is for inflateInit2.
|
||||||
memory allocated for the window is freed, and the window will be reallocated
|
|
||||||
by inflate() if needed.
|
|
||||||
|
|
||||||
inflateReset2 returns Z_OK if success, or Z_STREAM_ERROR if the source
|
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
|
stream state was inconsistent (such as zalloc or state being Z_NULL), or if
|
||||||
|
@ -1023,7 +956,7 @@ ZEXTERN long ZEXPORT inflateMark OF((z_streamp strm));
|
||||||
location in the input stream can be determined from avail_in and data_type
|
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.
|
as noted in the description for the Z_BLOCK flush parameter for inflate.
|
||||||
|
|
||||||
inflateMark returns the value noted above, or -65536 if the provided
|
inflateMark returns the value noted above or -1 << 16 if the provided
|
||||||
source stream state was inconsistent.
|
source stream state was inconsistent.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1115,9 +1048,9 @@ ZEXTERN int ZEXPORT inflateBack OF((z_streamp strm,
|
||||||
This routine would normally be used in a utility that reads zip or gzip
|
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
|
files and writes out uncompressed files. The utility would decode the
|
||||||
header and process the trailer on its own, hence this routine expects only
|
header and process the trailer on its own, hence this routine expects only
|
||||||
the raw deflate stream to decompress. This is different from the default
|
the raw deflate stream to decompress. This is different from the normal
|
||||||
behavior of inflate(), which expects a zlib header and trailer around the
|
behavior of inflate(), which expects either a zlib or gzip header and
|
||||||
deflate stream.
|
trailer around the deflate stream.
|
||||||
|
|
||||||
inflateBack() uses two subroutines supplied by the caller that are then
|
inflateBack() uses two subroutines supplied by the caller that are then
|
||||||
called by inflateBack() for input and output. inflateBack() calls those
|
called by inflateBack() for input and output. inflateBack() calls those
|
||||||
|
@ -1127,11 +1060,11 @@ ZEXTERN int ZEXPORT inflateBack OF((z_streamp strm,
|
||||||
typedefs. inflateBack() will call in(in_desc, &buf) which should return the
|
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
|
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
|
there is no input available, in() must return zero--buf is ignored in that
|
||||||
case -- and inflateBack() will return a buffer error. inflateBack() will
|
case--and inflateBack() will return a buffer error. inflateBack() will call
|
||||||
call out(out_desc, buf, len) to write the uncompressed data buf[0..len-1].
|
out(out_desc, buf, len) to write the uncompressed data buf[0..len-1]. out()
|
||||||
out() should return zero on success, or non-zero on failure. If out()
|
should return zero on success, or non-zero on failure. If out() returns
|
||||||
returns non-zero, inflateBack() will return with an error. Neither in() nor
|
non-zero, inflateBack() will return with an error. Neither in() nor out()
|
||||||
out() are permitted to change the contents of the window provided to
|
are permitted to change the contents of the window provided to
|
||||||
inflateBackInit(), which is also the buffer that out() uses to write from.
|
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
|
The length written by out() will be at most the window size. Any non-zero
|
||||||
amount of input may be provided by in().
|
amount of input may be provided by in().
|
||||||
|
@ -1181,7 +1114,7 @@ ZEXTERN uLong ZEXPORT zlibCompileFlags OF((void));
|
||||||
7.6: size of z_off_t
|
7.6: size of z_off_t
|
||||||
|
|
||||||
Compiler, assembler, and debug options:
|
Compiler, assembler, and debug options:
|
||||||
8: ZLIB_DEBUG
|
8: DEBUG
|
||||||
9: ASMV or ASMINF -- use ASM code
|
9: ASMV or ASMINF -- use ASM code
|
||||||
10: ZLIB_WINAPI -- exported functions use the WINAPI calling convention
|
10: ZLIB_WINAPI -- exported functions use the WINAPI calling convention
|
||||||
11: 0 (reserved)
|
11: 0 (reserved)
|
||||||
|
@ -1231,8 +1164,7 @@ ZEXTERN int ZEXPORT compress OF((Bytef *dest, uLongf *destLen,
|
||||||
the byte length of the source buffer. Upon entry, destLen is the total size
|
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
|
of the destination buffer, which must be at least the value returned by
|
||||||
compressBound(sourceLen). Upon exit, destLen is the actual size of the
|
compressBound(sourceLen). Upon exit, destLen is the actual size of the
|
||||||
compressed data. compress() is equivalent to compress2() with a level
|
compressed buffer.
|
||||||
parameter of Z_DEFAULT_COMPRESSION.
|
|
||||||
|
|
||||||
compress returns Z_OK if success, Z_MEM_ERROR if there was not
|
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
|
enough memory, Z_BUF_ERROR if there was not enough room in the output
|
||||||
|
@ -1248,7 +1180,7 @@ ZEXTERN int ZEXPORT compress2 OF((Bytef *dest, uLongf *destLen,
|
||||||
length of the source buffer. Upon entry, destLen is the total size of the
|
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
|
destination buffer, which must be at least the value returned by
|
||||||
compressBound(sourceLen). Upon exit, destLen is the actual size of the
|
compressBound(sourceLen). Upon exit, destLen is the actual size of the
|
||||||
compressed data.
|
compressed buffer.
|
||||||
|
|
||||||
compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough
|
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,
|
memory, Z_BUF_ERROR if there was not enough room in the output buffer,
|
||||||
|
@ -1271,7 +1203,7 @@ ZEXTERN int ZEXPORT uncompress OF((Bytef *dest, uLongf *destLen,
|
||||||
uncompressed data. (The size of the uncompressed data must have been saved
|
uncompressed data. (The size of the uncompressed data must have been saved
|
||||||
previously by the compressor and transmitted to the decompressor by some
|
previously by the compressor and transmitted to the decompressor by some
|
||||||
mechanism outside the scope of this compression library.) Upon exit, destLen
|
mechanism outside the scope of this compression library.) Upon exit, destLen
|
||||||
is the actual size of the uncompressed data.
|
is the actual size of the uncompressed buffer.
|
||||||
|
|
||||||
uncompress returns Z_OK if success, Z_MEM_ERROR if there was not
|
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
|
enough memory, Z_BUF_ERROR if there was not enough room in the output
|
||||||
|
@ -1280,14 +1212,6 @@ ZEXTERN int ZEXPORT uncompress OF((Bytef *dest, uLongf *destLen,
|
||||||
buffer with the uncompressed data up to that point.
|
buffer with the uncompressed data up to that point.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN int ZEXPORT uncompress2 OF((Bytef *dest, uLongf *destLen,
|
|
||||||
const Bytef *source, uLong *sourceLen));
|
|
||||||
/*
|
|
||||||
Same as uncompress, except that sourceLen is a pointer, where the
|
|
||||||
length of the source is *sourceLen. On return, *sourceLen is the number of
|
|
||||||
source bytes consumed.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* gzip file access functions */
|
/* gzip file access functions */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -1366,9 +1290,10 @@ ZEXTERN int ZEXPORT gzbuffer OF((gzFile file, unsigned size));
|
||||||
default buffer size is 8192 bytes. This function must be called after
|
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
|
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
|
file. The buffer memory allocation is always deferred to the first read or
|
||||||
write. Three times that size in buffer space is allocated. A larger buffer
|
write. Two buffers are allocated, either both of the specified size when
|
||||||
size of, for example, 64K or 128K bytes will noticeably increase the speed
|
writing, or one of the specified size and the other twice that size when
|
||||||
of decompression (reading).
|
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().
|
The new buffer size also affects the maximum length for gzprintf().
|
||||||
|
|
||||||
|
@ -1379,12 +1304,10 @@ ZEXTERN int ZEXPORT gzbuffer OF((gzFile file, unsigned size));
|
||||||
ZEXTERN int ZEXPORT gzsetparams OF((gzFile file, int level, int strategy));
|
ZEXTERN int ZEXPORT gzsetparams OF((gzFile file, int level, int strategy));
|
||||||
/*
|
/*
|
||||||
Dynamically update the compression level or strategy. See the description
|
Dynamically update the compression level or strategy. See the description
|
||||||
of deflateInit2 for the meaning of these parameters. Previously provided
|
of deflateInit2 for the meaning of these parameters.
|
||||||
data is flushed before the parameter change.
|
|
||||||
|
|
||||||
gzsetparams returns Z_OK if success, Z_STREAM_ERROR if the file was not
|
gzsetparams returns Z_OK if success, or Z_STREAM_ERROR if the file was not
|
||||||
opened for writing, Z_ERRNO if there is an error writing the flushed data,
|
opened for writing.
|
||||||
or Z_MEM_ERROR if there is a memory allocation error.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN int ZEXPORT gzread OF((gzFile file, voidp buf, unsigned len));
|
ZEXTERN int ZEXPORT gzread OF((gzFile file, voidp buf, unsigned len));
|
||||||
|
@ -1412,35 +1335,7 @@ ZEXTERN int ZEXPORT gzread OF((gzFile file, voidp buf, unsigned len));
|
||||||
case.
|
case.
|
||||||
|
|
||||||
gzread returns the number of uncompressed bytes actually read, less than
|
gzread returns the number of uncompressed bytes actually read, less than
|
||||||
len for end of file, or -1 for error. If len is too large to fit in an int,
|
len for end of file, or -1 for error.
|
||||||
then nothing is read, -1 is returned, and the error state is set to
|
|
||||||
Z_STREAM_ERROR.
|
|
||||||
*/
|
|
||||||
|
|
||||||
ZEXTERN z_size_t ZEXPORT gzfread OF((voidp buf, z_size_t size, z_size_t nitems,
|
|
||||||
gzFile file));
|
|
||||||
/*
|
|
||||||
Read up to nitems items of size size from file to buf, otherwise operating
|
|
||||||
as gzread() does. This duplicates the interface of stdio's fread(), with
|
|
||||||
size_t request and return types. If the library defines size_t, then
|
|
||||||
z_size_t is identical to size_t. If not, then z_size_t is an unsigned
|
|
||||||
integer type that can contain a pointer.
|
|
||||||
|
|
||||||
gzfread() returns the number of full items read of size size, or zero if
|
|
||||||
the end of the file was reached and a full item could not be read, or if
|
|
||||||
there was an error. gzerror() must be consulted if zero is returned in
|
|
||||||
order to determine if there was an error. If the multiplication of size and
|
|
||||||
nitems overflows, i.e. the product does not fit in a z_size_t, then nothing
|
|
||||||
is read, zero is returned, and the error state is set to Z_STREAM_ERROR.
|
|
||||||
|
|
||||||
In the event that the end of file is reached and only a partial item is
|
|
||||||
available at the end, i.e. the remaining uncompressed data length is not a
|
|
||||||
multiple of size, then the final partial item is nevetheless read into buf
|
|
||||||
and the end-of-file flag is set. The length of the partial item read is not
|
|
||||||
provided, but could be inferred from the result of gztell(). This behavior
|
|
||||||
is the same as the behavior of fread() implementations in common libraries,
|
|
||||||
but it prevents the direct use of gzfread() to read a concurrently written
|
|
||||||
file, reseting and retrying on end-of-file, when size is not 1.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN int ZEXPORT gzwrite OF((gzFile file,
|
ZEXTERN int ZEXPORT gzwrite OF((gzFile file,
|
||||||
|
@ -1451,33 +1346,19 @@ ZEXTERN int ZEXPORT gzwrite OF((gzFile file,
|
||||||
error.
|
error.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN z_size_t ZEXPORT gzfwrite OF((voidpc buf, z_size_t size,
|
|
||||||
z_size_t nitems, gzFile file));
|
|
||||||
/*
|
|
||||||
gzfwrite() writes nitems items of size size from buf to file, duplicating
|
|
||||||
the interface of stdio's fwrite(), with size_t request and return types. If
|
|
||||||
the library defines size_t, then z_size_t is identical to size_t. If not,
|
|
||||||
then z_size_t is an unsigned integer type that can contain a pointer.
|
|
||||||
|
|
||||||
gzfwrite() returns the number of full items written of size size, or zero
|
|
||||||
if there was an error. If the multiplication of size and nitems overflows,
|
|
||||||
i.e. the product does not fit in a z_size_t, then nothing is written, zero
|
|
||||||
is returned, and the error state is set to Z_STREAM_ERROR.
|
|
||||||
*/
|
|
||||||
|
|
||||||
ZEXTERN int ZEXPORTVA gzprintf Z_ARG((gzFile file, const char *format, ...));
|
ZEXTERN int ZEXPORTVA gzprintf Z_ARG((gzFile file, const char *format, ...));
|
||||||
/*
|
/*
|
||||||
Converts, formats, and writes the arguments to the compressed file under
|
Converts, formats, and writes the arguments to the compressed file under
|
||||||
control of the format string, as in fprintf. gzprintf returns the number of
|
control of the format string, as in fprintf. gzprintf returns the number of
|
||||||
uncompressed bytes actually written, or a negative zlib error code in case
|
uncompressed bytes actually written, or 0 in case of error. The number of
|
||||||
of error. The number of uncompressed bytes written is limited to 8191, or
|
uncompressed bytes written is limited to 8191, or one less than the buffer
|
||||||
one less than the buffer size given to gzbuffer(). The caller should assure
|
size given to gzbuffer(). The caller should assure that this limit is not
|
||||||
that this limit is not exceeded. If it is exceeded, then gzprintf() will
|
exceeded. If it is exceeded, then gzprintf() will return an error (0) with
|
||||||
return an error (0) with nothing written. In this case, there may also be a
|
nothing written. In this case, there may also be a buffer overflow with
|
||||||
buffer overflow with unpredictable consequences, which is possible only if
|
unpredictable consequences, which is possible only if zlib was compiled with
|
||||||
zlib was compiled with the insecure functions sprintf() or vsprintf()
|
the insecure functions sprintf() or vsprintf() because the secure snprintf()
|
||||||
because the secure snprintf() or vsnprintf() functions were not available.
|
or vsnprintf() functions were not available. This can be determined using
|
||||||
This can be determined using zlibCompileFlags().
|
zlibCompileFlags().
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN int ZEXPORT gzputs OF((gzFile file, const char *s));
|
ZEXTERN int ZEXPORT gzputs OF((gzFile file, const char *s));
|
||||||
|
@ -1537,7 +1418,7 @@ ZEXTERN int ZEXPORT gzflush OF((gzFile file, int flush));
|
||||||
If the flush parameter is Z_FINISH, the remaining data is written and the
|
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 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
|
gzip stream will be started in the output. gzread() is able to read such
|
||||||
concatenated gzip streams.
|
concatented gzip streams.
|
||||||
|
|
||||||
gzflush should be called only when strictly necessary because it will
|
gzflush should be called only when strictly necessary because it will
|
||||||
degrade compression if called too often.
|
degrade compression if called too often.
|
||||||
|
@ -1691,7 +1572,7 @@ ZEXTERN uLong ZEXPORT adler32 OF((uLong adler, const Bytef *buf, uInt len));
|
||||||
return the updated checksum. If buf is Z_NULL, this function returns the
|
return the updated checksum. If buf is Z_NULL, this function returns the
|
||||||
required initial value for the checksum.
|
required initial value for the checksum.
|
||||||
|
|
||||||
An Adler-32 checksum is almost as reliable as a CRC-32 but can be computed
|
An Adler-32 checksum is almost as reliable as a CRC32 but can be computed
|
||||||
much faster.
|
much faster.
|
||||||
|
|
||||||
Usage example:
|
Usage example:
|
||||||
|
@ -1704,12 +1585,6 @@ ZEXTERN uLong ZEXPORT adler32 OF((uLong adler, const Bytef *buf, uInt len));
|
||||||
if (adler != original_adler) error();
|
if (adler != original_adler) error();
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN uLong ZEXPORT adler32_z OF((uLong adler, const Bytef *buf,
|
|
||||||
z_size_t len));
|
|
||||||
/*
|
|
||||||
Same as adler32(), but with a size_t length.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
ZEXTERN uLong ZEXPORT adler32_combine OF((uLong adler1, uLong adler2,
|
ZEXTERN uLong ZEXPORT adler32_combine OF((uLong adler1, uLong adler2,
|
||||||
z_off_t len2));
|
z_off_t len2));
|
||||||
|
@ -1739,12 +1614,6 @@ ZEXTERN uLong ZEXPORT crc32 OF((uLong crc, const Bytef *buf, uInt len));
|
||||||
if (crc != original_crc) error();
|
if (crc != original_crc) error();
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ZEXTERN uLong ZEXPORT crc32_z OF((uLong adler, const Bytef *buf,
|
|
||||||
z_size_t len));
|
|
||||||
/*
|
|
||||||
Same as crc32(), but with a size_t length.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
ZEXTERN uLong ZEXPORT crc32_combine OF((uLong crc1, uLong crc2, z_off_t len2));
|
ZEXTERN uLong ZEXPORT crc32_combine OF((uLong crc1, uLong crc2, z_off_t len2));
|
||||||
|
|
||||||
|
@ -1775,21 +1644,6 @@ ZEXTERN int ZEXPORT inflateBackInit_ OF((z_streamp strm, int windowBits,
|
||||||
unsigned char FAR *window,
|
unsigned char FAR *window,
|
||||||
const char *version,
|
const char *version,
|
||||||
int stream_size));
|
int stream_size));
|
||||||
#ifdef Z_PREFIX_SET
|
|
||||||
# define z_deflateInit(strm, level) \
|
|
||||||
deflateInit_((strm), (level), ZLIB_VERSION, (int)sizeof(z_stream))
|
|
||||||
# define z_inflateInit(strm) \
|
|
||||||
inflateInit_((strm), ZLIB_VERSION, (int)sizeof(z_stream))
|
|
||||||
# define z_deflateInit2(strm, level, method, windowBits, memLevel, strategy) \
|
|
||||||
deflateInit2_((strm),(level),(method),(windowBits),(memLevel),\
|
|
||||||
(strategy), ZLIB_VERSION, (int)sizeof(z_stream))
|
|
||||||
# define z_inflateInit2(strm, windowBits) \
|
|
||||||
inflateInit2_((strm), (windowBits), ZLIB_VERSION, \
|
|
||||||
(int)sizeof(z_stream))
|
|
||||||
# define z_inflateBackInit(strm, windowBits, window) \
|
|
||||||
inflateBackInit_((strm), (windowBits), (window), \
|
|
||||||
ZLIB_VERSION, (int)sizeof(z_stream))
|
|
||||||
#else
|
|
||||||
#define deflateInit(strm, level) \
|
#define deflateInit(strm, level) \
|
||||||
deflateInit_((strm), (level), ZLIB_VERSION, (int)sizeof(z_stream))
|
deflateInit_((strm), (level), ZLIB_VERSION, (int)sizeof(z_stream))
|
||||||
#define inflateInit(strm) \
|
#define inflateInit(strm) \
|
||||||
|
@ -1803,7 +1657,6 @@ ZEXTERN int ZEXPORT inflateBackInit_ OF((z_streamp strm, int windowBits,
|
||||||
#define inflateBackInit(strm, windowBits, window) \
|
#define inflateBackInit(strm, windowBits, window) \
|
||||||
inflateBackInit_((strm), (windowBits), (window), \
|
inflateBackInit_((strm), (windowBits), (window), \
|
||||||
ZLIB_VERSION, (int)sizeof(z_stream))
|
ZLIB_VERSION, (int)sizeof(z_stream))
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef Z_SOLO
|
#ifndef Z_SOLO
|
||||||
|
|
||||||
|
@ -1823,10 +1676,10 @@ ZEXTERN int ZEXPORT gzgetc_ OF((gzFile file)); /* backward compatibility */
|
||||||
#ifdef Z_PREFIX_SET
|
#ifdef Z_PREFIX_SET
|
||||||
# undef z_gzgetc
|
# undef z_gzgetc
|
||||||
# define z_gzgetc(g) \
|
# define z_gzgetc(g) \
|
||||||
((g)->have ? ((g)->have--, (g)->pos++, *((g)->next)++) : (gzgetc)(g))
|
((g)->have ? ((g)->have--, (g)->pos++, *((g)->next)++) : gzgetc(g))
|
||||||
#else
|
#else
|
||||||
# define gzgetc(g) \
|
# define gzgetc(g) \
|
||||||
((g)->have ? ((g)->have--, (g)->pos++, *((g)->next)++) : (gzgetc)(g))
|
((g)->have ? ((g)->have--, (g)->pos++, *((g)->next)++) : gzgetc(g))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* provide 64-bit offset functions if _LARGEFILE64_SOURCE defined, and/or
|
/* provide 64-bit offset functions if _LARGEFILE64_SOURCE defined, and/or
|
||||||
|
@ -1884,16 +1737,19 @@ ZEXTERN int ZEXPORT gzgetc_ OF((gzFile file)); /* backward compatibility */
|
||||||
|
|
||||||
#endif /* !Z_SOLO */
|
#endif /* !Z_SOLO */
|
||||||
|
|
||||||
|
/* hack for buggy compilers */
|
||||||
|
#if !defined(ZUTIL_H) && !defined(NO_DUMMY_DECL)
|
||||||
|
struct internal_state {int dummy;};
|
||||||
|
#endif
|
||||||
|
|
||||||
/* undocumented functions */
|
/* undocumented functions */
|
||||||
ZEXTERN const char * ZEXPORT zError OF((int));
|
ZEXTERN const char * ZEXPORT zError OF((int));
|
||||||
ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp));
|
ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp));
|
||||||
ZEXTERN const z_crc_t FAR * ZEXPORT get_crc_table OF((void));
|
ZEXTERN const z_crc_t FAR * ZEXPORT get_crc_table OF((void));
|
||||||
ZEXTERN int ZEXPORT inflateUndermine OF((z_streamp, int));
|
ZEXTERN int ZEXPORT inflateUndermine OF((z_streamp, int));
|
||||||
ZEXTERN int ZEXPORT inflateValidate OF((z_streamp, int));
|
|
||||||
ZEXTERN unsigned long ZEXPORT inflateCodesUsed OF ((z_streamp));
|
|
||||||
ZEXTERN int ZEXPORT inflateResetKeep OF((z_streamp));
|
ZEXTERN int ZEXPORT inflateResetKeep OF((z_streamp));
|
||||||
ZEXTERN int ZEXPORT deflateResetKeep OF((z_streamp));
|
ZEXTERN int ZEXPORT deflateResetKeep OF((z_streamp));
|
||||||
#if (defined(_WIN32) || defined(__CYGWIN__)) && !defined(Z_SOLO)
|
#if defined(_WIN32) && !defined(Z_SOLO)
|
||||||
ZEXTERN gzFile ZEXPORT gzopen_w OF((const wchar_t *path,
|
ZEXTERN gzFile ZEXPORT gzopen_w OF((const wchar_t *path,
|
||||||
const char *mode));
|
const char *mode));
|
||||||
#endif
|
#endif
|
||||||
|
|
Binary file not shown.
|
@ -1,4 +1,4 @@
|
||||||
prefix=/home/luoliangyi/sane/code_app/third_party/zlib/kylin/amd64/zlib-1.2.11/release
|
prefix=/home/luoliangyi/sane/code_app/third_party/zlib/kylin/amd64/zlib-1.2.8/release
|
||||||
exec_prefix=${prefix}
|
exec_prefix=${prefix}
|
||||||
libdir=${exec_prefix}/lib
|
libdir=${exec_prefix}/lib
|
||||||
sharedlibdir=${libdir}
|
sharedlibdir=${libdir}
|
||||||
|
@ -6,7 +6,7 @@ includedir=${prefix}/include
|
||||||
|
|
||||||
Name: zlib
|
Name: zlib
|
||||||
Description: zlib compression library
|
Description: zlib compression library
|
||||||
Version: 1.2.11
|
Version: 1.2.8
|
||||||
|
|
||||||
Requires:
|
Requires:
|
||||||
Libs: -L${libdir} -L${sharedlibdir} -lz
|
Libs: -L${libdir} -L${sharedlibdir} -lz
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue