Standard zlib functions

The following table contains the standard zlib functions and whether they are supported using zEDC:
Table 1. Standard zlib functions and whether they are supported using zEDC
zlib function zEDC-supported Details
zlibVersion Supported. Start of changeReturns '1.2.11-zEDC'End of change
deflateInit Supported.  
deflate All flush modes are supported. If the input buffer size is smaller than the minimum threshold for zEDC on the first call to deflate (compress) a data stream, the data stream is compressed using traditional software-based compression.
deflateEnd Supported.  
inflateInit Supported.  
inflate Supported if the flush mode is one of the following:
  • z_no_flush
  • z_sync_flush
  • z_finish
If either the input buffer size is smaller than a minimum threshold for zEDC or the flush mode is z_block or z_trees on the first call to inflate (decompress) a data stream, the data stream is decompressed using traditional software-based decompression.

On subsequent calls to inflate a data stream, if the flush mode is z_block or z_trees and the stream is using zEDC decompression, Z_STREAM_ERROR is returned

inflateEnd Supported.  
deflateInit2 Support is based on the input parameters. Input parameters:
level
This option is ignored for zEDC and does not affect the software or zEDC compression decision.

This option is supported for zlib software compression.

method
Must be Z_DEFLATED.
windowBits
Must be -15 for raw deflate, 15 for zlib header and trailer, or 31 for gzip header and trailer. For all other windowBits values, the data stream uses traditional software-based compression.
memLevel
This option is ignored for zEDC and does not affect the software or zEDC compression decision.

This option is supported for zlib software compression.

strategy
Use Z_DEFAULT_STRATEGY or Z_FIXED for zEDC. All other options use traditional software-based compression.
Start of changedeflateGetDictionaryEnd of change Start of changeNot supported for zEDC.End of change Start of changeReturns Z_STREAM_ERROR if the stream is using zEDC.End of change
deflateSetDictionary Supported. This option is supported for zEDC when called before the first deflate call for the data stream and is not supported after the first call to deflate.
deflateCopy Supported.  
deflateReset Supported.  
Start of changedeflateResetKeepEnd of change Start of changeNot supported for zEDC.End of change Start of changeReturns Z_STREAM_ERROR if the stream is using zEDC.End of change
deflateParams Support is based on the input parameters. Input parameters:
Level
This option is ignored for zEDC.
Strategy
Use Z_DEFAULT_STRATEGY or Z_FIXED for zEDC. All other options use traditional software-based compression.
deflateTune Supported. This option only applies to traditional software-based compression. zEDC accepts the call, but none of the parameters apply to zEDC.
deflateBound Supported.  
deflatePending Supported.  
deflatePrime Not supported for zEDC. Returns Z_STREAM_ERROR if the stream is using zEDC.
deflateSetHeader Supported.  
inflateInit2 Supported.  
Start of changeinflateGetDictionaryEnd of change Start of changeNot supported for zEDC.End of change Start of changeReturns Z_STREAM_ERROR if the stream is using zEDC.End of change
inflateSetDictionary Supported if called immediately after a call to inflate the data stream that returns Z_NEED_DICT. Otherwise, Z_STREAM_ERROR is returned if the data stream is attempting to use zEDC decompression.
InflateSync Supported.  
inflateSyncPoint Not supported for zEDC. Returns Z_STREAM_ERROR if the stream is using zEDC.
Start of changeinflateCodesUsedEnd of change Start of changeNot supported for zEDC.End of change Start of changeReturns Z_STREAM_ERROR if the stream is using zEDC.End of change
inflateCopy Supported.  
inflateReset Supported.  
inflatateReset2 Supported.  
inflatePrime Not supported for zEDC. Returns Z_STREAM_ERROR if the stream is using zEDC decompression.
inflateMark Not supported for zEDC. Returns Z_STREAM_ERROR if the stream is using zEDC decompression.
inflateGetHeader Supported.  
inflateBackInit Not supported for zEDC. InflateBackInit forces stream to software-based compression.
inflateBack Not supported for zEDC.  
Start of changeinflateValidateEnd of change Start of changeNot supported for zEDC. End of change Start of changeReturns Z_STREAM_ERROR if the stream is using zEDC.End of change
zlibCompileFlags Supported.  
compress Supported.  
compress2 Supported. Level is ignored if using zEDC.
compressBound Supported.  
uncompress Supported.  
Start of changeuncompress2End of change Start of changeSupported.End of change Start of change End of change
gz* routines Not supported for zEDC. Uses software-based compression for inflate and deflate functions.
checksum functions Not supported for zEDC. Checksum functions calculate the checksum values using software-based compression services.