zlib

Compression (CRC-32, Deflate/Inflate)

Constants

CRC32_POLY = 3988292384

CRC-32 polynomial: 0xEDB88320 (reversed)

Functions

FunctionDescription
zlib_crc32CRC-32 of data buffer.
zlib_crc32_updateIncremental CRC-32 update.
zlib_adler32Adler-32 checksum.
zlib_compressCompress using simplified DEFLATE (stored blocks, no Huffman for simplicity)….
zlib_decompressDecompress zlib-compressed data (handles stored blocks). Returns decompressed…

Details

zlib_crc32

fn zlib_crc32(data: &i8, len: i64) -> i64

CRC-32 of data buffer.

zlib_crc32_update

fn zlib_crc32_update(crc: i64, data: &i8, len: i64) -> i64

Incremental CRC-32 update.

zlib_adler32

fn zlib_adler32(data: &i8, len: i64) -> i64

Adler-32 checksum.

zlib_compress

fn zlib_compress(src: &i8, slen: i64, dst: &i8, dmax: i64) -> i64

Compress using simplified DEFLATE (stored blocks, no Huffman for simplicity). Format: zlib header (2 bytes) + stored blocks + Adler-32 (4 bytes). Returns compressed size.

zlib_decompress

fn zlib_decompress(src: &i8, slen: i64, dst: &i8, dmax: i64) -> i64

Decompress zlib-compressed data (handles stored blocks). Returns decompressed size.