Hex Artifact Content

Artifact a58f1281a60219cc90a2c23772f03c2131b44182:


0000: 2f 2a 20 7a 63 6f 6e 66 2e 68 20 2d 2d 20 63 6f  /* zconf.h -- co
0010: 6e 66 69 67 75 72 61 74 69 6f 6e 20 6f 66 20 74  nfiguration of t
0020: 68 65 20 7a 6c 69 62 20 63 6f 6d 70 72 65 73 73  he zlib compress
0030: 69 6f 6e 20 6c 69 62 72 61 72 79 0a 20 2a 20 43  ion library. * C
0040: 6f 70 79 72 69 67 68 74 20 28 43 29 20 31 39 39  opyright (C) 199
0050: 35 2d 32 30 31 33 20 4a 65 61 6e 2d 6c 6f 75 70  5-2013 Jean-loup
0060: 20 47 61 69 6c 6c 79 2e 0a 20 2a 20 46 6f 72 20   Gailly.. * For 
0070: 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 20 64 69  conditions of di
0080: 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 75  stribution and u
0090: 73 65 2c 20 73 65 65 20 63 6f 70 79 72 69 67 68  se, see copyrigh
00a0: 74 20 6e 6f 74 69 63 65 20 69 6e 20 7a 6c 69 62  t notice in zlib
00b0: 2e 68 0a 20 2a 2f 0a 0a 2f 2a 20 40 28 23 29 20  .h. */../* @(#) 
00c0: 24 49 64 24 20 2a 2f 0a 0a 23 69 66 6e 64 65 66  $Id$ */..#ifndef
00d0: 20 5a 43 4f 4e 46 5f 48 0a 23 64 65 66 69 6e 65   ZCONF_H.#define
00e0: 20 5a 43 4f 4e 46 5f 48 0a 0a 2f 2a 0a 20 2a 20   ZCONF_H../*. * 
00f0: 49 66 20 79 6f 75 20 2a 72 65 61 6c 6c 79 2a 20  If you *really* 
0100: 6e 65 65 64 20 61 20 75 6e 69 71 75 65 20 70 72  need a unique pr
0110: 65 66 69 78 20 66 6f 72 20 61 6c 6c 20 74 79 70  efix for all typ
0120: 65 73 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66  es and library f
0130: 75 6e 63 74 69 6f 6e 73 2c 0a 20 2a 20 63 6f 6d  unctions,. * com
0140: 70 69 6c 65 20 77 69 74 68 20 2d 44 5a 5f 50 52  pile with -DZ_PR
0150: 45 46 49 58 2e 20 54 68 65 20 22 73 74 61 6e 64  EFIX. The "stand
0160: 61 72 64 22 20 7a 6c 69 62 20 73 68 6f 75 6c 64  ard" zlib should
0170: 20 62 65 20 63 6f 6d 70 69 6c 65 64 20 77 69 74   be compiled wit
0180: 68 6f 75 74 20 69 74 2e 0a 20 2a 20 45 76 65 6e  hout it.. * Even
0190: 20 62 65 74 74 65 72 20 74 68 61 6e 20 63 6f 6d   better than com
01a0: 70 69 6c 69 6e 67 20 77 69 74 68 20 2d 44 5a 5f  piling with -DZ_
01b0: 50 52 45 46 49 58 20 77 6f 75 6c 64 20 62 65 20  PREFIX would be 
01c0: 74 6f 20 75 73 65 20 63 6f 6e 66 69 67 75 72 65  to use configure
01d0: 20 74 6f 20 73 65 74 0a 20 2a 20 74 68 69 73 20   to set. * this 
01e0: 70 65 72 6d 61 6e 65 6e 74 6c 79 20 69 6e 20 7a  permanently in z
01f0: 63 6f 6e 66 2e 68 20 75 73 69 6e 67 20 22 2e 2f  conf.h using "./
0200: 63 6f 6e 66 69 67 75 72 65 20 2d 2d 7a 70 72 65  configure --zpre
0210: 66 69 78 22 2e 0a 20 2a 2f 0a 23 69 66 64 65 66  fix".. */.#ifdef
0220: 20 5a 5f 50 52 45 46 49 58 20 20 20 20 20 2f 2a   Z_PREFIX     /*
0230: 20 6d 61 79 20 62 65 20 73 65 74 20 74 6f 20 23   may be set to #
0240: 69 66 20 31 20 62 79 20 2e 2f 63 6f 6e 66 69 67  if 1 by ./config
0250: 75 72 65 20 2a 2f 0a 23 20 20 64 65 66 69 6e 65  ure */.#  define
0260: 20 5a 5f 50 52 45 46 49 58 5f 53 45 54 0a 0a 2f   Z_PREFIX_SET../
0270: 2a 20 61 6c 6c 20 6c 69 6e 6b 65 64 20 73 79 6d  * all linked sym
0280: 62 6f 6c 73 20 2a 2f 0a 23 20 20 64 65 66 69 6e  bols */.#  defin
0290: 65 20 5f 64 69 73 74 5f 63 6f 64 65 20 20 20 20  e _dist_code    
02a0: 20 20 20 20 20 20 20 20 7a 5f 5f 64 69 73 74 5f          z__dist_
02b0: 63 6f 64 65 0a 23 20 20 64 65 66 69 6e 65 20 5f  code.#  define _
02c0: 6c 65 6e 67 74 68 5f 63 6f 64 65 20 20 20 20 20  length_code     
02d0: 20 20 20 20 20 7a 5f 5f 6c 65 6e 67 74 68 5f 63       z__length_c
02e0: 6f 64 65 0a 23 20 20 64 65 66 69 6e 65 20 5f 74  ode.#  define _t
02f0: 72 5f 61 6c 69 67 6e 20 20 20 20 20 20 20 20 20  r_align         
0300: 20 20 20 20 7a 5f 5f 74 72 5f 61 6c 69 67 6e 0a      z__tr_align.
0310: 23 20 20 64 65 66 69 6e 65 20 5f 74 72 5f 66 6c  #  define _tr_fl
0320: 75 73 68 5f 62 69 74 73 20 20 20 20 20 20 20 20  ush_bits        
0330: 7a 5f 5f 74 72 5f 66 6c 75 73 68 5f 62 69 74 73  z__tr_flush_bits
0340: 0a 23 20 20 64 65 66 69 6e 65 20 5f 74 72 5f 66  .#  define _tr_f
0350: 6c 75 73 68 5f 62 6c 6f 63 6b 20 20 20 20 20 20  lush_block      
0360: 20 7a 5f 5f 74 72 5f 66 6c 75 73 68 5f 62 6c 6f   z__tr_flush_blo
0370: 63 6b 0a 23 20 20 64 65 66 69 6e 65 20 5f 74 72  ck.#  define _tr
0380: 5f 69 6e 69 74 20 20 20 20 20 20 20 20 20 20 20  _init           
0390: 20 20 20 7a 5f 5f 74 72 5f 69 6e 69 74 0a 23 20     z__tr_init.# 
03a0: 20 64 65 66 69 6e 65 20 5f 74 72 5f 73 74 6f 72   define _tr_stor
03b0: 65 64 5f 62 6c 6f 63 6b 20 20 20 20 20 20 7a 5f  ed_block      z_
03c0: 5f 74 72 5f 73 74 6f 72 65 64 5f 62 6c 6f 63 6b  _tr_stored_block
03d0: 0a 23 20 20 64 65 66 69 6e 65 20 5f 74 72 5f 74  .#  define _tr_t
03e0: 61 6c 6c 79 20 20 20 20 20 20 20 20 20 20 20 20  ally            
03f0: 20 7a 5f 5f 74 72 5f 74 61 6c 6c 79 0a 23 20 20   z__tr_tally.#  
0400: 64 65 66 69 6e 65 20 61 64 6c 65 72 33 32 20 20  define adler32  
0410: 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 61               z_a
0420: 64 6c 65 72 33 32 0a 23 20 20 64 65 66 69 6e 65  dler32.#  define
0430: 20 61 64 6c 65 72 33 32 5f 63 6f 6d 62 69 6e 65   adler32_combine
0440: 20 20 20 20 20 20 20 7a 5f 61 64 6c 65 72 33 32         z_adler32
0450: 5f 63 6f 6d 62 69 6e 65 0a 23 20 20 64 65 66 69  _combine.#  defi
0460: 6e 65 20 61 64 6c 65 72 33 32 5f 63 6f 6d 62 69  ne adler32_combi
0470: 6e 65 36 34 20 20 20 20 20 7a 5f 61 64 6c 65 72  ne64     z_adler
0480: 33 32 5f 63 6f 6d 62 69 6e 65 36 34 0a 23 20 20  32_combine64.#  
0490: 69 66 6e 64 65 66 20 5a 5f 53 4f 4c 4f 0a 23 20  ifndef Z_SOLO.# 
04a0: 20 20 20 64 65 66 69 6e 65 20 63 6f 6d 70 72 65     define compre
04b0: 73 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ss              
04c0: 7a 5f 63 6f 6d 70 72 65 73 73 0a 23 20 20 20 20  z_compress.#    
04d0: 64 65 66 69 6e 65 20 63 6f 6d 70 72 65 73 73 32  define compress2
04e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 63               z_c
04f0: 6f 6d 70 72 65 73 73 32 0a 23 20 20 20 20 64 65  ompress2.#    de
0500: 66 69 6e 65 20 63 6f 6d 70 72 65 73 73 42 6f 75  fine compressBou
0510: 6e 64 20 20 20 20 20 20 20 20 20 7a 5f 63 6f 6d  nd         z_com
0520: 70 72 65 73 73 42 6f 75 6e 64 0a 23 20 20 65 6e  pressBound.#  en
0530: 64 69 66 0a 23 20 20 64 65 66 69 6e 65 20 63 72  dif.#  define cr
0540: 63 33 32 20 20 20 20 20 20 20 20 20 20 20 20 20  c32             
0550: 20 20 20 20 7a 5f 63 72 63 33 32 0a 23 20 20 64      z_crc32.#  d
0560: 65 66 69 6e 65 20 63 72 63 33 32 5f 63 6f 6d 62  efine crc32_comb
0570: 69 6e 65 20 20 20 20 20 20 20 20 20 7a 5f 63 72  ine         z_cr
0580: 63 33 32 5f 63 6f 6d 62 69 6e 65 0a 23 20 20 64  c32_combine.#  d
0590: 65 66 69 6e 65 20 63 72 63 33 32 5f 63 6f 6d 62  efine crc32_comb
05a0: 69 6e 65 36 34 20 20 20 20 20 20 20 7a 5f 63 72  ine64       z_cr
05b0: 63 33 32 5f 63 6f 6d 62 69 6e 65 36 34 0a 23 20  c32_combine64.# 
05c0: 20 64 65 66 69 6e 65 20 64 65 66 6c 61 74 65 20   define deflate 
05d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f                z_
05e0: 64 65 66 6c 61 74 65 0a 23 20 20 64 65 66 69 6e  deflate.#  defin
05f0: 65 20 64 65 66 6c 61 74 65 42 6f 75 6e 64 20 20  e deflateBound  
0600: 20 20 20 20 20 20 20 20 7a 5f 64 65 66 6c 61 74          z_deflat
0610: 65 42 6f 75 6e 64 0a 23 20 20 64 65 66 69 6e 65  eBound.#  define
0620: 20 64 65 66 6c 61 74 65 43 6f 70 79 20 20 20 20   deflateCopy    
0630: 20 20 20 20 20 20 20 7a 5f 64 65 66 6c 61 74 65         z_deflate
0640: 43 6f 70 79 0a 23 20 20 64 65 66 69 6e 65 20 64  Copy.#  define d
0650: 65 66 6c 61 74 65 45 6e 64 20 20 20 20 20 20 20  eflateEnd       
0660: 20 20 20 20 20 7a 5f 64 65 66 6c 61 74 65 45 6e       z_deflateEn
0670: 64 0a 23 20 20 64 65 66 69 6e 65 20 64 65 66 6c  d.#  define defl
0680: 61 74 65 49 6e 69 74 32 5f 20 20 20 20 20 20 20  ateInit2_       
0690: 20 20 7a 5f 64 65 66 6c 61 74 65 49 6e 69 74 32    z_deflateInit2
06a0: 5f 0a 23 20 20 64 65 66 69 6e 65 20 64 65 66 6c  _.#  define defl
06b0: 61 74 65 49 6e 69 74 5f 20 20 20 20 20 20 20 20  ateInit_        
06c0: 20 20 7a 5f 64 65 66 6c 61 74 65 49 6e 69 74 5f    z_deflateInit_
06d0: 0a 23 20 20 64 65 66 69 6e 65 20 64 65 66 6c 61  .#  define defla
06e0: 74 65 50 61 72 61 6d 73 20 20 20 20 20 20 20 20  teParams        
06f0: 20 7a 5f 64 65 66 6c 61 74 65 50 61 72 61 6d 73   z_deflateParams
0700: 0a 23 20 20 64 65 66 69 6e 65 20 64 65 66 6c 61  .#  define defla
0710: 74 65 50 65 6e 64 69 6e 67 20 20 20 20 20 20 20  tePending       
0720: 20 7a 5f 64 65 66 6c 61 74 65 50 65 6e 64 69 6e   z_deflatePendin
0730: 67 0a 23 20 20 64 65 66 69 6e 65 20 64 65 66 6c  g.#  define defl
0740: 61 74 65 50 72 69 6d 65 20 20 20 20 20 20 20 20  atePrime        
0750: 20 20 7a 5f 64 65 66 6c 61 74 65 50 72 69 6d 65    z_deflatePrime
0760: 0a 23 20 20 64 65 66 69 6e 65 20 64 65 66 6c 61  .#  define defla
0770: 74 65 52 65 73 65 74 20 20 20 20 20 20 20 20 20  teReset         
0780: 20 7a 5f 64 65 66 6c 61 74 65 52 65 73 65 74 0a   z_deflateReset.
0790: 23 20 20 64 65 66 69 6e 65 20 64 65 66 6c 61 74  #  define deflat
07a0: 65 52 65 73 65 74 4b 65 65 70 20 20 20 20 20 20  eResetKeep      
07b0: 7a 5f 64 65 66 6c 61 74 65 52 65 73 65 74 4b 65  z_deflateResetKe
07c0: 65 70 0a 23 20 20 64 65 66 69 6e 65 20 64 65 66  ep.#  define def
07d0: 6c 61 74 65 53 65 74 44 69 63 74 69 6f 6e 61 72  lateSetDictionar
07e0: 79 20 20 7a 5f 64 65 66 6c 61 74 65 53 65 74 44  y  z_deflateSetD
07f0: 69 63 74 69 6f 6e 61 72 79 0a 23 20 20 64 65 66  ictionary.#  def
0800: 69 6e 65 20 64 65 66 6c 61 74 65 53 65 74 48 65  ine deflateSetHe
0810: 61 64 65 72 20 20 20 20 20 20 7a 5f 64 65 66 6c  ader      z_defl
0820: 61 74 65 53 65 74 48 65 61 64 65 72 0a 23 20 20  ateSetHeader.#  
0830: 64 65 66 69 6e 65 20 64 65 66 6c 61 74 65 54 75  define deflateTu
0840: 6e 65 20 20 20 20 20 20 20 20 20 20 20 7a 5f 64  ne           z_d
0850: 65 66 6c 61 74 65 54 75 6e 65 0a 23 20 20 64 65  eflateTune.#  de
0860: 66 69 6e 65 20 64 65 66 6c 61 74 65 5f 63 6f 70  fine deflate_cop
0870: 79 72 69 67 68 74 20 20 20 20 20 7a 5f 64 65 66  yright     z_def
0880: 6c 61 74 65 5f 63 6f 70 79 72 69 67 68 74 0a 23  late_copyright.#
0890: 20 20 64 65 66 69 6e 65 20 67 65 74 5f 63 72 63    define get_crc
08a0: 5f 74 61 62 6c 65 20 20 20 20 20 20 20 20 20 7a  _table         z
08b0: 5f 67 65 74 5f 63 72 63 5f 74 61 62 6c 65 0a 23  _get_crc_table.#
08c0: 20 20 69 66 6e 64 65 66 20 5a 5f 53 4f 4c 4f 0a    ifndef Z_SOLO.
08d0: 23 20 20 20 20 64 65 66 69 6e 65 20 67 7a 5f 65  #    define gz_e
08e0: 72 72 6f 72 20 20 20 20 20 20 20 20 20 20 20 20  rror            
08f0: 20 20 7a 5f 67 7a 5f 65 72 72 6f 72 0a 23 20 20    z_gz_error.#  
0900: 20 20 64 65 66 69 6e 65 20 67 7a 5f 69 6e 74 6d    define gz_intm
0910: 61 78 20 20 20 20 20 20 20 20 20 20 20 20 20 7a  ax             z
0920: 5f 67 7a 5f 69 6e 74 6d 61 78 0a 23 20 20 20 20  _gz_intmax.#    
0930: 64 65 66 69 6e 65 20 67 7a 5f 73 74 72 77 69 6e  define gz_strwin
0940: 65 72 72 6f 72 20 20 20 20 20 20 20 20 7a 5f 67  error        z_g
0950: 7a 5f 73 74 72 77 69 6e 65 72 72 6f 72 0a 23 20  z_strwinerror.# 
0960: 20 20 20 64 65 66 69 6e 65 20 67 7a 62 75 66 66     define gzbuff
0970: 65 72 20 20 20 20 20 20 20 20 20 20 20 20 20 20  er              
0980: 7a 5f 67 7a 62 75 66 66 65 72 0a 23 20 20 20 20  z_gzbuffer.#    
0990: 64 65 66 69 6e 65 20 67 7a 63 6c 65 61 72 65 72  define gzclearer
09a0: 72 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67  r            z_g
09b0: 7a 63 6c 65 61 72 65 72 72 0a 23 20 20 20 20 64  zclearerr.#    d
09c0: 65 66 69 6e 65 20 67 7a 63 6c 6f 73 65 20 20 20  efine gzclose   
09d0: 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67 7a              z_gz
09e0: 63 6c 6f 73 65 0a 23 20 20 20 20 64 65 66 69 6e  close.#    defin
09f0: 65 20 67 7a 63 6c 6f 73 65 5f 72 20 20 20 20 20  e gzclose_r     
0a00: 20 20 20 20 20 20 20 20 7a 5f 67 7a 63 6c 6f 73          z_gzclos
0a10: 65 5f 72 0a 23 20 20 20 20 64 65 66 69 6e 65 20  e_r.#    define 
0a20: 67 7a 63 6c 6f 73 65 5f 77 20 20 20 20 20 20 20  gzclose_w       
0a30: 20 20 20 20 20 20 7a 5f 67 7a 63 6c 6f 73 65 5f        z_gzclose_
0a40: 77 0a 23 20 20 20 20 64 65 66 69 6e 65 20 67 7a  w.#    define gz
0a50: 64 69 72 65 63 74 20 20 20 20 20 20 20 20 20 20  direct          
0a60: 20 20 20 20 7a 5f 67 7a 64 69 72 65 63 74 0a 23      z_gzdirect.#
0a70: 20 20 20 20 64 65 66 69 6e 65 20 67 7a 64 6f 70      define gzdop
0a80: 65 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20  en              
0a90: 20 7a 5f 67 7a 64 6f 70 65 6e 0a 23 20 20 20 20   z_gzdopen.#    
0aa0: 64 65 66 69 6e 65 20 67 7a 65 6f 66 20 20 20 20  define gzeof    
0ab0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67               z_g
0ac0: 7a 65 6f 66 0a 23 20 20 20 20 64 65 66 69 6e 65  zeof.#    define
0ad0: 20 67 7a 65 72 72 6f 72 20 20 20 20 20 20 20 20   gzerror        
0ae0: 20 20 20 20 20 20 20 7a 5f 67 7a 65 72 72 6f 72         z_gzerror
0af0: 0a 23 20 20 20 20 64 65 66 69 6e 65 20 67 7a 66  .#    define gzf
0b00: 6c 75 73 68 20 20 20 20 20 20 20 20 20 20 20 20  lush            
0b10: 20 20 20 7a 5f 67 7a 66 6c 75 73 68 0a 23 20 20     z_gzflush.#  
0b20: 20 20 64 65 66 69 6e 65 20 67 7a 67 65 74 63 20    define gzgetc 
0b30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7a                 z
0b40: 5f 67 7a 67 65 74 63 0a 23 20 20 20 20 64 65 66  _gzgetc.#    def
0b50: 69 6e 65 20 67 7a 67 65 74 63 5f 20 20 20 20 20  ine gzgetc_     
0b60: 20 20 20 20 20 20 20 20 20 20 7a 5f 67 7a 67 65            z_gzge
0b70: 74 63 5f 0a 23 20 20 20 20 64 65 66 69 6e 65 20  tc_.#    define 
0b80: 67 7a 67 65 74 73 20 20 20 20 20 20 20 20 20 20  gzgets          
0b90: 20 20 20 20 20 20 7a 5f 67 7a 67 65 74 73 0a 23        z_gzgets.#
0ba0: 20 20 20 20 64 65 66 69 6e 65 20 67 7a 6f 66 66      define gzoff
0bb0: 73 65 74 20 20 20 20 20 20 20 20 20 20 20 20 20  set             
0bc0: 20 7a 5f 67 7a 6f 66 66 73 65 74 0a 23 20 20 20   z_gzoffset.#   
0bd0: 20 64 65 66 69 6e 65 20 67 7a 6f 66 66 73 65 74   define gzoffset
0be0: 36 34 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f  64            z_
0bf0: 67 7a 6f 66 66 73 65 74 36 34 0a 23 20 20 20 20  gzoffset64.#    
0c00: 64 65 66 69 6e 65 20 67 7a 6f 70 65 6e 20 20 20  define gzopen   
0c10: 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67               z_g
0c20: 7a 6f 70 65 6e 0a 23 20 20 20 20 64 65 66 69 6e  zopen.#    defin
0c30: 65 20 67 7a 6f 70 65 6e 36 34 20 20 20 20 20 20  e gzopen64      
0c40: 20 20 20 20 20 20 20 20 7a 5f 67 7a 6f 70 65 6e          z_gzopen
0c50: 36 34 0a 23 20 20 20 20 69 66 64 65 66 20 5f 57  64.#    ifdef _W
0c60: 49 4e 33 32 0a 23 20 20 20 20 20 20 64 65 66 69  IN32.#      defi
0c70: 6e 65 20 67 7a 6f 70 65 6e 5f 77 20 20 20 20 20  ne gzopen_w     
0c80: 20 20 20 20 20 20 20 20 20 7a 5f 67 7a 6f 70 65           z_gzope
0c90: 6e 5f 77 0a 23 20 20 20 20 65 6e 64 69 66 0a 23  n_w.#    endif.#
0ca0: 20 20 20 20 64 65 66 69 6e 65 20 67 7a 70 72 69      define gzpri
0cb0: 6e 74 66 20 20 20 20 20 20 20 20 20 20 20 20 20  ntf             
0cc0: 20 7a 5f 67 7a 70 72 69 6e 74 66 0a 23 20 20 20   z_gzprintf.#   
0cd0: 20 64 65 66 69 6e 65 20 67 7a 76 70 72 69 6e 74   define gzvprint
0ce0: 66 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f  f             z_
0cf0: 67 7a 76 70 72 69 6e 74 66 0a 23 20 20 20 20 64  gzvprintf.#    d
0d00: 65 66 69 6e 65 20 67 7a 70 75 74 63 20 20 20 20  efine gzputc    
0d10: 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67 7a              z_gz
0d20: 70 75 74 63 0a 23 20 20 20 20 64 65 66 69 6e 65  putc.#    define
0d30: 20 67 7a 70 75 74 73 20 20 20 20 20 20 20 20 20   gzputs         
0d40: 20 20 20 20 20 20 20 7a 5f 67 7a 70 75 74 73 0a         z_gzputs.
0d50: 23 20 20 20 20 64 65 66 69 6e 65 20 67 7a 72 65  #    define gzre
0d60: 61 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ad              
0d70: 20 20 7a 5f 67 7a 72 65 61 64 0a 23 20 20 20 20    z_gzread.#    
0d80: 64 65 66 69 6e 65 20 67 7a 72 65 77 69 6e 64 20  define gzrewind 
0d90: 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67               z_g
0da0: 7a 72 65 77 69 6e 64 0a 23 20 20 20 20 64 65 66  zrewind.#    def
0db0: 69 6e 65 20 67 7a 73 65 65 6b 20 20 20 20 20 20  ine gzseek      
0dc0: 20 20 20 20 20 20 20 20 20 20 7a 5f 67 7a 73 65            z_gzse
0dd0: 65 6b 0a 23 20 20 20 20 64 65 66 69 6e 65 20 67  ek.#    define g
0de0: 7a 73 65 65 6b 36 34 20 20 20 20 20 20 20 20 20  zseek64         
0df0: 20 20 20 20 20 7a 5f 67 7a 73 65 65 6b 36 34 0a       z_gzseek64.
0e00: 23 20 20 20 20 64 65 66 69 6e 65 20 67 7a 73 65  #    define gzse
0e10: 74 70 61 72 61 6d 73 20 20 20 20 20 20 20 20 20  tparams         
0e20: 20 20 7a 5f 67 7a 73 65 74 70 61 72 61 6d 73 0a    z_gzsetparams.
0e30: 23 20 20 20 20 64 65 66 69 6e 65 20 67 7a 74 65  #    define gzte
0e40: 6c 6c 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ll              
0e50: 20 20 7a 5f 67 7a 74 65 6c 6c 0a 23 20 20 20 20    z_gztell.#    
0e60: 64 65 66 69 6e 65 20 67 7a 74 65 6c 6c 36 34 20  define gztell64 
0e70: 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67               z_g
0e80: 7a 74 65 6c 6c 36 34 0a 23 20 20 20 20 64 65 66  ztell64.#    def
0e90: 69 6e 65 20 67 7a 75 6e 67 65 74 63 20 20 20 20  ine gzungetc    
0ea0: 20 20 20 20 20 20 20 20 20 20 7a 5f 67 7a 75 6e            z_gzun
0eb0: 67 65 74 63 0a 23 20 20 20 20 64 65 66 69 6e 65  getc.#    define
0ec0: 20 67 7a 77 72 69 74 65 20 20 20 20 20 20 20 20   gzwrite        
0ed0: 20 20 20 20 20 20 20 7a 5f 67 7a 77 72 69 74 65         z_gzwrite
0ee0: 0a 23 20 20 65 6e 64 69 66 0a 23 20 20 64 65 66  .#  endif.#  def
0ef0: 69 6e 65 20 69 6e 66 6c 61 74 65 20 20 20 20 20  ine inflate     
0f00: 20 20 20 20 20 20 20 20 20 20 7a 5f 69 6e 66 6c            z_infl
0f10: 61 74 65 0a 23 20 20 64 65 66 69 6e 65 20 69 6e  ate.#  define in
0f20: 66 6c 61 74 65 42 61 63 6b 20 20 20 20 20 20 20  flateBack       
0f30: 20 20 20 20 7a 5f 69 6e 66 6c 61 74 65 42 61 63      z_inflateBac
0f40: 6b 0a 23 20 20 64 65 66 69 6e 65 20 69 6e 66 6c  k.#  define infl
0f50: 61 74 65 42 61 63 6b 45 6e 64 20 20 20 20 20 20  ateBackEnd      
0f60: 20 20 7a 5f 69 6e 66 6c 61 74 65 42 61 63 6b 45    z_inflateBackE
0f70: 6e 64 0a 23 20 20 64 65 66 69 6e 65 20 69 6e 66  nd.#  define inf
0f80: 6c 61 74 65 42 61 63 6b 49 6e 69 74 5f 20 20 20  lateBackInit_   
0f90: 20 20 20 7a 5f 69 6e 66 6c 61 74 65 42 61 63 6b     z_inflateBack
0fa0: 49 6e 69 74 5f 0a 23 20 20 64 65 66 69 6e 65 20  Init_.#  define 
0fb0: 69 6e 66 6c 61 74 65 43 6f 70 79 20 20 20 20 20  inflateCopy     
0fc0: 20 20 20 20 20 20 7a 5f 69 6e 66 6c 61 74 65 43        z_inflateC
0fd0: 6f 70 79 0a 23 20 20 64 65 66 69 6e 65 20 69 6e  opy.#  define in
0fe0: 66 6c 61 74 65 45 6e 64 20 20 20 20 20 20 20 20  flateEnd        
0ff0: 20 20 20 20 7a 5f 69 6e 66 6c 61 74 65 45 6e 64      z_inflateEnd
1000: 0a 23 20 20 64 65 66 69 6e 65 20 69 6e 66 6c 61  .#  define infla
1010: 74 65 47 65 74 48 65 61 64 65 72 20 20 20 20 20  teGetHeader     
1020: 20 7a 5f 69 6e 66 6c 61 74 65 47 65 74 48 65 61   z_inflateGetHea
1030: 64 65 72 0a 23 20 20 64 65 66 69 6e 65 20 69 6e  der.#  define in
1040: 66 6c 61 74 65 49 6e 69 74 32 5f 20 20 20 20 20  flateInit2_     
1050: 20 20 20 20 7a 5f 69 6e 66 6c 61 74 65 49 6e 69      z_inflateIni
1060: 74 32 5f 0a 23 20 20 64 65 66 69 6e 65 20 69 6e  t2_.#  define in
1070: 66 6c 61 74 65 49 6e 69 74 5f 20 20 20 20 20 20  flateInit_      
1080: 20 20 20 20 7a 5f 69 6e 66 6c 61 74 65 49 6e 69      z_inflateIni
1090: 74 5f 0a 23 20 20 64 65 66 69 6e 65 20 69 6e 66  t_.#  define inf
10a0: 6c 61 74 65 4d 61 72 6b 20 20 20 20 20 20 20 20  lateMark        
10b0: 20 20 20 7a 5f 69 6e 66 6c 61 74 65 4d 61 72 6b     z_inflateMark
10c0: 0a 23 20 20 64 65 66 69 6e 65 20 69 6e 66 6c 61  .#  define infla
10d0: 74 65 50 72 69 6d 65 20 20 20 20 20 20 20 20 20  tePrime         
10e0: 20 7a 5f 69 6e 66 6c 61 74 65 50 72 69 6d 65 0a   z_inflatePrime.
10f0: 23 20 20 64 65 66 69 6e 65 20 69 6e 66 6c 61 74  #  define inflat
1100: 65 52 65 73 65 74 20 20 20 20 20 20 20 20 20 20  eReset          
1110: 7a 5f 69 6e 66 6c 61 74 65 52 65 73 65 74 0a 23  z_inflateReset.#
1120: 20 20 64 65 66 69 6e 65 20 69 6e 66 6c 61 74 65    define inflate
1130: 52 65 73 65 74 32 20 20 20 20 20 20 20 20 20 7a  Reset2         z
1140: 5f 69 6e 66 6c 61 74 65 52 65 73 65 74 32 0a 23  _inflateReset2.#
1150: 20 20 64 65 66 69 6e 65 20 69 6e 66 6c 61 74 65    define inflate
1160: 53 65 74 44 69 63 74 69 6f 6e 61 72 79 20 20 7a  SetDictionary  z
1170: 5f 69 6e 66 6c 61 74 65 53 65 74 44 69 63 74 69  _inflateSetDicti
1180: 6f 6e 61 72 79 0a 23 20 20 64 65 66 69 6e 65 20  onary.#  define 
1190: 69 6e 66 6c 61 74 65 47 65 74 44 69 63 74 69 6f  inflateGetDictio
11a0: 6e 61 72 79 20 20 7a 5f 69 6e 66 6c 61 74 65 47  nary  z_inflateG
11b0: 65 74 44 69 63 74 69 6f 6e 61 72 79 0a 23 20 20  etDictionary.#  
11c0: 64 65 66 69 6e 65 20 69 6e 66 6c 61 74 65 53 79  define inflateSy
11d0: 6e 63 20 20 20 20 20 20 20 20 20 20 20 7a 5f 69  nc           z_i
11e0: 6e 66 6c 61 74 65 53 79 6e 63 0a 23 20 20 64 65  nflateSync.#  de
11f0: 66 69 6e 65 20 69 6e 66 6c 61 74 65 53 79 6e 63  fine inflateSync
1200: 50 6f 69 6e 74 20 20 20 20 20 20 7a 5f 69 6e 66  Point      z_inf
1210: 6c 61 74 65 53 79 6e 63 50 6f 69 6e 74 0a 23 20  lateSyncPoint.# 
1220: 20 64 65 66 69 6e 65 20 69 6e 66 6c 61 74 65 55   define inflateU
1230: 6e 64 65 72 6d 69 6e 65 20 20 20 20 20 20 7a 5f  ndermine      z_
1240: 69 6e 66 6c 61 74 65 55 6e 64 65 72 6d 69 6e 65  inflateUndermine
1250: 0a 23 20 20 64 65 66 69 6e 65 20 69 6e 66 6c 61  .#  define infla
1260: 74 65 52 65 73 65 74 4b 65 65 70 20 20 20 20 20  teResetKeep     
1270: 20 7a 5f 69 6e 66 6c 61 74 65 52 65 73 65 74 4b   z_inflateResetK
1280: 65 65 70 0a 23 20 20 64 65 66 69 6e 65 20 69 6e  eep.#  define in
1290: 66 6c 61 74 65 5f 63 6f 70 79 72 69 67 68 74 20  flate_copyright 
12a0: 20 20 20 20 7a 5f 69 6e 66 6c 61 74 65 5f 63 6f      z_inflate_co
12b0: 70 79 72 69 67 68 74 0a 23 20 20 64 65 66 69 6e  pyright.#  defin
12c0: 65 20 69 6e 66 6c 61 74 65 5f 66 61 73 74 20 20  e inflate_fast  
12d0: 20 20 20 20 20 20 20 20 7a 5f 69 6e 66 6c 61 74          z_inflat
12e0: 65 5f 66 61 73 74 0a 23 20 20 64 65 66 69 6e 65  e_fast.#  define
12f0: 20 69 6e 66 6c 61 74 65 5f 74 61 62 6c 65 20 20   inflate_table  
1300: 20 20 20 20 20 20 20 7a 5f 69 6e 66 6c 61 74 65         z_inflate
1310: 5f 74 61 62 6c 65 0a 23 20 20 69 66 6e 64 65 66  _table.#  ifndef
1320: 20 5a 5f 53 4f 4c 4f 0a 23 20 20 20 20 64 65 66   Z_SOLO.#    def
1330: 69 6e 65 20 75 6e 63 6f 6d 70 72 65 73 73 20 20  ine uncompress  
1340: 20 20 20 20 20 20 20 20 20 20 7a 5f 75 6e 63 6f            z_unco
1350: 6d 70 72 65 73 73 0a 23 20 20 65 6e 64 69 66 0a  mpress.#  endif.
1360: 23 20 20 64 65 66 69 6e 65 20 7a 45 72 72 6f 72  #  define zError
1370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1380: 7a 5f 7a 45 72 72 6f 72 0a 23 20 20 69 66 6e 64  z_zError.#  ifnd
1390: 65 66 20 5a 5f 53 4f 4c 4f 0a 23 20 20 20 20 64  ef Z_SOLO.#    d
13a0: 65 66 69 6e 65 20 7a 63 61 6c 6c 6f 63 20 20 20  efine zcalloc   
13b0: 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 7a 63              z_zc
13c0: 61 6c 6c 6f 63 0a 23 20 20 20 20 64 65 66 69 6e  alloc.#    defin
13d0: 65 20 7a 63 66 72 65 65 20 20 20 20 20 20 20 20  e zcfree        
13e0: 20 20 20 20 20 20 20 20 7a 5f 7a 63 66 72 65 65          z_zcfree
13f0: 0a 23 20 20 65 6e 64 69 66 0a 23 20 20 64 65 66  .#  endif.#  def
1400: 69 6e 65 20 7a 6c 69 62 43 6f 6d 70 69 6c 65 46  ine zlibCompileF
1410: 6c 61 67 73 20 20 20 20 20 20 7a 5f 7a 6c 69 62  lags      z_zlib
1420: 43 6f 6d 70 69 6c 65 46 6c 61 67 73 0a 23 20 20  CompileFlags.#  
1430: 64 65 66 69 6e 65 20 7a 6c 69 62 56 65 72 73 69  define zlibVersi
1440: 6f 6e 20 20 20 20 20 20 20 20 20 20 20 7a 5f 7a  on           z_z
1450: 6c 69 62 56 65 72 73 69 6f 6e 0a 0a 2f 2a 20 61  libVersion../* a
1460: 6c 6c 20 7a 6c 69 62 20 74 79 70 65 64 65 66 73  ll zlib typedefs
1470: 20 69 6e 20 7a 6c 69 62 2e 68 20 61 6e 64 20 7a   in zlib.h and z
1480: 63 6f 6e 66 2e 68 20 2a 2f 0a 23 20 20 64 65 66  conf.h */.#  def
1490: 69 6e 65 20 42 79 74 65 20 20 20 20 20 20 20 20  ine Byte        
14a0: 20 20 20 20 20 20 20 20 20 20 7a 5f 42 79 74 65            z_Byte
14b0: 0a 23 20 20 64 65 66 69 6e 65 20 42 79 74 65 66  .#  define Bytef
14c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
14d0: 20 7a 5f 42 79 74 65 66 0a 23 20 20 64 65 66 69   z_Bytef.#  defi
14e0: 6e 65 20 61 6c 6c 6f 63 5f 66 75 6e 63 20 20 20  ne alloc_func   
14f0: 20 20 20 20 20 20 20 20 20 7a 5f 61 6c 6c 6f 63           z_alloc
1500: 5f 66 75 6e 63 0a 23 20 20 64 65 66 69 6e 65 20  _func.#  define 
1510: 63 68 61 72 66 20 20 20 20 20 20 20 20 20 20 20  charf           
1520: 20 20 20 20 20 20 7a 5f 63 68 61 72 66 0a 23 20        z_charf.# 
1530: 20 64 65 66 69 6e 65 20 66 72 65 65 5f 66 75 6e   define free_fun
1540: 63 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f  c             z_
1550: 66 72 65 65 5f 66 75 6e 63 0a 23 20 20 69 66 6e  free_func.#  ifn
1560: 64 65 66 20 5a 5f 53 4f 4c 4f 0a 23 20 20 20 20  def Z_SOLO.#    
1570: 64 65 66 69 6e 65 20 67 7a 46 69 6c 65 20 20 20  define gzFile   
1580: 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67               z_g
1590: 7a 46 69 6c 65 0a 23 20 20 65 6e 64 69 66 0a 23  zFile.#  endif.#
15a0: 20 20 64 65 66 69 6e 65 20 67 7a 5f 68 65 61 64    define gz_head
15b0: 65 72 20 20 20 20 20 20 20 20 20 20 20 20 20 7a  er             z
15c0: 5f 67 7a 5f 68 65 61 64 65 72 0a 23 20 20 64 65  _gz_header.#  de
15d0: 66 69 6e 65 20 67 7a 5f 68 65 61 64 65 72 70 20  fine gz_headerp 
15e0: 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67 7a 5f             z_gz_
15f0: 68 65 61 64 65 72 70 0a 23 20 20 64 65 66 69 6e  headerp.#  defin
1600: 65 20 69 6e 5f 66 75 6e 63 20 20 20 20 20 20 20  e in_func       
1610: 20 20 20 20 20 20 20 20 7a 5f 69 6e 5f 66 75 6e          z_in_fun
1620: 63 0a 23 20 20 64 65 66 69 6e 65 20 69 6e 74 66  c.#  define intf
1630: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1640: 20 20 7a 5f 69 6e 74 66 0a 23 20 20 64 65 66 69    z_intf.#  defi
1650: 6e 65 20 6f 75 74 5f 66 75 6e 63 20 20 20 20 20  ne out_func     
1660: 20 20 20 20 20 20 20 20 20 7a 5f 6f 75 74 5f 66           z_out_f
1670: 75 6e 63 0a 23 20 20 64 65 66 69 6e 65 20 75 49  unc.#  define uI
1680: 6e 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20  nt              
1690: 20 20 20 20 7a 5f 75 49 6e 74 0a 23 20 20 64 65      z_uInt.#  de
16a0: 66 69 6e 65 20 75 49 6e 74 66 20 20 20 20 20 20  fine uIntf      
16b0: 20 20 20 20 20 20 20 20 20 20 20 7a 5f 75 49 6e             z_uIn
16c0: 74 66 0a 23 20 20 64 65 66 69 6e 65 20 75 4c 6f  tf.#  define uLo
16d0: 6e 67 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ng              
16e0: 20 20 20 7a 5f 75 4c 6f 6e 67 0a 23 20 20 64 65     z_uLong.#  de
16f0: 66 69 6e 65 20 75 4c 6f 6e 67 66 20 20 20 20 20  fine uLongf     
1700: 20 20 20 20 20 20 20 20 20 20 20 7a 5f 75 4c 6f             z_uLo
1710: 6e 67 66 0a 23 20 20 64 65 66 69 6e 65 20 76 6f  ngf.#  define vo
1720: 69 64 70 20 20 20 20 20 20 20 20 20 20 20 20 20  idp             
1730: 20 20 20 20 7a 5f 76 6f 69 64 70 0a 23 20 20 64      z_voidp.#  d
1740: 65 66 69 6e 65 20 76 6f 69 64 70 63 20 20 20 20  efine voidpc    
1750: 20 20 20 20 20 20 20 20 20 20 20 20 7a 5f 76 6f              z_vo
1760: 69 64 70 63 0a 23 20 20 64 65 66 69 6e 65 20 76  idpc.#  define v
1770: 6f 69 64 70 66 20 20 20 20 20 20 20 20 20 20 20  oidpf           
1780: 20 20 20 20 20 7a 5f 76 6f 69 64 70 66 0a 0a 2f       z_voidpf../
1790: 2a 20 61 6c 6c 20 7a 6c 69 62 20 73 74 72 75 63  * all zlib struc
17a0: 74 73 20 69 6e 20 7a 6c 69 62 2e 68 20 61 6e 64  ts in zlib.h and
17b0: 20 7a 63 6f 6e 66 2e 68 20 2a 2f 0a 23 20 20 64   zconf.h */.#  d
17c0: 65 66 69 6e 65 20 67 7a 5f 68 65 61 64 65 72 5f  efine gz_header_
17d0: 73 20 20 20 20 20 20 20 20 20 20 20 7a 5f 67 7a  s           z_gz
17e0: 5f 68 65 61 64 65 72 5f 73 0a 23 20 20 64 65 66  _header_s.#  def
17f0: 69 6e 65 20 69 6e 74 65 72 6e 61 6c 5f 73 74 61  ine internal_sta
1800: 74 65 20 20 20 20 20 20 20 20 7a 5f 69 6e 74 65  te        z_inte
1810: 72 6e 61 6c 5f 73 74 61 74 65 0a 0a 23 65 6e 64  rnal_state..#end
1820: 69 66 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 28  if..#if defined(
1830: 5f 5f 4d 53 44 4f 53 5f 5f 29 20 26 26 20 21 64  __MSDOS__) && !d
1840: 65 66 69 6e 65 64 28 4d 53 44 4f 53 29 0a 23 20  efined(MSDOS).# 
1850: 20 64 65 66 69 6e 65 20 4d 53 44 4f 53 0a 23 65   define MSDOS.#e
1860: 6e 64 69 66 0a 23 69 66 20 28 64 65 66 69 6e 65  ndif.#if (define
1870: 64 28 4f 53 5f 32 29 20 7c 7c 20 64 65 66 69 6e  d(OS_2) || defin
1880: 65 64 28 5f 5f 4f 53 32 5f 5f 29 29 20 26 26 20  ed(__OS2__)) && 
1890: 21 64 65 66 69 6e 65 64 28 4f 53 32 29 0a 23 20  !defined(OS2).# 
18a0: 20 64 65 66 69 6e 65 20 4f 53 32 0a 23 65 6e 64   define OS2.#end
18b0: 69 66 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f  if.#if defined(_
18c0: 57 49 4e 44 4f 57 53 29 20 26 26 20 21 64 65 66  WINDOWS) && !def
18d0: 69 6e 65 64 28 57 49 4e 44 4f 57 53 29 0a 23 20  ined(WINDOWS).# 
18e0: 20 64 65 66 69 6e 65 20 57 49 4e 44 4f 57 53 0a   define WINDOWS.
18f0: 23 65 6e 64 69 66 0a 23 69 66 20 64 65 66 69 6e  #endif.#if defin
1900: 65 64 28 5f 57 49 4e 33 32 29 20 7c 7c 20 64 65  ed(_WIN32) || de
1910: 66 69 6e 65 64 28 5f 57 49 4e 33 32 5f 57 43 45  fined(_WIN32_WCE
1920: 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 57  ) || defined(__W
1930: 49 4e 33 32 5f 5f 29 0a 23 20 20 69 66 6e 64 65  IN32__).#  ifnde
1940: 66 20 57 49 4e 33 32 0a 23 20 20 20 20 64 65 66  f WIN32.#    def
1950: 69 6e 65 20 57 49 4e 33 32 0a 23 20 20 65 6e 64  ine WIN32.#  end
1960: 69 66 0a 23 65 6e 64 69 66 0a 23 69 66 20 28 64  if.#endif.#if (d
1970: 65 66 69 6e 65 64 28 4d 53 44 4f 53 29 20 7c 7c  efined(MSDOS) ||
1980: 20 64 65 66 69 6e 65 64 28 4f 53 32 29 20 7c 7c   defined(OS2) ||
1990: 20 64 65 66 69 6e 65 64 28 57 49 4e 44 4f 57 53   defined(WINDOWS
19a0: 29 29 20 26 26 20 21 64 65 66 69 6e 65 64 28 57  )) && !defined(W
19b0: 49 4e 33 32 29 0a 23 20 20 69 66 20 21 64 65 66  IN32).#  if !def
19c0: 69 6e 65 64 28 5f 5f 47 4e 55 43 5f 5f 29 20 26  ined(__GNUC__) &
19d0: 26 20 21 64 65 66 69 6e 65 64 28 5f 5f 46 4c 41  & !defined(__FLA
19e0: 54 5f 5f 29 20 26 26 20 21 64 65 66 69 6e 65 64  T__) && !defined
19f0: 28 5f 5f 33 38 36 5f 5f 29 0a 23 20 20 20 20 69  (__386__).#    i
1a00: 66 6e 64 65 66 20 53 59 53 31 36 42 49 54 0a 23  fndef SYS16BIT.#
1a10: 20 20 20 20 20 20 64 65 66 69 6e 65 20 53 59 53        define SYS
1a20: 31 36 42 49 54 0a 23 20 20 20 20 65 6e 64 69 66  16BIT.#    endif
1a30: 0a 23 20 20 65 6e 64 69 66 0a 23 65 6e 64 69 66  .#  endif.#endif
1a40: 0a 0a 2f 2a 0a 20 2a 20 43 6f 6d 70 69 6c 65 20  ../*. * Compile 
1a50: 77 69 74 68 20 2d 44 4d 41 58 53 45 47 5f 36 34  with -DMAXSEG_64
1a60: 4b 20 69 66 20 74 68 65 20 61 6c 6c 6f 63 20 66  K if the alloc f
1a70: 75 6e 63 74 69 6f 6e 20 63 61 6e 6e 6f 74 20 61  unction cannot a
1a80: 6c 6c 6f 63 61 74 65 20 6d 6f 72 65 0a 20 2a 20  llocate more. * 
1a90: 74 68 61 6e 20 36 34 6b 20 62 79 74 65 73 20 61  than 64k bytes a
1aa0: 74 20 61 20 74 69 6d 65 20 28 6e 65 65 64 65 64  t a time (needed
1ab0: 20 6f 6e 20 73 79 73 74 65 6d 73 20 77 69 74 68   on systems with
1ac0: 20 31 36 2d 62 69 74 20 69 6e 74 29 2e 0a 20 2a   16-bit int).. *
1ad0: 2f 0a 23 69 66 64 65 66 20 53 59 53 31 36 42 49  /.#ifdef SYS16BI
1ae0: 54 0a 23 20 20 64 65 66 69 6e 65 20 4d 41 58 53  T.#  define MAXS
1af0: 45 47 5f 36 34 4b 0a 23 65 6e 64 69 66 0a 23 69  EG_64K.#endif.#i
1b00: 66 64 65 66 20 4d 53 44 4f 53 0a 23 20 20 64 65  fdef MSDOS.#  de
1b10: 66 69 6e 65 20 55 4e 41 4c 49 47 4e 45 44 5f 4f  fine UNALIGNED_O
1b20: 4b 0a 23 65 6e 64 69 66 0a 0a 23 69 66 64 65 66  K.#endif..#ifdef
1b30: 20 5f 5f 53 54 44 43 5f 56 45 52 53 49 4f 4e 5f   __STDC_VERSION_
1b40: 5f 0a 23 20 20 69 66 6e 64 65 66 20 53 54 44 43  _.#  ifndef STDC
1b50: 0a 23 20 20 20 20 64 65 66 69 6e 65 20 53 54 44  .#    define STD
1b60: 43 0a 23 20 20 65 6e 64 69 66 0a 23 20 20 69 66  C.#  endif.#  if
1b70: 20 5f 5f 53 54 44 43 5f 56 45 52 53 49 4f 4e 5f   __STDC_VERSION_
1b80: 5f 20 3e 3d 20 31 39 39 39 30 31 4c 0a 23 20 20  _ >= 199901L.#  
1b90: 20 20 69 66 6e 64 65 66 20 53 54 44 43 39 39 0a    ifndef STDC99.
1ba0: 23 20 20 20 20 20 20 64 65 66 69 6e 65 20 53 54  #      define ST
1bb0: 44 43 39 39 0a 23 20 20 20 20 65 6e 64 69 66 0a  DC99.#    endif.
1bc0: 23 20 20 65 6e 64 69 66 0a 23 65 6e 64 69 66 0a  #  endif.#endif.
1bd0: 23 69 66 20 21 64 65 66 69 6e 65 64 28 53 54 44  #if !defined(STD
1be0: 43 29 20 26 26 20 28 64 65 66 69 6e 65 64 28 5f  C) && (defined(_
1bf0: 5f 53 54 44 43 5f 5f 29 20 7c 7c 20 64 65 66 69  _STDC__) || defi
1c00: 6e 65 64 28 5f 5f 63 70 6c 75 73 70 6c 75 73 29  ned(__cplusplus)
1c10: 29 0a 23 20 20 64 65 66 69 6e 65 20 53 54 44 43  ).#  define STDC
1c20: 0a 23 65 6e 64 69 66 0a 23 69 66 20 21 64 65 66  .#endif.#if !def
1c30: 69 6e 65 64 28 53 54 44 43 29 20 26 26 20 28 64  ined(STDC) && (d
1c40: 65 66 69 6e 65 64 28 5f 5f 47 4e 55 43 5f 5f 29  efined(__GNUC__)
1c50: 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 42 4f   || defined(__BO
1c60: 52 4c 41 4e 44 43 5f 5f 29 29 0a 23 20 20 64 65  RLANDC__)).#  de
1c70: 66 69 6e 65 20 53 54 44 43 0a 23 65 6e 64 69 66  fine STDC.#endif
1c80: 0a 23 69 66 20 21 64 65 66 69 6e 65 64 28 53 54  .#if !defined(ST
1c90: 44 43 29 20 26 26 20 28 64 65 66 69 6e 65 64 28  DC) && (defined(
1ca0: 4d 53 44 4f 53 29 20 7c 7c 20 64 65 66 69 6e 65  MSDOS) || define
1cb0: 64 28 57 49 4e 44 4f 57 53 29 20 7c 7c 20 64 65  d(WINDOWS) || de
1cc0: 66 69 6e 65 64 28 57 49 4e 33 32 29 29 0a 23 20  fined(WIN32)).# 
1cd0: 20 64 65 66 69 6e 65 20 53 54 44 43 0a 23 65 6e   define STDC.#en
1ce0: 64 69 66 0a 23 69 66 20 21 64 65 66 69 6e 65 64  dif.#if !defined
1cf0: 28 53 54 44 43 29 20 26 26 20 28 64 65 66 69 6e  (STDC) && (defin
1d00: 65 64 28 4f 53 32 29 20 7c 7c 20 64 65 66 69 6e  ed(OS2) || defin
1d10: 65 64 28 5f 5f 48 4f 53 5f 41 49 58 5f 5f 29 29  ed(__HOS_AIX__))
1d20: 0a 23 20 20 64 65 66 69 6e 65 20 53 54 44 43 0a  .#  define STDC.
1d30: 23 65 6e 64 69 66 0a 0a 23 69 66 20 64 65 66 69  #endif..#if defi
1d40: 6e 65 64 28 5f 5f 4f 53 34 30 30 5f 5f 29 20 26  ned(__OS400__) &
1d50: 26 20 21 64 65 66 69 6e 65 64 28 53 54 44 43 29  & !defined(STDC)
1d60: 20 20 20 20 2f 2a 20 69 53 65 72 69 65 73 20 28      /* iSeries (
1d70: 66 6f 72 6d 65 72 6c 79 20 41 53 2f 34 30 30 29  formerly AS/400)
1d80: 2e 20 2a 2f 0a 23 20 20 64 65 66 69 6e 65 20 53  . */.#  define S
1d90: 54 44 43 0a 23 65 6e 64 69 66 0a 0a 23 69 66 6e  TDC.#endif..#ifn
1da0: 64 65 66 20 53 54 44 43 0a 23 20 20 69 66 6e 64  def STDC.#  ifnd
1db0: 65 66 20 63 6f 6e 73 74 20 2f 2a 20 63 61 6e 6e  ef const /* cann
1dc0: 6f 74 20 75 73 65 20 21 64 65 66 69 6e 65 64 28  ot use !defined(
1dd0: 53 54 44 43 29 20 26 26 20 21 64 65 66 69 6e 65  STDC) && !define
1de0: 64 28 63 6f 6e 73 74 29 20 6f 6e 20 4d 61 63 20  d(const) on Mac 
1df0: 2a 2f 0a 23 20 20 20 20 64 65 66 69 6e 65 20 63  */.#    define c
1e00: 6f 6e 73 74 20 20 20 20 20 20 20 2f 2a 20 6e 6f  onst       /* no
1e10: 74 65 3a 20 6e 65 65 64 20 61 20 6d 6f 72 65 20  te: need a more 
1e20: 67 65 6e 74 6c 65 20 73 6f 6c 75 74 69 6f 6e 20  gentle solution 
1e30: 68 65 72 65 20 2a 2f 0a 23 20 20 65 6e 64 69 66  here */.#  endif
1e40: 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20 64 65 66  .#endif..#if def
1e50: 69 6e 65 64 28 5a 4c 49 42 5f 43 4f 4e 53 54 29  ined(ZLIB_CONST)
1e60: 20 26 26 20 21 64 65 66 69 6e 65 64 28 7a 5f 63   && !defined(z_c
1e70: 6f 6e 73 74 29 0a 23 20 20 64 65 66 69 6e 65 20  onst).#  define 
1e80: 7a 5f 63 6f 6e 73 74 20 63 6f 6e 73 74 0a 23 65  z_const const.#e
1e90: 6c 73 65 0a 23 20 20 64 65 66 69 6e 65 20 7a 5f  lse.#  define z_
1ea0: 63 6f 6e 73 74 0a 23 65 6e 64 69 66 0a 0a 2f 2a  const.#endif../*
1eb0: 20 53 6f 6d 65 20 4d 61 63 20 63 6f 6d 70 69 6c   Some Mac compil
1ec0: 65 72 73 20 6d 65 72 67 65 20 61 6c 6c 20 2e 68  ers merge all .h
1ed0: 20 66 69 6c 65 73 20 69 6e 63 6f 72 72 65 63 74   files incorrect
1ee0: 6c 79 3a 20 2a 2f 0a 23 69 66 20 64 65 66 69 6e  ly: */.#if defin
1ef0: 65 64 28 5f 5f 4d 57 45 52 4b 53 5f 5f 29 7c 7c  ed(__MWERKS__)||
1f00: 64 65 66 69 6e 65 64 28 61 70 70 6c 65 63 29 7c  defined(applec)|
1f10: 7c 64 65 66 69 6e 65 64 28 54 48 49 4e 4b 5f 43  |defined(THINK_C
1f20: 29 7c 7c 64 65 66 69 6e 65 64 28 5f 5f 53 43 5f  )||defined(__SC_
1f30: 5f 29 0a 23 20 20 64 65 66 69 6e 65 20 4e 4f 5f  _).#  define NO_
1f40: 44 55 4d 4d 59 5f 44 45 43 4c 0a 23 65 6e 64 69  DUMMY_DECL.#endi
1f50: 66 0a 0a 2f 2a 20 4d 61 78 69 6d 75 6d 20 76 61  f../* Maximum va
1f60: 6c 75 65 20 66 6f 72 20 6d 65 6d 4c 65 76 65 6c  lue for memLevel
1f70: 20 69 6e 20 64 65 66 6c 61 74 65 49 6e 69 74 32   in deflateInit2
1f80: 20 2a 2f 0a 23 69 66 6e 64 65 66 20 4d 41 58 5f   */.#ifndef MAX_
1f90: 4d 45 4d 5f 4c 45 56 45 4c 0a 23 20 20 69 66 64  MEM_LEVEL.#  ifd
1fa0: 65 66 20 4d 41 58 53 45 47 5f 36 34 4b 0a 23 20  ef MAXSEG_64K.# 
1fb0: 20 20 20 64 65 66 69 6e 65 20 4d 41 58 5f 4d 45     define MAX_ME
1fc0: 4d 5f 4c 45 56 45 4c 20 38 0a 23 20 20 65 6c 73  M_LEVEL 8.#  els
1fd0: 65 0a 23 20 20 20 20 64 65 66 69 6e 65 20 4d 41  e.#    define MA
1fe0: 58 5f 4d 45 4d 5f 4c 45 56 45 4c 20 39 0a 23 20  X_MEM_LEVEL 9.# 
1ff0: 20 65 6e 64 69 66 0a 23 65 6e 64 69 66 0a 0a 2f   endif.#endif../
2000: 2a 20 4d 61 78 69 6d 75 6d 20 76 61 6c 75 65 20  * Maximum value 
2010: 66 6f 72 20 77 69 6e 64 6f 77 42 69 74 73 20 69  for windowBits i
2020: 6e 20 64 65 66 6c 61 74 65 49 6e 69 74 32 20 61  n deflateInit2 a
2030: 6e 64 20 69 6e 66 6c 61 74 65 49 6e 69 74 32 2e  nd inflateInit2.
2040: 0a 20 2a 20 57 41 52 4e 49 4e 47 3a 20 72 65 64  . * WARNING: red
2050: 75 63 69 6e 67 20 4d 41 58 5f 57 42 49 54 53 20  ucing MAX_WBITS 
2060: 6d 61 6b 65 73 20 6d 69 6e 69 67 7a 69 70 20 75  makes minigzip u
2070: 6e 61 62 6c 65 20 74 6f 20 65 78 74 72 61 63 74  nable to extract
2080: 20 2e 67 7a 20 66 69 6c 65 73 0a 20 2a 20 63 72   .gz files. * cr
2090: 65 61 74 65 64 20 62 79 20 67 7a 69 70 2e 20 28  eated by gzip. (
20a0: 46 69 6c 65 73 20 63 72 65 61 74 65 64 20 62 79  Files created by
20b0: 20 6d 69 6e 69 67 7a 69 70 20 63 61 6e 20 73 74   minigzip can st
20c0: 69 6c 6c 20 62 65 20 65 78 74 72 61 63 74 65 64  ill be extracted
20d0: 20 62 79 0a 20 2a 20 67 7a 69 70 2e 29 0a 20 2a   by. * gzip.). *
20e0: 2f 0a 23 69 66 6e 64 65 66 20 4d 41 58 5f 57 42  /.#ifndef MAX_WB
20f0: 49 54 53 0a 23 20 20 64 65 66 69 6e 65 20 4d 41  ITS.#  define MA
2100: 58 5f 57 42 49 54 53 20 20 20 31 35 20 2f 2a 20  X_WBITS   15 /* 
2110: 33 32 4b 20 4c 5a 37 37 20 77 69 6e 64 6f 77 20  32K LZ77 window 
2120: 2a 2f 0a 23 65 6e 64 69 66 0a 0a 2f 2a 20 54 68  */.#endif../* Th
2130: 65 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65  e memory require
2140: 6d 65 6e 74 73 20 66 6f 72 20 64 65 66 6c 61 74  ments for deflat
2150: 65 20 61 72 65 20 28 69 6e 20 62 79 74 65 73 29  e are (in bytes)
2160: 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 31  :.            (1
2170: 20 3c 3c 20 28 77 69 6e 64 6f 77 42 69 74 73 2b   << (windowBits+
2180: 32 29 29 20 2b 20 20 28 31 20 3c 3c 20 28 6d 65  2)) +  (1 << (me
2190: 6d 4c 65 76 65 6c 2b 39 29 29 0a 20 74 68 61 74  mLevel+9)). that
21a0: 20 69 73 3a 20 31 32 38 4b 20 66 6f 72 20 77 69   is: 128K for wi
21b0: 6e 64 6f 77 42 69 74 73 3d 31 35 20 20 2b 20 20  ndowBits=15  +  
21c0: 31 32 38 4b 20 66 6f 72 20 6d 65 6d 4c 65 76 65  128K for memLeve
21d0: 6c 20 3d 20 38 20 20 28 64 65 66 61 75 6c 74 20  l = 8  (default 
21e0: 76 61 6c 75 65 73 29 0a 20 70 6c 75 73 20 61 20  values). plus a 
21f0: 66 65 77 20 6b 69 6c 6f 62 79 74 65 73 20 66 6f  few kilobytes fo
2200: 72 20 73 6d 61 6c 6c 20 6f 62 6a 65 63 74 73 2e  r small objects.
2210: 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66   For example, if
2220: 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 64   you want to red
2230: 75 63 65 0a 20 74 68 65 20 64 65 66 61 75 6c 74  uce. the default
2240: 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65 6d   memory requirem
2250: 65 6e 74 73 20 66 72 6f 6d 20 32 35 36 4b 20 74  ents from 256K t
2260: 6f 20 31 32 38 4b 2c 20 63 6f 6d 70 69 6c 65 20  o 128K, compile 
2270: 77 69 74 68 0a 20 20 20 20 20 6d 61 6b 65 20 43  with.     make C
2280: 46 4c 41 47 53 3d 22 2d 4f 20 2d 44 4d 41 58 5f  FLAGS="-O -DMAX_
2290: 57 42 49 54 53 3d 31 34 20 2d 44 4d 41 58 5f 4d  WBITS=14 -DMAX_M
22a0: 45 4d 5f 4c 45 56 45 4c 3d 37 22 0a 20 4f 66 20  EM_LEVEL=7". Of 
22b0: 63 6f 75 72 73 65 20 74 68 69 73 20 77 69 6c 6c  course this will
22c0: 20 67 65 6e 65 72 61 6c 6c 79 20 64 65 67 72 61   generally degra
22d0: 64 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 28  de compression (
22e0: 74 68 65 72 65 27 73 20 6e 6f 20 66 72 65 65 20  there's no free 
22f0: 6c 75 6e 63 68 29 2e 0a 0a 20 20 20 54 68 65 20  lunch)...   The 
2300: 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65 6d 65  memory requireme
2310: 6e 74 73 20 66 6f 72 20 69 6e 66 6c 61 74 65 20  nts for inflate 
2320: 61 72 65 20 28 69 6e 20 62 79 74 65 73 29 20 31  are (in bytes) 1
2330: 20 3c 3c 20 77 69 6e 64 6f 77 42 69 74 73 0a 20   << windowBits. 
2340: 74 68 61 74 20 69 73 2c 20 33 32 4b 20 66 6f 72  that is, 32K for
2350: 20 77 69 6e 64 6f 77 42 69 74 73 3d 31 35 20 28   windowBits=15 (
2360: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 29 20 70  default value) p
2370: 6c 75 73 20 61 20 66 65 77 20 6b 69 6c 6f 62 79  lus a few kiloby
2380: 74 65 73 0a 20 66 6f 72 20 73 6d 61 6c 6c 20 6f  tes. for small o
2390: 62 6a 65 63 74 73 2e 0a 2a 2f 0a 0a 20 20 20 20  bjects..*/..    
23a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
23b0: 20 20 20 20 2f 2a 20 54 79 70 65 20 64 65 63 6c      /* Type decl
23c0: 61 72 61 74 69 6f 6e 73 20 2a 2f 0a 0a 23 69 66  arations */..#if
23d0: 6e 64 65 66 20 4f 46 20 2f 2a 20 66 75 6e 63 74  ndef OF /* funct
23e0: 69 6f 6e 20 70 72 6f 74 6f 74 79 70 65 73 20 2a  ion prototypes *
23f0: 2f 0a 23 20 20 69 66 64 65 66 20 53 54 44 43 0a  /.#  ifdef STDC.
2400: 23 20 20 20 20 64 65 66 69 6e 65 20 4f 46 28 61  #    define OF(a
2410: 72 67 73 29 20 20 61 72 67 73 0a 23 20 20 65 6c  rgs)  args.#  el
2420: 73 65 0a 23 20 20 20 20 64 65 66 69 6e 65 20 4f  se.#    define O
2430: 46 28 61 72 67 73 29 20 20 28 29 0a 23 20 20 65  F(args)  ().#  e
2440: 6e 64 69 66 0a 23 65 6e 64 69 66 0a 0a 23 69 66  ndif.#endif..#if
2450: 6e 64 65 66 20 5a 5f 41 52 47 20 2f 2a 20 66 75  ndef Z_ARG /* fu
2460: 6e 63 74 69 6f 6e 20 70 72 6f 74 6f 74 79 70 65  nction prototype
2470: 73 20 66 6f 72 20 73 74 64 61 72 67 20 2a 2f 0a  s for stdarg */.
2480: 23 20 20 69 66 20 64 65 66 69 6e 65 64 28 53 54  #  if defined(ST
2490: 44 43 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5a  DC) || defined(Z
24a0: 5f 48 41 56 45 5f 53 54 44 41 52 47 5f 48 29 0a  _HAVE_STDARG_H).
24b0: 23 20 20 20 20 64 65 66 69 6e 65 20 5a 5f 41 52  #    define Z_AR
24c0: 47 28 61 72 67 73 29 20 20 61 72 67 73 0a 23 20  G(args)  args.# 
24d0: 20 65 6c 73 65 0a 23 20 20 20 20 64 65 66 69 6e   else.#    defin
24e0: 65 20 5a 5f 41 52 47 28 61 72 67 73 29 20 20 28  e Z_ARG(args)  (
24f0: 29 0a 23 20 20 65 6e 64 69 66 0a 23 65 6e 64 69  ).#  endif.#endi
2500: 66 0a 0a 2f 2a 20 54 68 65 20 66 6f 6c 6c 6f 77  f../* The follow
2510: 69 6e 67 20 64 65 66 69 6e 69 74 69 6f 6e 73 20  ing definitions 
2520: 66 6f 72 20 46 41 52 20 61 72 65 20 6e 65 65 64  for FAR are need
2530: 65 64 20 6f 6e 6c 79 20 66 6f 72 20 4d 53 44 4f  ed only for MSDO
2540: 53 20 6d 69 78 65 64 0a 20 2a 20 6d 6f 64 65 6c  S mixed. * model
2550: 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 28 73 6d   programming (sm
2560: 61 6c 6c 20 6f 72 20 6d 65 64 69 75 6d 20 6d 6f  all or medium mo
2570: 64 65 6c 20 77 69 74 68 20 73 6f 6d 65 20 66 61  del with some fa
2580: 72 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 29 2e 0a  r allocations)..
2590: 20 2a 20 54 68 69 73 20 77 61 73 20 74 65 73 74   * This was test
25a0: 65 64 20 6f 6e 6c 79 20 77 69 74 68 20 4d 53 43  ed only with MSC
25b0: 3b 20 66 6f 72 20 6f 74 68 65 72 20 4d 53 44 4f  ; for other MSDO
25c0: 53 20 63 6f 6d 70 69 6c 65 72 73 20 79 6f 75 20  S compilers you 
25d0: 6d 61 79 20 68 61 76 65 0a 20 2a 20 74 6f 20 64  may have. * to d
25e0: 65 66 69 6e 65 20 4e 4f 5f 4d 45 4d 43 50 59 20  efine NO_MEMCPY 
25f0: 69 6e 20 7a 75 74 69 6c 2e 68 2e 20 20 49 66 20  in zutil.h.  If 
2600: 79 6f 75 20 64 6f 6e 27 74 20 6e 65 65 64 20 74  you don't need t
2610: 68 65 20 6d 69 78 65 64 20 6d 6f 64 65 6c 2c 0a  he mixed model,.
2620: 20 2a 20 6a 75 73 74 20 64 65 66 69 6e 65 20 46   * just define F
2630: 41 52 20 74 6f 20 62 65 20 65 6d 70 74 79 2e 0a  AR to be empty..
2640: 20 2a 2f 0a 23 69 66 64 65 66 20 53 59 53 31 36   */.#ifdef SYS16
2650: 42 49 54 0a 23 20 20 69 66 20 64 65 66 69 6e 65  BIT.#  if define
2660: 64 28 4d 5f 49 38 36 53 4d 29 20 7c 7c 20 64 65  d(M_I86SM) || de
2670: 66 69 6e 65 64 28 4d 5f 49 38 36 4d 4d 29 0a 20  fined(M_I86MM). 
2680: 20 20 20 20 2f 2a 20 4d 53 43 20 73 6d 61 6c 6c      /* MSC small
2690: 20 6f 72 20 6d 65 64 69 75 6d 20 6d 6f 64 65 6c   or medium model
26a0: 20 2a 2f 0a 23 20 20 20 20 64 65 66 69 6e 65 20   */.#    define 
26b0: 53 4d 41 4c 4c 5f 4d 45 44 49 55 4d 0a 23 20 20  SMALL_MEDIUM.#  
26c0: 20 20 69 66 64 65 66 20 5f 4d 53 43 5f 56 45 52    ifdef _MSC_VER
26d0: 0a 23 20 20 20 20 20 20 64 65 66 69 6e 65 20 46  .#      define F
26e0: 41 52 20 5f 66 61 72 0a 23 20 20 20 20 65 6c 73  AR _far.#    els
26f0: 65 0a 23 20 20 20 20 20 20 64 65 66 69 6e 65 20  e.#      define 
2700: 46 41 52 20 66 61 72 0a 23 20 20 20 20 65 6e 64  FAR far.#    end
2710: 69 66 0a 23 20 20 65 6e 64 69 66 0a 23 20 20 69  if.#  endif.#  i
2720: 66 20 28 64 65 66 69 6e 65 64 28 5f 5f 53 4d 41  f (defined(__SMA
2730: 4c 4c 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64  LL__) || defined
2740: 28 5f 5f 4d 45 44 49 55 4d 5f 5f 29 29 0a 20 20  (__MEDIUM__)).  
2750: 20 20 20 2f 2a 20 54 75 72 62 6f 20 43 20 73 6d     /* Turbo C sm
2760: 61 6c 6c 20 6f 72 20 6d 65 64 69 75 6d 20 6d 6f  all or medium mo
2770: 64 65 6c 20 2a 2f 0a 23 20 20 20 20 64 65 66 69  del */.#    defi
2780: 6e 65 20 53 4d 41 4c 4c 5f 4d 45 44 49 55 4d 0a  ne SMALL_MEDIUM.
2790: 23 20 20 20 20 69 66 64 65 66 20 5f 5f 42 4f 52  #    ifdef __BOR
27a0: 4c 41 4e 44 43 5f 5f 0a 23 20 20 20 20 20 20 64  LANDC__.#      d
27b0: 65 66 69 6e 65 20 46 41 52 20 5f 66 61 72 0a 23  efine FAR _far.#
27c0: 20 20 20 20 65 6c 73 65 0a 23 20 20 20 20 20 20      else.#      
27d0: 64 65 66 69 6e 65 20 46 41 52 20 66 61 72 0a 23  define FAR far.#
27e0: 20 20 20 20 65 6e 64 69 66 0a 23 20 20 65 6e 64      endif.#  end
27f0: 69 66 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20 64  if.#endif..#if d
2800: 65 66 69 6e 65 64 28 57 49 4e 44 4f 57 53 29 20  efined(WINDOWS) 
2810: 7c 7c 20 64 65 66 69 6e 65 64 28 57 49 4e 33 32  || defined(WIN32
2820: 29 0a 20 20 20 2f 2a 20 49 66 20 62 75 69 6c 64  ).   /* If build
2830: 69 6e 67 20 6f 72 20 75 73 69 6e 67 20 7a 6c 69  ing or using zli
2840: 62 20 61 73 20 61 20 44 4c 4c 2c 20 64 65 66 69  b as a DLL, defi
2850: 6e 65 20 5a 4c 49 42 5f 44 4c 4c 2e 0a 20 20 20  ne ZLIB_DLL..   
2860: 20 2a 20 54 68 69 73 20 69 73 20 6e 6f 74 20 6d   * This is not m
2870: 61 6e 64 61 74 6f 72 79 2c 20 62 75 74 20 69 74  andatory, but it
2880: 20 6f 66 66 65 72 73 20 61 20 6c 69 74 74 6c 65   offers a little
2890: 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 69 6e 63   performance inc
28a0: 72 65 61 73 65 2e 0a 20 20 20 20 2a 2f 0a 23 20  rease..    */.# 
28b0: 20 69 66 64 65 66 20 5a 4c 49 42 5f 44 4c 4c 0a   ifdef ZLIB_DLL.
28c0: 23 20 20 20 20 69 66 20 64 65 66 69 6e 65 64 28  #    if defined(
28d0: 57 49 4e 33 32 29 20 26 26 20 28 21 64 65 66 69  WIN32) && (!defi
28e0: 6e 65 64 28 5f 5f 42 4f 52 4c 41 4e 44 43 5f 5f  ned(__BORLANDC__
28f0: 29 20 7c 7c 20 28 5f 5f 42 4f 52 4c 41 4e 44 43  ) || (__BORLANDC
2900: 5f 5f 20 3e 3d 20 30 78 35 30 30 29 29 0a 23 20  __ >= 0x500)).# 
2910: 20 20 20 20 20 69 66 64 65 66 20 5a 4c 49 42 5f       ifdef ZLIB_
2920: 49 4e 54 45 52 4e 41 4c 0a 23 20 20 20 20 20 20  INTERNAL.#      
2930: 20 20 64 65 66 69 6e 65 20 5a 45 58 54 45 52 4e    define ZEXTERN
2940: 20 65 78 74 65 72 6e 20 5f 5f 64 65 63 6c 73 70   extern __declsp
2950: 65 63 28 64 6c 6c 65 78 70 6f 72 74 29 0a 23 20  ec(dllexport).# 
2960: 20 20 20 20 20 65 6c 73 65 0a 23 20 20 20 20 20       else.#     
2970: 20 20 20 64 65 66 69 6e 65 20 5a 45 58 54 45 52     define ZEXTER
2980: 4e 20 65 78 74 65 72 6e 20 5f 5f 64 65 63 6c 73  N extern __decls
2990: 70 65 63 28 64 6c 6c 69 6d 70 6f 72 74 29 0a 23  pec(dllimport).#
29a0: 20 20 20 20 20 20 65 6e 64 69 66 0a 23 20 20 20        endif.#   
29b0: 20 65 6e 64 69 66 0a 23 20 20 65 6e 64 69 66 20   endif.#  endif 
29c0: 20 2f 2a 20 5a 4c 49 42 5f 44 4c 4c 20 2a 2f 0a   /* ZLIB_DLL */.
29d0: 20 20 20 2f 2a 20 49 66 20 62 75 69 6c 64 69 6e     /* If buildin
29e0: 67 20 6f 72 20 75 73 69 6e 67 20 7a 6c 69 62 20  g or using zlib 
29f0: 77 69 74 68 20 74 68 65 20 57 49 4e 41 50 49 2f  with the WINAPI/
2a00: 57 49 4e 41 50 49 56 20 63 61 6c 6c 69 6e 67 20  WINAPIV calling 
2a10: 63 6f 6e 76 65 6e 74 69 6f 6e 2c 0a 20 20 20 20  convention,.    
2a20: 2a 20 64 65 66 69 6e 65 20 5a 4c 49 42 5f 57 49  * define ZLIB_WI
2a30: 4e 41 50 49 2e 0a 20 20 20 20 2a 20 43 61 75 74  NAPI..    * Caut
2a40: 69 6f 6e 3a 20 74 68 65 20 73 74 61 6e 64 61 72  ion: the standar
2a50: 64 20 5a 4c 49 42 31 2e 44 4c 4c 20 69 73 20 4e  d ZLIB1.DLL is N
2a60: 4f 54 20 63 6f 6d 70 69 6c 65 64 20 75 73 69 6e  OT compiled usin
2a70: 67 20 5a 4c 49 42 5f 57 49 4e 41 50 49 2e 0a 20  g ZLIB_WINAPI.. 
2a80: 20 20 20 2a 2f 0a 23 20 20 69 66 64 65 66 20 5a     */.#  ifdef Z
2a90: 4c 49 42 5f 57 49 4e 41 50 49 0a 23 20 20 20 20  LIB_WINAPI.#    
2aa0: 69 66 64 65 66 20 46 41 52 0a 23 20 20 20 20 20  ifdef FAR.#     
2ab0: 20 75 6e 64 65 66 20 46 41 52 0a 23 20 20 20 20   undef FAR.#    
2ac0: 65 6e 64 69 66 0a 23 20 20 20 20 69 6e 63 6c 75  endif.#    inclu
2ad0: 64 65 20 3c 77 69 6e 64 6f 77 73 2e 68 3e 0a 20  de <windows.h>. 
2ae0: 20 20 20 20 2f 2a 20 4e 6f 20 6e 65 65 64 20 66      /* No need f
2af0: 6f 72 20 5f 65 78 70 6f 72 74 2c 20 75 73 65 20  or _export, use 
2b00: 5a 4c 49 42 2e 44 45 46 20 69 6e 73 74 65 61 64  ZLIB.DEF instead
2b10: 2e 20 2a 2f 0a 20 20 20 20 20 2f 2a 20 46 6f 72  . */.     /* For
2b20: 20 63 6f 6d 70 6c 65 74 65 20 57 69 6e 64 6f 77   complete Window
2b30: 73 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 2c  s compatibility,
2b40: 20 75 73 65 20 57 49 4e 41 50 49 2c 20 6e 6f 74   use WINAPI, not
2b50: 20 5f 5f 73 74 64 63 61 6c 6c 2e 20 2a 2f 0a 23   __stdcall. */.#
2b60: 20 20 20 20 64 65 66 69 6e 65 20 5a 45 58 50 4f      define ZEXPO
2b70: 52 54 20 57 49 4e 41 50 49 0a 23 20 20 20 20 69  RT WINAPI.#    i
2b80: 66 64 65 66 20 57 49 4e 33 32 0a 23 20 20 20 20  fdef WIN32.#    
2b90: 20 20 64 65 66 69 6e 65 20 5a 45 58 50 4f 52 54    define ZEXPORT
2ba0: 56 41 20 57 49 4e 41 50 49 56 0a 23 20 20 20 20  VA WINAPIV.#    
2bb0: 65 6c 73 65 0a 23 20 20 20 20 20 20 64 65 66 69  else.#      defi
2bc0: 6e 65 20 5a 45 58 50 4f 52 54 56 41 20 46 41 52  ne ZEXPORTVA FAR
2bd0: 20 43 44 45 43 4c 0a 23 20 20 20 20 65 6e 64 69   CDECL.#    endi
2be0: 66 0a 23 20 20 65 6e 64 69 66 0a 23 65 6e 64 69  f.#  endif.#endi
2bf0: 66 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 20 28  f..#if defined (
2c00: 5f 5f 42 45 4f 53 5f 5f 29 0a 23 20 20 69 66 64  __BEOS__).#  ifd
2c10: 65 66 20 5a 4c 49 42 5f 44 4c 4c 0a 23 20 20 20  ef ZLIB_DLL.#   
2c20: 20 69 66 64 65 66 20 5a 4c 49 42 5f 49 4e 54 45   ifdef ZLIB_INTE
2c30: 52 4e 41 4c 0a 23 20 20 20 20 20 20 64 65 66 69  RNAL.#      defi
2c40: 6e 65 20 5a 45 58 50 4f 52 54 20 20 20 5f 5f 64  ne ZEXPORT   __d
2c50: 65 63 6c 73 70 65 63 28 64 6c 6c 65 78 70 6f 72  eclspec(dllexpor
2c60: 74 29 0a 23 20 20 20 20 20 20 64 65 66 69 6e 65  t).#      define
2c70: 20 5a 45 58 50 4f 52 54 56 41 20 5f 5f 64 65 63   ZEXPORTVA __dec
2c80: 6c 73 70 65 63 28 64 6c 6c 65 78 70 6f 72 74 29  lspec(dllexport)
2c90: 0a 23 20 20 20 20 65 6c 73 65 0a 23 20 20 20 20  .#    else.#    
2ca0: 20 20 64 65 66 69 6e 65 20 5a 45 58 50 4f 52 54    define ZEXPORT
2cb0: 20 20 20 5f 5f 64 65 63 6c 73 70 65 63 28 64 6c     __declspec(dl
2cc0: 6c 69 6d 70 6f 72 74 29 0a 23 20 20 20 20 20 20  limport).#      
2cd0: 64 65 66 69 6e 65 20 5a 45 58 50 4f 52 54 56 41  define ZEXPORTVA
2ce0: 20 5f 5f 64 65 63 6c 73 70 65 63 28 64 6c 6c 69   __declspec(dlli
2cf0: 6d 70 6f 72 74 29 0a 23 20 20 20 20 65 6e 64 69  mport).#    endi
2d00: 66 0a 23 20 20 65 6e 64 69 66 0a 23 65 6e 64 69  f.#  endif.#endi
2d10: 66 0a 0a 23 69 66 6e 64 65 66 20 5a 45 58 54 45  f..#ifndef ZEXTE
2d20: 52 4e 0a 23 20 20 64 65 66 69 6e 65 20 5a 45 58  RN.#  define ZEX
2d30: 54 45 52 4e 20 65 78 74 65 72 6e 0a 23 65 6e 64  TERN extern.#end
2d40: 69 66 0a 23 69 66 6e 64 65 66 20 5a 45 58 50 4f  if.#ifndef ZEXPO
2d50: 52 54 0a 23 20 20 64 65 66 69 6e 65 20 5a 45 58  RT.#  define ZEX
2d60: 50 4f 52 54 0a 23 65 6e 64 69 66 0a 23 69 66 6e  PORT.#endif.#ifn
2d70: 64 65 66 20 5a 45 58 50 4f 52 54 56 41 0a 23 20  def ZEXPORTVA.# 
2d80: 20 64 65 66 69 6e 65 20 5a 45 58 50 4f 52 54 56   define ZEXPORTV
2d90: 41 0a 23 65 6e 64 69 66 0a 0a 23 69 66 6e 64 65  A.#endif..#ifnde
2da0: 66 20 46 41 52 0a 23 20 20 64 65 66 69 6e 65 20  f FAR.#  define 
2db0: 46 41 52 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20  FAR.#endif..#if 
2dc0: 21 64 65 66 69 6e 65 64 28 5f 5f 4d 41 43 54 59  !defined(__MACTY
2dd0: 50 45 53 5f 5f 29 0a 74 79 70 65 64 65 66 20 75  PES__).typedef u
2de0: 6e 73 69 67 6e 65 64 20 63 68 61 72 20 20 42 79  nsigned char  By
2df0: 74 65 3b 20 20 2f 2a 20 38 20 62 69 74 73 20 2a  te;  /* 8 bits *
2e00: 2f 0a 23 65 6e 64 69 66 0a 74 79 70 65 64 65 66  /.#endif.typedef
2e10: 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 20 20 20   unsigned int   
2e20: 75 49 6e 74 3b 20 20 2f 2a 20 31 36 20 62 69 74  uInt;  /* 16 bit
2e30: 73 20 6f 72 20 6d 6f 72 65 20 2a 2f 0a 74 79 70  s or more */.typ
2e40: 65 64 65 66 20 75 6e 73 69 67 6e 65 64 20 6c 6f  edef unsigned lo
2e50: 6e 67 20 20 75 4c 6f 6e 67 3b 20 2f 2a 20 33 32  ng  uLong; /* 32
2e60: 20 62 69 74 73 20 6f 72 20 6d 6f 72 65 20 2a 2f   bits or more */
2e70: 0a 0a 23 69 66 64 65 66 20 53 4d 41 4c 4c 5f 4d  ..#ifdef SMALL_M
2e80: 45 44 49 55 4d 0a 20 20 20 2f 2a 20 42 6f 72 6c  EDIUM.   /* Borl
2e90: 61 6e 64 20 43 2f 43 2b 2b 20 61 6e 64 20 73 6f  and C/C++ and so
2ea0: 6d 65 20 6f 6c 64 20 4d 53 43 20 76 65 72 73 69  me old MSC versi
2eb0: 6f 6e 73 20 69 67 6e 6f 72 65 20 46 41 52 20 69  ons ignore FAR i
2ec0: 6e 73 69 64 65 20 74 79 70 65 64 65 66 20 2a 2f  nside typedef */
2ed0: 0a 23 20 20 64 65 66 69 6e 65 20 42 79 74 65 66  .#  define Bytef
2ee0: 20 42 79 74 65 20 46 41 52 0a 23 65 6c 73 65 0a   Byte FAR.#else.
2ef0: 20 20 20 74 79 70 65 64 65 66 20 42 79 74 65 20     typedef Byte 
2f00: 20 46 41 52 20 42 79 74 65 66 3b 0a 23 65 6e 64   FAR Bytef;.#end
2f10: 69 66 0a 74 79 70 65 64 65 66 20 63 68 61 72 20  if.typedef char 
2f20: 20 46 41 52 20 63 68 61 72 66 3b 0a 74 79 70 65   FAR charf;.type
2f30: 64 65 66 20 69 6e 74 20 20 20 46 41 52 20 69 6e  def int   FAR in
2f40: 74 66 3b 0a 74 79 70 65 64 65 66 20 75 49 6e 74  tf;.typedef uInt
2f50: 20 20 46 41 52 20 75 49 6e 74 66 3b 0a 74 79 70    FAR uIntf;.typ
2f60: 65 64 65 66 20 75 4c 6f 6e 67 20 46 41 52 20 75  edef uLong FAR u
2f70: 4c 6f 6e 67 66 3b 0a 0a 23 69 66 64 65 66 20 53  Longf;..#ifdef S
2f80: 54 44 43 0a 20 20 20 74 79 70 65 64 65 66 20 76  TDC.   typedef v
2f90: 6f 69 64 20 63 6f 6e 73 74 20 2a 76 6f 69 64 70  oid const *voidp
2fa0: 63 3b 0a 20 20 20 74 79 70 65 64 65 66 20 76 6f  c;.   typedef vo
2fb0: 69 64 20 46 41 52 20 20 20 2a 76 6f 69 64 70 66  id FAR   *voidpf
2fc0: 3b 0a 20 20 20 74 79 70 65 64 65 66 20 76 6f 69  ;.   typedef voi
2fd0: 64 20 20 20 20 20 20 20 2a 76 6f 69 64 70 3b 0a  d       *voidp;.
2fe0: 23 65 6c 73 65 0a 20 20 20 74 79 70 65 64 65 66  #else.   typedef
2ff0: 20 42 79 74 65 20 63 6f 6e 73 74 20 2a 76 6f 69   Byte const *voi
3000: 64 70 63 3b 0a 20 20 20 74 79 70 65 64 65 66 20  dpc;.   typedef 
3010: 42 79 74 65 20 46 41 52 20 20 20 2a 76 6f 69 64  Byte FAR   *void
3020: 70 66 3b 0a 20 20 20 74 79 70 65 64 65 66 20 42  pf;.   typedef B
3030: 79 74 65 20 20 20 20 20 20 20 2a 76 6f 69 64 70  yte       *voidp
3040: 3b 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20 21 64  ;.#endif..#if !d
3050: 65 66 69 6e 65 64 28 5a 5f 55 34 29 20 26 26 20  efined(Z_U4) && 
3060: 21 64 65 66 69 6e 65 64 28 5a 5f 53 4f 4c 4f 29  !defined(Z_SOLO)
3070: 20 26 26 20 64 65 66 69 6e 65 64 28 53 54 44 43   && defined(STDC
3080: 29 0a 23 20 20 69 6e 63 6c 75 64 65 20 3c 6c 69  ).#  include <li
3090: 6d 69 74 73 2e 68 3e 0a 23 20 20 69 66 20 28 55  mits.h>.#  if (U
30a0: 49 4e 54 5f 4d 41 58 20 3d 3d 20 30 78 66 66 66  INT_MAX == 0xfff
30b0: 66 66 66 66 66 55 4c 29 0a 23 20 20 20 20 64 65  fffffUL).#    de
30c0: 66 69 6e 65 20 5a 5f 55 34 20 75 6e 73 69 67 6e  fine Z_U4 unsign
30d0: 65 64 0a 23 20 20 65 6c 69 66 20 28 55 4c 4f 4e  ed.#  elif (ULON
30e0: 47 5f 4d 41 58 20 3d 3d 20 30 78 66 66 66 66 66  G_MAX == 0xfffff
30f0: 66 66 66 55 4c 29 0a 23 20 20 20 20 64 65 66 69  fffUL).#    defi
3100: 6e 65 20 5a 5f 55 34 20 75 6e 73 69 67 6e 65 64  ne Z_U4 unsigned
3110: 20 6c 6f 6e 67 0a 23 20 20 65 6c 69 66 20 28 55   long.#  elif (U
3120: 53 48 52 54 5f 4d 41 58 20 3d 3d 20 30 78 66 66  SHRT_MAX == 0xff
3130: 66 66 66 66 66 66 55 4c 29 0a 23 20 20 20 20 64  ffffffUL).#    d
3140: 65 66 69 6e 65 20 5a 5f 55 34 20 75 6e 73 69 67  efine Z_U4 unsig
3150: 6e 65 64 20 73 68 6f 72 74 0a 23 20 20 65 6e 64  ned short.#  end
3160: 69 66 0a 23 65 6e 64 69 66 0a 0a 23 69 66 64 65  if.#endif..#ifde
3170: 66 20 5a 5f 55 34 0a 20 20 20 74 79 70 65 64 65  f Z_U4.   typede
3180: 66 20 5a 5f 55 34 20 7a 5f 63 72 63 5f 74 3b 0a  f Z_U4 z_crc_t;.
3190: 23 65 6c 73 65 0a 20 20 20 74 79 70 65 64 65 66  #else.   typedef
31a0: 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 7a   unsigned long z
31b0: 5f 63 72 63 5f 74 3b 0a 23 65 6e 64 69 66 0a 0a  _crc_t;.#endif..
31c0: 23 69 66 20 31 20 20 20 20 2f 2a 20 77 61 73 20  #if 1    /* was 
31d0: 73 65 74 20 74 6f 20 23 69 66 20 31 20 62 79 20  set to #if 1 by 
31e0: 2e 2f 63 6f 6e 66 69 67 75 72 65 20 2a 2f 0a 23  ./configure */.#
31f0: 20 20 64 65 66 69 6e 65 20 5a 5f 48 41 56 45 5f    define Z_HAVE_
3200: 55 4e 49 53 54 44 5f 48 0a 23 65 6e 64 69 66 0a  UNISTD_H.#endif.
3210: 0a 23 69 66 20 31 20 20 20 20 2f 2a 20 77 61 73  .#if 1    /* was
3220: 20 73 65 74 20 74 6f 20 23 69 66 20 31 20 62 79   set to #if 1 by
3230: 20 2e 2f 63 6f 6e 66 69 67 75 72 65 20 2a 2f 0a   ./configure */.
3240: 23 20 20 64 65 66 69 6e 65 20 5a 5f 48 41 56 45  #  define Z_HAVE
3250: 5f 53 54 44 41 52 47 5f 48 0a 23 65 6e 64 69 66  _STDARG_H.#endif
3260: 0a 0a 23 69 66 64 65 66 20 53 54 44 43 0a 23 20  ..#ifdef STDC.# 
3270: 20 69 66 6e 64 65 66 20 5a 5f 53 4f 4c 4f 0a 23   ifndef Z_SOLO.#
3280: 20 20 20 20 69 6e 63 6c 75 64 65 20 3c 73 79 73      include <sys
3290: 2f 74 79 70 65 73 2e 68 3e 20 20 20 20 20 20 2f  /types.h>      /
32a0: 2a 20 66 6f 72 20 6f 66 66 5f 74 20 2a 2f 0a 23  * for off_t */.#
32b0: 20 20 65 6e 64 69 66 0a 23 65 6e 64 69 66 0a 0a    endif.#endif..
32c0: 23 69 66 20 64 65 66 69 6e 65 64 28 53 54 44 43  #if defined(STDC
32d0: 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5a 5f 48  ) || defined(Z_H
32e0: 41 56 45 5f 53 54 44 41 52 47 5f 48 29 0a 23 20  AVE_STDARG_H).# 
32f0: 20 69 66 6e 64 65 66 20 5a 5f 53 4f 4c 4f 0a 23   ifndef Z_SOLO.#
3300: 20 20 20 20 69 6e 63 6c 75 64 65 20 3c 73 74 64      include <std
3310: 61 72 67 2e 68 3e 20 20 20 20 20 20 20 20 20 2f  arg.h>         /
3320: 2a 20 66 6f 72 20 76 61 5f 6c 69 73 74 20 2a 2f  * for va_list */
3330: 0a 23 20 20 65 6e 64 69 66 0a 23 65 6e 64 69 66  .#  endif.#endif
3340: 0a 0a 23 69 66 64 65 66 20 5f 57 49 4e 33 32 0a  ..#ifdef _WIN32.
3350: 23 20 20 69 66 6e 64 65 66 20 5a 5f 53 4f 4c 4f  #  ifndef Z_SOLO
3360: 0a 23 20 20 20 20 69 6e 63 6c 75 64 65 20 3c 73  .#    include <s
3370: 74 64 64 65 66 2e 68 3e 20 20 20 20 20 20 20 20  tddef.h>        
3380: 20 2f 2a 20 66 6f 72 20 77 63 68 61 72 5f 74 20   /* for wchar_t 
3390: 2a 2f 0a 23 20 20 65 6e 64 69 66 0a 23 65 6e 64  */.#  endif.#end
33a0: 69 66 0a 0a 2f 2a 20 61 20 6c 69 74 74 6c 65 20  if../* a little 
33b0: 74 72 69 63 6b 20 74 6f 20 61 63 63 6f 6d 6d 6f  trick to accommo
33c0: 64 61 74 65 20 62 6f 74 68 20 22 23 64 65 66 69  date both "#defi
33d0: 6e 65 20 5f 4c 41 52 47 45 46 49 4c 45 36 34 5f  ne _LARGEFILE64_
33e0: 53 4f 55 52 43 45 22 20 61 6e 64 0a 20 2a 20 22  SOURCE" and. * "
33f0: 23 64 65 66 69 6e 65 20 5f 4c 41 52 47 45 46 49  #define _LARGEFI
3400: 4c 45 36 34 5f 53 4f 55 52 43 45 20 31 22 20 61  LE64_SOURCE 1" a
3410: 73 20 72 65 71 75 65 73 74 69 6e 67 20 36 34 2d  s requesting 64-
3420: 62 69 74 20 6f 70 65 72 61 74 69 6f 6e 73 2c 20  bit operations, 
3430: 28 65 76 65 6e 0a 20 2a 20 74 68 6f 75 67 68 20  (even. * though 
3440: 74 68 65 20 66 6f 72 6d 65 72 20 64 6f 65 73 20  the former does 
3450: 6e 6f 74 20 63 6f 6e 66 6f 72 6d 20 74 6f 20 74  not conform to t
3460: 68 65 20 4c 46 53 20 64 6f 63 75 6d 65 6e 74 29  he LFS document)
3470: 2c 20 62 75 74 20 63 6f 6e 73 69 64 65 72 69 6e  , but considerin
3480: 67 0a 20 2a 20 62 6f 74 68 20 22 23 75 6e 64 65  g. * both "#unde
3490: 66 20 5f 4c 41 52 47 45 46 49 4c 45 36 34 5f 53  f _LARGEFILE64_S
34a0: 4f 55 52 43 45 22 20 61 6e 64 20 22 23 64 65 66  OURCE" and "#def
34b0: 69 6e 65 20 5f 4c 41 52 47 45 46 49 4c 45 36 34  ine _LARGEFILE64
34c0: 5f 53 4f 55 52 43 45 20 30 22 20 61 73 0a 20 2a  _SOURCE 0" as. *
34d0: 20 65 71 75 69 76 61 6c 65 6e 74 6c 79 20 72 65   equivalently re
34e0: 71 75 65 73 74 69 6e 67 20 6e 6f 20 36 34 2d 62  questing no 64-b
34f0: 69 74 20 6f 70 65 72 61 74 69 6f 6e 73 0a 20 2a  it operations. *
3500: 2f 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f 4c  /.#if defined(_L
3510: 41 52 47 45 46 49 4c 45 36 34 5f 53 4f 55 52 43  ARGEFILE64_SOURC
3520: 45 29 20 26 26 20 2d 5f 4c 41 52 47 45 46 49 4c  E) && -_LARGEFIL
3530: 45 36 34 5f 53 4f 55 52 43 45 20 2d 20 2d 31 20  E64_SOURCE - -1 
3540: 3d 3d 20 31 0a 23 20 20 75 6e 64 65 66 20 5f 4c  == 1.#  undef _L
3550: 41 52 47 45 46 49 4c 45 36 34 5f 53 4f 55 52 43  ARGEFILE64_SOURC
3560: 45 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20 64 65  E.#endif..#if de
3570: 66 69 6e 65 64 28 5f 5f 57 41 54 43 4f 4d 43 5f  fined(__WATCOMC_
3580: 5f 29 20 26 26 20 21 64 65 66 69 6e 65 64 28 5a  _) && !defined(Z
3590: 5f 48 41 56 45 5f 55 4e 49 53 54 44 5f 48 29 0a  _HAVE_UNISTD_H).
35a0: 23 20 20 64 65 66 69 6e 65 20 5a 5f 48 41 56 45  #  define Z_HAVE
35b0: 5f 55 4e 49 53 54 44 5f 48 0a 23 65 6e 64 69 66  _UNISTD_H.#endif
35c0: 0a 23 69 66 6e 64 65 66 20 5a 5f 53 4f 4c 4f 0a  .#ifndef Z_SOLO.
35d0: 23 20 20 69 66 20 64 65 66 69 6e 65 64 28 5a 5f  #  if defined(Z_
35e0: 48 41 56 45 5f 55 4e 49 53 54 44 5f 48 29 20 7c  HAVE_UNISTD_H) |
35f0: 7c 20 64 65 66 69 6e 65 64 28 5f 4c 41 52 47 45  | defined(_LARGE
3600: 46 49 4c 45 36 34 5f 53 4f 55 52 43 45 29 0a 23  FILE64_SOURCE).#
3610: 20 20 20 20 69 6e 63 6c 75 64 65 20 3c 75 6e 69      include <uni
3620: 73 74 64 2e 68 3e 20 20 20 20 20 20 20 20 20 2f  std.h>         /
3630: 2a 20 66 6f 72 20 53 45 45 4b 5f 2a 2c 20 6f 66  * for SEEK_*, of
3640: 66 5f 74 2c 20 61 6e 64 20 5f 4c 46 53 36 34 5f  f_t, and _LFS64_
3650: 4c 41 52 47 45 46 49 4c 45 20 2a 2f 0a 23 20 20  LARGEFILE */.#  
3660: 20 20 69 66 64 65 66 20 56 4d 53 0a 23 20 20 20    ifdef VMS.#   
3670: 20 20 20 69 6e 63 6c 75 64 65 20 3c 75 6e 69 78     include <unix
3680: 69 6f 2e 68 3e 20 20 20 20 20 20 20 2f 2a 20 66  io.h>       /* f
3690: 6f 72 20 6f 66 66 5f 74 20 2a 2f 0a 23 20 20 20  or off_t */.#   
36a0: 20 65 6e 64 69 66 0a 23 20 20 20 20 69 66 6e 64   endif.#    ifnd
36b0: 65 66 20 7a 5f 6f 66 66 5f 74 0a 23 20 20 20 20  ef z_off_t.#    
36c0: 20 20 64 65 66 69 6e 65 20 7a 5f 6f 66 66 5f 74    define z_off_t
36d0: 20 6f 66 66 5f 74 0a 23 20 20 20 20 65 6e 64 69   off_t.#    endi
36e0: 66 0a 23 20 20 65 6e 64 69 66 0a 23 65 6e 64 69  f.#  endif.#endi
36f0: 66 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f  f..#if defined(_
3700: 4c 46 53 36 34 5f 4c 41 52 47 45 46 49 4c 45 29  LFS64_LARGEFILE)
3710: 20 26 26 20 5f 4c 46 53 36 34 5f 4c 41 52 47 45   && _LFS64_LARGE
3720: 46 49 4c 45 2d 30 0a 23 20 20 64 65 66 69 6e 65  FILE-0.#  define
3730: 20 5a 5f 4c 46 53 36 34 0a 23 65 6e 64 69 66 0a   Z_LFS64.#endif.
3740: 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f 4c 41  .#if defined(_LA
3750: 52 47 45 46 49 4c 45 36 34 5f 53 4f 55 52 43 45  RGEFILE64_SOURCE
3760: 29 20 26 26 20 64 65 66 69 6e 65 64 28 5a 5f 4c  ) && defined(Z_L
3770: 46 53 36 34 29 0a 23 20 20 64 65 66 69 6e 65 20  FS64).#  define 
3780: 5a 5f 4c 41 52 47 45 36 34 0a 23 65 6e 64 69 66  Z_LARGE64.#endif
3790: 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f 46  ..#if defined(_F
37a0: 49 4c 45 5f 4f 46 46 53 45 54 5f 42 49 54 53 29  ILE_OFFSET_BITS)
37b0: 20 26 26 20 5f 46 49 4c 45 5f 4f 46 46 53 45 54   && _FILE_OFFSET
37c0: 5f 42 49 54 53 2d 30 20 3d 3d 20 36 34 20 26 26  _BITS-0 == 64 &&
37d0: 20 64 65 66 69 6e 65 64 28 5a 5f 4c 46 53 36 34   defined(Z_LFS64
37e0: 29 0a 23 20 20 64 65 66 69 6e 65 20 5a 5f 57 41  ).#  define Z_WA
37f0: 4e 54 36 34 0a 23 65 6e 64 69 66 0a 0a 23 69 66  NT64.#endif..#if
3800: 20 21 64 65 66 69 6e 65 64 28 53 45 45 4b 5f 53   !defined(SEEK_S
3810: 45 54 29 20 26 26 20 21 64 65 66 69 6e 65 64 28  ET) && !defined(
3820: 5a 5f 53 4f 4c 4f 29 0a 23 20 20 64 65 66 69 6e  Z_SOLO).#  defin
3830: 65 20 53 45 45 4b 5f 53 45 54 20 20 20 20 20 20  e SEEK_SET      
3840: 20 20 30 20 20 20 20 20 20 20 2f 2a 20 53 65 65    0       /* See
3850: 6b 20 66 72 6f 6d 20 62 65 67 69 6e 6e 69 6e 67  k from beginning
3860: 20 6f 66 20 66 69 6c 65 2e 20 20 2a 2f 0a 23 20   of file.  */.# 
3870: 20 64 65 66 69 6e 65 20 53 45 45 4b 5f 43 55 52   define SEEK_CUR
3880: 20 20 20 20 20 20 20 20 31 20 20 20 20 20 20 20          1       
3890: 2f 2a 20 53 65 65 6b 20 66 72 6f 6d 20 63 75 72  /* Seek from cur
38a0: 72 65 6e 74 20 70 6f 73 69 74 69 6f 6e 2e 20 20  rent position.  
38b0: 2a 2f 0a 23 20 20 64 65 66 69 6e 65 20 53 45 45  */.#  define SEE
38c0: 4b 5f 45 4e 44 20 20 20 20 20 20 20 20 32 20 20  K_END        2  
38d0: 20 20 20 20 20 2f 2a 20 53 65 74 20 66 69 6c 65       /* Set file
38e0: 20 70 6f 69 6e 74 65 72 20 74 6f 20 45 4f 46 20   pointer to EOF 
38f0: 70 6c 75 73 20 22 6f 66 66 73 65 74 22 20 2a 2f  plus "offset" */
3900: 0a 23 65 6e 64 69 66 0a 0a 23 69 66 6e 64 65 66  .#endif..#ifndef
3910: 20 7a 5f 6f 66 66 5f 74 0a 23 20 20 64 65 66 69   z_off_t.#  defi
3920: 6e 65 20 7a 5f 6f 66 66 5f 74 20 6c 6f 6e 67 0a  ne z_off_t long.
3930: 23 65 6e 64 69 66 0a 0a 23 69 66 20 21 64 65 66  #endif..#if !def
3940: 69 6e 65 64 28 5f 57 49 4e 33 32 29 20 26 26 20  ined(_WIN32) && 
3950: 64 65 66 69 6e 65 64 28 5a 5f 4c 41 52 47 45 36  defined(Z_LARGE6
3960: 34 29 0a 23 20 20 64 65 66 69 6e 65 20 7a 5f 6f  4).#  define z_o
3970: 66 66 36 34 5f 74 20 6f 66 66 36 34 5f 74 0a 23  ff64_t off64_t.#
3980: 65 6c 73 65 0a 23 20 20 69 66 20 64 65 66 69 6e  else.#  if defin
3990: 65 64 28 5f 57 49 4e 33 32 29 20 26 26 20 21 64  ed(_WIN32) && !d
39a0: 65 66 69 6e 65 64 28 5f 5f 47 4e 55 43 5f 5f 29  efined(__GNUC__)
39b0: 20 26 26 20 21 64 65 66 69 6e 65 64 28 5a 5f 53   && !defined(Z_S
39c0: 4f 4c 4f 29 0a 23 20 20 20 20 64 65 66 69 6e 65  OLO).#    define
39d0: 20 7a 5f 6f 66 66 36 34 5f 74 20 5f 5f 69 6e 74   z_off64_t __int
39e0: 36 34 0a 23 20 20 65 6c 73 65 0a 23 20 20 20 20  64.#  else.#    
39f0: 64 65 66 69 6e 65 20 7a 5f 6f 66 66 36 34 5f 74  define z_off64_t
3a00: 20 7a 5f 6f 66 66 5f 74 0a 23 20 20 65 6e 64 69   z_off_t.#  endi
3a10: 66 0a 23 65 6e 64 69 66 0a 0a 2f 2a 20 4d 56 53  f.#endif../* MVS
3a20: 20 6c 69 6e 6b 65 72 20 64 6f 65 73 20 6e 6f 74   linker does not
3a30: 20 73 75 70 70 6f 72 74 20 65 78 74 65 72 6e 61   support externa
3a40: 6c 20 6e 61 6d 65 73 20 6c 61 72 67 65 72 20 74  l names larger t
3a50: 68 61 6e 20 38 20 62 79 74 65 73 20 2a 2f 0a 23  han 8 bytes */.#
3a60: 69 66 20 64 65 66 69 6e 65 64 28 5f 5f 4d 56 53  if defined(__MVS
3a70: 5f 5f 29 0a 20 20 23 70 72 61 67 6d 61 20 6d 61  __).  #pragma ma
3a80: 70 28 64 65 66 6c 61 74 65 49 6e 69 74 5f 2c 22  p(deflateInit_,"
3a90: 44 45 49 4e 22 29 0a 20 20 23 70 72 61 67 6d 61  DEIN").  #pragma
3aa0: 20 6d 61 70 28 64 65 66 6c 61 74 65 49 6e 69 74   map(deflateInit
3ab0: 32 5f 2c 22 44 45 49 4e 32 22 29 0a 20 20 23 70  2_,"DEIN2").  #p
3ac0: 72 61 67 6d 61 20 6d 61 70 28 64 65 66 6c 61 74  ragma map(deflat
3ad0: 65 45 6e 64 2c 22 44 45 45 4e 44 22 29 0a 20 20  eEnd,"DEEND").  
3ae0: 23 70 72 61 67 6d 61 20 6d 61 70 28 64 65 66 6c  #pragma map(defl
3af0: 61 74 65 42 6f 75 6e 64 2c 22 44 45 42 4e 44 22  ateBound,"DEBND"
3b00: 29 0a 20 20 23 70 72 61 67 6d 61 20 6d 61 70 28  ).  #pragma map(
3b10: 69 6e 66 6c 61 74 65 49 6e 69 74 5f 2c 22 49 4e  inflateInit_,"IN
3b20: 49 4e 22 29 0a 20 20 23 70 72 61 67 6d 61 20 6d  IN").  #pragma m
3b30: 61 70 28 69 6e 66 6c 61 74 65 49 6e 69 74 32 5f  ap(inflateInit2_
3b40: 2c 22 49 4e 49 4e 32 22 29 0a 20 20 23 70 72 61  ,"ININ2").  #pra
3b50: 67 6d 61 20 6d 61 70 28 69 6e 66 6c 61 74 65 45  gma map(inflateE
3b60: 6e 64 2c 22 49 4e 45 4e 44 22 29 0a 20 20 23 70  nd,"INEND").  #p
3b70: 72 61 67 6d 61 20 6d 61 70 28 69 6e 66 6c 61 74  ragma map(inflat
3b80: 65 53 79 6e 63 2c 22 49 4e 53 59 22 29 0a 20 20  eSync,"INSY").  
3b90: 23 70 72 61 67 6d 61 20 6d 61 70 28 69 6e 66 6c  #pragma map(infl
3ba0: 61 74 65 53 65 74 44 69 63 74 69 6f 6e 61 72 79  ateSetDictionary
3bb0: 2c 22 49 4e 53 45 44 49 22 29 0a 20 20 23 70 72  ,"INSEDI").  #pr
3bc0: 61 67 6d 61 20 6d 61 70 28 63 6f 6d 70 72 65 73  agma map(compres
3bd0: 73 42 6f 75 6e 64 2c 22 43 4d 42 4e 44 22 29 0a  sBound,"CMBND").
3be0: 20 20 23 70 72 61 67 6d 61 20 6d 61 70 28 69 6e    #pragma map(in
3bf0: 66 6c 61 74 65 5f 74 61 62 6c 65 2c 22 49 4e 54  flate_table,"INT
3c00: 41 42 4c 22 29 0a 20 20 23 70 72 61 67 6d 61 20  ABL").  #pragma 
3c10: 6d 61 70 28 69 6e 66 6c 61 74 65 5f 66 61 73 74  map(inflate_fast
3c20: 2c 22 49 4e 46 41 22 29 0a 20 20 23 70 72 61 67  ,"INFA").  #prag
3c30: 6d 61 20 6d 61 70 28 69 6e 66 6c 61 74 65 5f 63  ma map(inflate_c
3c40: 6f 70 79 72 69 67 68 74 2c 22 49 4e 43 4f 50 59  opyright,"INCOPY
3c50: 22 29 0a 23 65 6e 64 69 66 0a 0a 23 65 6e 64 69  ").#endif..#endi
3c60: 66 20 2f 2a 20 5a 43 4f 4e 46 5f 48 20 2a 2f 0a  f /* ZCONF_H */.