Home | History | Annotate | Line # | Download | only in os400
zlib.inc revision 1.1
      1  1.1  christos       *  ZLIB.INC - Interface to the general purpose compression library
      2  1.1  christos       *
      3  1.1  christos       *  ILE RPG400 version by Patrick Monnerat, DATASPHERE.
      4  1.1  christos       *  Version 1.2.10
      5  1.1  christos       *
      6  1.1  christos       *
      7  1.1  christos       *  WARNING:
      8  1.1  christos       *     Procedures inflateInit(), inflateInit2(), deflateInit(),
      9  1.1  christos       *         deflateInit2() and inflateBackInit() need to be called with
     10  1.1  christos       *         two additional arguments:
     11  1.1  christos       *         the package version string and the stream control structure.
     12  1.1  christos       *         size. This is needed because RPG lacks some macro feature.
     13  1.1  christos       *         Call these procedures as:
     14  1.1  christos       *             inflateInit(...: ZLIB_VERSION: %size(z_stream))
     15  1.1  christos       *
     16  1.1  christos       /if not defined(ZLIB_H_)
     17  1.1  christos       /define ZLIB_H_
     18  1.1  christos       *
     19  1.1  christos       **************************************************************************
     20  1.1  christos       *                               Constants
     21  1.1  christos       **************************************************************************
     22  1.1  christos       *
     23  1.1  christos       *  Versioning information.
     24  1.1  christos       *
     25  1.1  christos      D ZLIB_VERSION    C                   '1.2.10'
     26  1.1  christos      D ZLIB_VERNUM     C                   X'12a0'
     27  1.1  christos      D ZLIB_VER_MAJOR  C                   1
     28  1.1  christos      D ZLIB_VER_MINOR  C                   2
     29  1.1  christos      D ZLIB_VER_REVISION...
     30  1.1  christos      D                 C                   10
     31  1.1  christos      D ZLIB_VER_SUBREVISION...
     32  1.1  christos      D                 C                   0
     33  1.1  christos       *
     34  1.1  christos       *  Other equates.
     35  1.1  christos       *
     36  1.1  christos      D Z_NO_FLUSH      C                   0
     37  1.1  christos      D Z_PARTIAL_FLUSH...
     38  1.1  christos      D                 C                   1
     39  1.1  christos      D Z_SYNC_FLUSH    C                   2
     40  1.1  christos      D Z_FULL_FLUSH    C                   3
     41  1.1  christos      D Z_FINISH        C                   4
     42  1.1  christos      D Z_BLOCK         C                   5
     43  1.1  christos      D Z_TREES         C                   6
     44  1.1  christos       *
     45  1.1  christos      D Z_OK            C                   0
     46  1.1  christos      D Z_STREAM_END    C                   1
     47  1.1  christos      D Z_NEED_DICT     C                   2
     48  1.1  christos      D Z_ERRNO         C                   -1
     49  1.1  christos      D Z_STREAM_ERROR  C                   -2
     50  1.1  christos      D Z_DATA_ERROR    C                   -3
     51  1.1  christos      D Z_MEM_ERROR     C                   -4
     52  1.1  christos      D Z_BUF_ERROR     C                   -5
     53  1.1  christos      D Z_VERSION_ERROR C                   -6
     54  1.1  christos       *
     55  1.1  christos      D Z_NO_COMPRESSION...
     56  1.1  christos      D                 C                   0
     57  1.1  christos      D Z_BEST_SPEED    C                   1
     58  1.1  christos      D Z_BEST_COMPRESSION...
     59  1.1  christos      D                 C                   9
     60  1.1  christos      D Z_DEFAULT_COMPRESSION...
     61  1.1  christos      D                 C                   -1
     62  1.1  christos       *
     63  1.1  christos      D Z_FILTERED      C                   1
     64  1.1  christos      D Z_HUFFMAN_ONLY  C                   2
     65  1.1  christos      D Z_RLE           C                   3
     66  1.1  christos      D Z_DEFAULT_STRATEGY...
     67  1.1  christos      D                 C                   0
     68  1.1  christos       *
     69  1.1  christos      D Z_BINARY        C                   0
     70  1.1  christos      D Z_ASCII         C                   1
     71  1.1  christos      D Z_UNKNOWN       C                   2
     72  1.1  christos       *
     73  1.1  christos      D Z_DEFLATED      C                   8
     74  1.1  christos       *
     75  1.1  christos      D Z_NULL          C                   0
     76  1.1  christos       *
     77  1.1  christos       **************************************************************************
     78  1.1  christos       *                                 Types
     79  1.1  christos       **************************************************************************
     80  1.1  christos       *
     81  1.1  christos      D z_streamp       S               *                                        Stream struct ptr
     82  1.1  christos      D gzFile          S               *                                        File pointer
     83  1.1  christos      D gz_headerp      S               *
     84  1.1  christos      D z_off_t         S             10i 0                                      Stream offsets
     85  1.1  christos      D z_off64_t       S             20i 0                                      Stream offsets
     86  1.1  christos       *
     87  1.1  christos       **************************************************************************
     88  1.1  christos       *                               Structures
     89  1.1  christos       **************************************************************************
     90  1.1  christos       *
     91  1.1  christos       *  The GZIP encode/decode stream support structure.
     92  1.1  christos       *
     93  1.1  christos      D z_stream        DS                  align based(z_streamp)
     94  1.1  christos      D  zs_next_in                     *                                        Next input byte
     95  1.1  christos      D  zs_avail_in                  10U 0                                      Byte cnt at next_in
     96  1.1  christos      D  zs_total_in                  10U 0                                      Total bytes read
     97  1.1  christos      D  zs_next_out                    *                                        Output buffer ptr
     98  1.1  christos      D  zs_avail_out                 10U 0                                      Room left @ next_out
     99  1.1  christos      D  zs_total_out                 10U 0                                      Total bytes written
    100  1.1  christos      D  zs_msg                         *                                        Last errmsg or null
    101  1.1  christos      D  zs_state                       *                                        Internal state
    102  1.1  christos      D  zs_zalloc                      *   procptr                              Int. state allocator
    103  1.1  christos      D  zs_free                        *   procptr                              Int. state dealloc.
    104  1.1  christos      D  zs_opaque                      *                                        Private alloc. data
    105  1.1  christos      D  zs_data_type                 10i 0                                      ASC/BIN best guess
    106  1.1  christos      D  zs_adler                     10u 0                                      Uncompr. adler32 val
    107  1.1  christos      D                               10U 0                                      Reserved
    108  1.1  christos      D                               10U 0                                      Ptr. alignment
    109  1.1  christos       *
    110  1.1  christos       **************************************************************************
    111  1.1  christos       *                     Utility function prototypes
    112  1.1  christos       **************************************************************************
    113  1.1  christos       *
    114  1.1  christos      D compress        PR            10I 0 extproc('compress')
    115  1.1  christos      D  dest                      65535    options(*varsize)                    Destination buffer
    116  1.1  christos      D  destLen                      10U 0                                      Destination length
    117  1.1  christos      D  source                    65535    const options(*varsize)              Source buffer
    118  1.1  christos      D  sourceLen                    10u 0 value                                Source length
    119  1.1  christos       *
    120  1.1  christos      D compress2       PR            10I 0 extproc('compress2')
    121  1.1  christos      D  dest                      65535    options(*varsize)                    Destination buffer
    122  1.1  christos      D  destLen                      10U 0                                      Destination length
    123  1.1  christos      D  source                    65535    const options(*varsize)              Source buffer
    124  1.1  christos      D  sourceLen                    10U 0 value                                Source length
    125  1.1  christos      D  level                        10I 0 value                                Compression level
    126  1.1  christos       *
    127  1.1  christos      D compressBound   PR            10U 0 extproc('compressBound')
    128  1.1  christos      D  sourceLen                    10U 0 value
    129  1.1  christos       *
    130  1.1  christos      D uncompress      PR            10I 0 extproc('uncompress')
    131  1.1  christos      D  dest                      65535    options(*varsize)                    Destination buffer
    132  1.1  christos      D  destLen                      10U 0                                      Destination length
    133  1.1  christos      D  source                    65535    const options(*varsize)              Source buffer
    134  1.1  christos      D  sourceLen                    10U 0 value                                Source length
    135  1.1  christos       *
    136  1.1  christos      D uncompress2     PR            10I 0 extproc('uncompress2')
    137  1.1  christos      D  dest                      65535    options(*varsize)                    Destination buffer
    138  1.1  christos      D  destLen                      10U 0                                      Destination length
    139  1.1  christos      D  source                    65535    const options(*varsize)              Source buffer
    140  1.1  christos      D  sourceLen                    10U 0                                      Source length
    141  1.1  christos       *
    142  1.1  christos       /if not defined(LARGE_FILES)
    143  1.1  christos      D gzopen          PR                  extproc('gzopen')
    144  1.1  christos      D                                     like(gzFile)
    145  1.1  christos      D  path                           *   value options(*string)               File pathname
    146  1.1  christos      D  mode                           *   value options(*string)               Open mode
    147  1.1  christos       /else
    148  1.1  christos      D gzopen          PR                  extproc('gzopen64')
    149  1.1  christos      D                                     like(gzFile)
    150  1.1  christos      D  path                           *   value options(*string)               File pathname
    151  1.1  christos      D  mode                           *   value options(*string)               Open mode
    152  1.1  christos       *
    153  1.1  christos      D gzopen64        PR                  extproc('gzopen64')
    154  1.1  christos      D                                     like(gzFile)
    155  1.1  christos      D  path                           *   value options(*string)               File pathname
    156  1.1  christos      D  mode                           *   value options(*string)               Open mode
    157  1.1  christos       /endif
    158  1.1  christos       *
    159  1.1  christos      D gzdopen         PR                  extproc('gzdopen')
    160  1.1  christos      D                                     like(gzFile)
    161  1.1  christos      D  fd                           10I 0 value                                File descriptor
    162  1.1  christos      D  mode                           *   value options(*string)               Open mode
    163  1.1  christos       *
    164  1.1  christos      D gzbuffer        PR            10I 0 extproc('gzbuffer')
    165  1.1  christos      D  file                               value like(gzFile)                   File pointer
    166  1.1  christos      D  size                         10U 0 value
    167  1.1  christos       *
    168  1.1  christos      D gzsetparams     PR            10I 0 extproc('gzsetparams')
    169  1.1  christos      D  file                               value like(gzFile)                   File pointer
    170  1.1  christos      D  level                        10I 0 value
    171  1.1  christos      D  strategy                     10I 0 value
    172  1.1  christos       *
    173  1.1  christos      D gzread          PR            10I 0 extproc('gzread')
    174  1.1  christos      D  file                               value like(gzFile)                   File pointer
    175  1.1  christos      D  buf                       65535    options(*varsize)                    Buffer
    176  1.1  christos      D  len                          10u 0 value                                Buffer length
    177  1.1  christos       *
    178  1.1  christos      D gzfread          PR           20I 0 extproc('gzfread')
    179  1.1  christos      D  buf                       65535    options(*varsize)                    Buffer
    180  1.1  christos      D  size                         20u 0 value                                Buffer length
    181  1.1  christos      D  nitems                       20u 0 value                                Buffer length
    182  1.1  christos      D  file                               value like(gzFile)                   File pointer
    183  1.1  christos       *
    184  1.1  christos      D gzwrite         PR            10I 0 extproc('gzwrite')
    185  1.1  christos      D  file                               value like(gzFile)                   File pointer
    186  1.1  christos      D  buf                       65535    const options(*varsize)              Buffer
    187  1.1  christos      D  len                          10u 0 value                                Buffer length
    188  1.1  christos       *
    189  1.1  christos      D gzfwrite         PR           20I 0 extproc('gzfwrite')
    190  1.1  christos      D  buf                       65535    options(*varsize)                    Buffer
    191  1.1  christos      D  size                         20u 0 value                                Buffer length
    192  1.1  christos      D  nitems                       20u 0 value                                Buffer length
    193  1.1  christos      D  file                               value like(gzFile)                   File pointer
    194  1.1  christos       *
    195  1.1  christos      D gzputs          PR            10I 0 extproc('gzputs')
    196  1.1  christos      D  file                               value like(gzFile)                   File pointer
    197  1.1  christos      D  s                              *   value options(*string)               String to output
    198  1.1  christos       *
    199  1.1  christos      D gzgets          PR              *   extproc('gzgets')
    200  1.1  christos      D  file                               value like(gzFile)                   File pointer
    201  1.1  christos      D  buf                       65535    options(*varsize)                    Read buffer
    202  1.1  christos      D  len                          10i 0 value                                Buffer length
    203  1.1  christos       *
    204  1.1  christos      D gzputc          PR            10i 0 extproc('gzputc')
    205  1.1  christos      D  file                               value like(gzFile)                   File pointer
    206  1.1  christos      D  c                            10I 0 value                                Character to write
    207  1.1  christos       *
    208  1.1  christos      D gzgetc          PR            10i 0 extproc('gzgetc')
    209  1.1  christos      D  file                               value like(gzFile)                   File pointer
    210  1.1  christos       *
    211  1.1  christos      D gzgetc_         PR            10i 0 extproc('gzgetc_')
    212  1.1  christos      D  file                               value like(gzFile)                   File pointer
    213  1.1  christos       *
    214  1.1  christos      D gzungetc        PR            10i 0 extproc('gzungetc')
    215  1.1  christos      D  c                            10I 0 value                                Character to push
    216  1.1  christos      D  file                               value like(gzFile)                   File pointer
    217  1.1  christos       *
    218  1.1  christos      D gzflush         PR            10i 0 extproc('gzflush')
    219  1.1  christos      D  file                               value like(gzFile)                   File pointer
    220  1.1  christos      D  flush                        10I 0 value                                Type of flush
    221  1.1  christos       *
    222  1.1  christos       /if not defined(LARGE_FILES)
    223  1.1  christos      D gzseek          PR                  extproc('gzseek')
    224  1.1  christos      D                                     like(z_off_t)
    225  1.1  christos      D  file                               value like(gzFile)                   File pointer
    226  1.1  christos      D  offset                             value like(z_off_t)                  Offset
    227  1.1  christos      D  whence                       10i 0 value                                Origin
    228  1.1  christos       /else
    229  1.1  christos      D gzseek          PR                  extproc('gzseek64')
    230  1.1  christos      D                                     like(z_off_t)
    231  1.1  christos      D  file                               value like(gzFile)                   File pointer
    232  1.1  christos      D  offset                             value like(z_off_t)                  Offset
    233  1.1  christos      D  whence                       10i 0 value                                Origin
    234  1.1  christos       *
    235  1.1  christos      D gzseek64        PR                  extproc('gzseek64')
    236  1.1  christos      D                                     like(z_off64_t)
    237  1.1  christos      D  file                               value like(gzFile)                   File pointer
    238  1.1  christos      D  offset                             value like(z_off64_t)                Offset
    239  1.1  christos      D  whence                       10i 0 value                                Origin
    240  1.1  christos       /endif
    241  1.1  christos       *
    242  1.1  christos      D gzrewind        PR            10i 0 extproc('gzrewind')
    243  1.1  christos      D  file                               value like(gzFile)                   File pointer
    244  1.1  christos       *
    245  1.1  christos       /if not defined(LARGE_FILES)
    246  1.1  christos      D gztell          PR                  extproc('gztell')
    247  1.1  christos      D                                     like(z_off_t)
    248  1.1  christos      D  file                               value like(gzFile)                   File pointer
    249  1.1  christos       /else
    250  1.1  christos      D gztell          PR                  extproc('gztell64')
    251  1.1  christos      D                                     like(z_off_t)
    252  1.1  christos      D  file                               value like(gzFile)                   File pointer
    253  1.1  christos       *
    254  1.1  christos      D gztell64        PR                  extproc('gztell64')
    255  1.1  christos      D                                     like(z_off64_t)
    256  1.1  christos      D  file                               value like(gzFile)                   File pointer
    257  1.1  christos       /endif
    258  1.1  christos       *
    259  1.1  christos       /if not defined(LARGE_FILES)
    260  1.1  christos      D gzoffset        PR                  extproc('gzoffset')
    261  1.1  christos      D                                     like(z_off_t)
    262  1.1  christos      D  file                               value like(gzFile)                   File pointer
    263  1.1  christos       /else
    264  1.1  christos      D gzoffset        PR                  extproc('gzoffset64')
    265  1.1  christos      D                                     like(z_off_t)
    266  1.1  christos      D  file                               value like(gzFile)                   File pointer
    267  1.1  christos       *
    268  1.1  christos      D gzoffset64      PR                  extproc('gzoffset64')
    269  1.1  christos      D                                     like(z_off64_t)
    270  1.1  christos      D  file                               value like(gzFile)                   File pointer
    271  1.1  christos       /endif
    272  1.1  christos       *
    273  1.1  christos      D gzeof           PR            10i 0 extproc('gzeof')
    274  1.1  christos      D  file                               value like(gzFile)                   File pointer
    275  1.1  christos       *
    276  1.1  christos      D gzdirect        PR            10i 0 extproc('gzdirect')
    277  1.1  christos      D  file                               value like(gzFile)                   File pointer
    278  1.1  christos       *
    279  1.1  christos      D gzclose_r       PR            10i 0 extproc('gzclose_r')
    280  1.1  christos      D  file                               value like(gzFile)                   File pointer
    281  1.1  christos       *
    282  1.1  christos      D gzclose_w       PR            10i 0 extproc('gzclose_w')
    283  1.1  christos      D  file                               value like(gzFile)                   File pointer
    284  1.1  christos       *
    285  1.1  christos      D gzclose         PR            10i 0 extproc('gzclose')
    286  1.1  christos      D  file                               value like(gzFile)                   File pointer
    287  1.1  christos       *
    288  1.1  christos      D gzerror         PR              *   extproc('gzerror')                   Error string
    289  1.1  christos      D  file                               value like(gzFile)                   File pointer
    290  1.1  christos      D  errnum                       10I 0                                      Error code
    291  1.1  christos       *
    292  1.1  christos      D gzclearerr      PR                  extproc('gzclearerr')
    293  1.1  christos      D  file                               value like(gzFile)                   File pointer
    294  1.1  christos       *
    295  1.1  christos       **************************************************************************
    296  1.1  christos       *                        Basic function prototypes
    297  1.1  christos       **************************************************************************
    298  1.1  christos       *
    299  1.1  christos      D zlibVersion     PR              *   extproc('zlibVersion')               Version string
    300  1.1  christos       *
    301  1.1  christos      D deflateInit     PR            10I 0 extproc('deflateInit_')              Init. compression
    302  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    303  1.1  christos      D  level                        10I 0 value                                Compression level
    304  1.1  christos      D  version                        *   value options(*string)               Version string
    305  1.1  christos      D  stream_size                  10i 0 value                                Stream struct. size
    306  1.1  christos       *
    307  1.1  christos      D deflate         PR            10I 0 extproc('deflate')                   Compress data
    308  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    309  1.1  christos      D  flush                        10I 0 value                                Flush type required
    310  1.1  christos       *
    311  1.1  christos      D deflateEnd      PR            10I 0 extproc('deflateEnd')                Termin. compression
    312  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    313  1.1  christos       *
    314  1.1  christos      D inflateInit     PR            10I 0 extproc('inflateInit_')              Init. expansion
    315  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    316  1.1  christos      D  version                        *   value options(*string)               Version string
    317  1.1  christos      D  stream_size                  10i 0 value                                Stream struct. size
    318  1.1  christos       *
    319  1.1  christos      D inflate         PR            10I 0 extproc('inflate')                   Expand data
    320  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    321  1.1  christos      D  flush                        10I 0 value                                Flush type required
    322  1.1  christos       *
    323  1.1  christos      D inflateEnd      PR            10I 0 extproc('inflateEnd')                Termin. expansion
    324  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    325  1.1  christos       *
    326  1.1  christos       **************************************************************************
    327  1.1  christos       *                        Advanced function prototypes
    328  1.1  christos       **************************************************************************
    329  1.1  christos       *
    330  1.1  christos      D deflateInit2    PR            10I 0 extproc('deflateInit2_')             Init. compression
    331  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    332  1.1  christos      D  level                        10I 0 value                                Compression level
    333  1.1  christos      D  method                       10I 0 value                                Compression method
    334  1.1  christos      D  windowBits                   10I 0 value                                log2(window size)
    335  1.1  christos      D  memLevel                     10I 0 value                                Mem/cmpress tradeoff
    336  1.1  christos      D  strategy                     10I 0 value                                Compression strategy
    337  1.1  christos      D  version                        *   value options(*string)               Version string
    338  1.1  christos      D  stream_size                  10i 0 value                                Stream struct. size
    339  1.1  christos       *
    340  1.1  christos      D deflateSetDictionary...
    341  1.1  christos      D                 PR            10I 0 extproc('deflateSetDictionary')      Init. dictionary
    342  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    343  1.1  christos      D  dictionary                65535    const options(*varsize)              Dictionary bytes
    344  1.1  christos      D  dictLength                   10U 0 value                                Dictionary length
    345  1.1  christos       *
    346  1.1  christos      D deflateCopy     PR            10I 0 extproc('deflateCopy')               Compress strm 2 strm
    347  1.1  christos      D  dest                               like(z_stream)                       Destination stream
    348  1.1  christos      D  source                             like(z_stream)                       Source stream
    349  1.1  christos       *
    350  1.1  christos      D deflateReset    PR            10I 0 extproc('deflateReset')              End and init. stream
    351  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    352  1.1  christos       *
    353  1.1  christos      D deflateParams   PR            10I 0 extproc('deflateParams')             Change level & strat
    354  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    355  1.1  christos      D  level                        10I 0 value                                Compression level
    356  1.1  christos      D  strategy                     10I 0 value                                Compression strategy
    357  1.1  christos       *
    358  1.1  christos      D deflateTune     PR            10I 0 extproc('deflateTune')
    359  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    360  1.1  christos      D  good                         10I 0 value
    361  1.1  christos      D  lazy                         10I 0 value
    362  1.1  christos      D  nice                         10I 0 value
    363  1.1  christos      D  chain                        10I 0 value
    364  1.1  christos       *
    365  1.1  christos      D deflateBound    PR            10U 0 extproc('deflateBound')              Change level & strat
    366  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    367  1.1  christos      D  sourcelen                    10U 0 value                                Compression level
    368  1.1  christos       *
    369  1.1  christos      D deflatePending  PR            10I 0 extproc('deflatePending')            Change level & strat
    370  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    371  1.1  christos      D  pending                      10U 0                                      Pending bytes
    372  1.1  christos      D  bits                         10I 0                                      Pending bits
    373  1.1  christos       *
    374  1.1  christos      D deflatePrime    PR            10I 0 extproc('deflatePrime')              Change level & strat
    375  1.1  christos      D  strm                               like(z_stream)                       Compression stream
    376  1.1  christos      D  bits                         10I 0 value                                # of bits to insert
    377  1.1  christos      D  value                        10I 0 value                                Bits to insert
    378  1.1  christos       *
    379  1.1  christos      D inflateInit2    PR            10I 0 extproc('inflateInit2_')             Init. expansion
    380  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    381  1.1  christos      D  windowBits                   10I 0 value                                log2(window size)
    382  1.1  christos      D  version                        *   value options(*string)               Version string
    383  1.1  christos      D  stream_size                  10i 0 value                                Stream struct. size
    384  1.1  christos       *
    385  1.1  christos      D inflateSetDictionary...
    386  1.1  christos      D                 PR            10I 0 extproc('inflateSetDictionary')      Init. dictionary
    387  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    388  1.1  christos      D  dictionary                65535    const options(*varsize)              Dictionary bytes
    389  1.1  christos      D  dictLength                   10U 0 value                                Dictionary length
    390  1.1  christos       *
    391  1.1  christos      D inflateGetDictionary...
    392  1.1  christos      D                 PR            10I 0 extproc('inflateGetDictionary')      Get dictionary
    393  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    394  1.1  christos      D  dictionary                65535    options(*varsize)                    Dictionary bytes
    395  1.1  christos      D  dictLength                   10U 0                                      Dictionary length
    396  1.1  christos       *
    397  1.1  christos      D deflateGetDictionary...
    398  1.1  christos      D                 PR            10I 0 extproc('deflateGetDictionary')      Get dictionary
    399  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    400  1.1  christos      D  dictionary                65535    options(*varsize)                    Dictionary bytes
    401  1.1  christos      D  dictLength                   10U 0                                      Dictionary length
    402  1.1  christos       *
    403  1.1  christos      D inflateSync     PR            10I 0 extproc('inflateSync')               Sync. expansion
    404  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    405  1.1  christos       *
    406  1.1  christos      D inflateCopy     PR            10I 0 extproc('inflateCopy')
    407  1.1  christos      D  dest                               like(z_stream)                       Destination stream
    408  1.1  christos      D  source                             like(z_stream)                       Source stream
    409  1.1  christos       *
    410  1.1  christos      D inflateReset    PR            10I 0 extproc('inflateReset')              End and init. stream
    411  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    412  1.1  christos       *
    413  1.1  christos      D inflateReset2   PR            10I 0 extproc('inflateReset2')             End and init. stream
    414  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    415  1.1  christos      D  windowBits                   10I 0 value                                Log2(buffer size)
    416  1.1  christos       *
    417  1.1  christos      D inflatePrime    PR            10I 0 extproc('inflatePrime')              Insert bits
    418  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    419  1.1  christos      D  bits                         10I 0 value                                Bit count
    420  1.1  christos      D  value                        10I 0 value                                Bits to insert
    421  1.1  christos       *
    422  1.1  christos      D inflateMark     PR            10I 0 extproc('inflateMark')               Get inflate info
    423  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    424  1.1  christos       *
    425  1.1  christos      D inflateCodesUsed...
    426  1.1  christos                        PR            20U 0 extproc('inflateCodesUsed')
    427  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    428  1.1  christos       *
    429  1.1  christos      D inflateValidate...
    430  1.1  christos                        PR            20U 0 extproc('inflateValidate')
    431  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    432  1.1  christos      D  check                        10I 0 value
    433  1.1  christos       *
    434  1.1  christos      D inflateGetHeader...
    435  1.1  christos                        PR            10U 0 extproc('inflateGetHeader')
    436  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    437  1.1  christos      D  head                               like(gz_headerp)
    438  1.1  christos       *
    439  1.1  christos      D deflateSetHeader...
    440  1.1  christos                        PR            10U 0 extproc('deflateSetHeader')
    441  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    442  1.1  christos      D  head                               like(gz_headerp)
    443  1.1  christos       *
    444  1.1  christos      D inflateBackInit...
    445  1.1  christos      D                 PR            10I 0 extproc('inflateBackInit_')
    446  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    447  1.1  christos      D  windowBits                   10I 0 value                                Log2(buffer size)
    448  1.1  christos      D  window                    65535    options(*varsize)                    Buffer
    449  1.1  christos      D  version                        *   value options(*string)               Version string
    450  1.1  christos      D  stream_size                  10i 0 value                                Stream struct. size
    451  1.1  christos       *
    452  1.1  christos      D inflateBack     PR            10I 0 extproc('inflateBack')
    453  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    454  1.1  christos      D  in                             *   value procptr                        Input function
    455  1.1  christos      D  in_desc                        *   value                                Input descriptor
    456  1.1  christos      D  out                            *   value procptr                        Output function
    457  1.1  christos      D  out_desc                       *   value                                Output descriptor
    458  1.1  christos       *
    459  1.1  christos      D inflateBackEnd  PR            10I 0 extproc('inflateBackEnd')
    460  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    461  1.1  christos       *
    462  1.1  christos      D zlibCompileFlags...
    463  1.1  christos      D                 PR            10U 0 extproc('zlibCompileFlags')
    464  1.1  christos       *
    465  1.1  christos       **************************************************************************
    466  1.1  christos       *                        Checksum function prototypes
    467  1.1  christos       **************************************************************************
    468  1.1  christos       *
    469  1.1  christos      D adler32         PR            10U 0 extproc('adler32')                   New checksum
    470  1.1  christos      D  adler                        10U 0 value                                Old checksum
    471  1.1  christos      D  buf                       65535    const options(*varsize)              Bytes to accumulate
    472  1.1  christos      D  len                          10U 0 value                                Buffer length
    473  1.1  christos       *
    474  1.1  christos      D adler32_combine...
    475  1.1  christos                        PR            10U 0 extproc('adler32_combine')           New checksum
    476  1.1  christos      D  adler1                       10U 0 value                                Old checksum
    477  1.1  christos      D  adler2                       10U 0 value                                Old checksum
    478  1.1  christos      D  len2                         20U 0 value                                Buffer length
    479  1.1  christos       *
    480  1.1  christos      D adler32_z       PR            10U 0 extproc('adler32_z')                 New checksum
    481  1.1  christos      D  adler                        10U 0 value                                Old checksum
    482  1.1  christos      D  buf                       65535    const options(*varsize)              Bytes to accumulate
    483  1.1  christos      D  len                          20U 0 value                                Buffer length
    484  1.1  christos       *
    485  1.1  christos      D crc32           PR            10U 0 extproc('crc32')                     New checksum
    486  1.1  christos      D  crc                          10U 0 value                                Old checksum
    487  1.1  christos      D  buf                       65535    const options(*varsize)              Bytes to accumulate
    488  1.1  christos      D  len                          10U 0 value                                Buffer length
    489  1.1  christos       *
    490  1.1  christos      D crc32_combine...
    491  1.1  christos                        PR            10U 0 extproc('crc32_combine')             New checksum
    492  1.1  christos      D  crc1                         10U 0 value                                Old checksum
    493  1.1  christos      D  crc2                         10U 0 value                                Old checksum
    494  1.1  christos      D  len2                         20U 0 value                                Buffer length
    495  1.1  christos       *
    496  1.1  christos      D crc32_z         PR            10U 0 extproc('crc32_z')                   New checksum
    497  1.1  christos      D  crc                          10U 0 value                                Old checksum
    498  1.1  christos      D  buf                       65535    const options(*varsize)              Bytes to accumulate
    499  1.1  christos      D  len                          20U 0 value                                Buffer length
    500  1.1  christos       *
    501  1.1  christos       **************************************************************************
    502  1.1  christos       *                     Miscellaneous function prototypes
    503  1.1  christos       **************************************************************************
    504  1.1  christos       *
    505  1.1  christos      D zError          PR              *   extproc('zError')                    Error string
    506  1.1  christos      D  err                          10I 0 value                                Error code
    507  1.1  christos       *
    508  1.1  christos      D inflateSyncPoint...
    509  1.1  christos      D                 PR            10I 0 extproc('inflateSyncPoint')
    510  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    511  1.1  christos       *
    512  1.1  christos      D get_crc_table   PR              *   extproc('get_crc_table')             Ptr to ulongs
    513  1.1  christos       *
    514  1.1  christos      D inflateUndermine...
    515  1.1  christos      D                 PR            10I 0 extproc('inflateUndermine')
    516  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    517  1.1  christos      D  arg                          10I 0 value                                Error code
    518  1.1  christos       *
    519  1.1  christos      D inflateResetKeep...
    520  1.1  christos      D                 PR            10I 0 extproc('inflateResetKeep')          End and init. stream
    521  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    522  1.1  christos       *
    523  1.1  christos      D deflateResetKeep...
    524  1.1  christos      D                 PR            10I 0 extproc('deflateResetKeep')          End and init. stream
    525  1.1  christos      D  strm                               like(z_stream)                       Expansion stream
    526  1.1  christos       *
    527  1.1  christos       /endif
    528