The inflateInit2_() function shall initialize the decompression system. On entry, strm shall refer to a user supplied z_stream object (a z_stream_s structure). The following fields shall be set on entry:
a pointer to an alloc_func function, used to allocate state information.
If this is
NULL, a default allocation function will be used.
a pointer to a free_func function, used to free memory allocated by the
zalloc function. If this is
a default free function will be used.
alloc_func is not
opaque is a user supplied pointer to data that will be passed to the
If the version requested is not compatible with the version
implemented, or if the size of the z_stream_s structure
provided in stream_size does not match the size in the library
implementation, inflateInit2_() shall fail, and return
The windowBits parameter shall be a base 2 logarithm of the maximum
size to use, and shall be a value between
If the input data was compressed with a larger window size, subsequent attempts to
decompress this data will fail with
Z_DATA_ERROR, rather than try to
allocate a larger window.
The inflateInit2_() function is not in the source standard; it is only in the binary standard. Source applications should use the inflateInit2() macro.
On success, the inflateInit2_() function shall return
Otherwise, inflateInit2_() shall return
a value as described below to indicate the error.
On error, inflateInit2_() shall return one of the following error indicators:
Insufficient memory available.
The version requested is not compatible with the library version, or the z_stream size differs from that used by the library.
In addition, the
msg field of the strm
may be set to an error message.