annotate src/zlib-1.2.8/as400/zlib.inc @ 70:9e21af8f0420

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