uzlib
uzlib copied to clipboard
Radically unbloated DEFLATE/zlib/gzip compression/decompression library. Can decompress any gzip/zlib data, and offers simplified compressor which produces gzip-compatible output, while requiring much...
The readme file mentions that this can compress or decompress without needing the entire file to be in memory, but there are no examples about how to do this. Could...
it wasn't clear from the documentation... but uzlib_compress() allocates memory for out.outbuf uzlib_compress() -> literal() -> zlib_literal() -> outbits() -> sresize() it's odd that the comp.hash_table is allocated for uzlib...
* Distance tree can have only 30 valid codes (32 total if balanced Huffman tree is considered). That's unlike literal/length tree which can 286 valid, 288 total entries. Using the...
It turns out that to simplify/make possible dealing with Huffman trees, zlib and uzlib have 288 total Huffman codes for literal/length, and 32 for distance. In both cases, last 2...
Hi there - if you are interested, here are some small changes to your library, which allow for reading the compressed input, and writing the decompressed output, a single byte...
* genlz77: as DEFLATE is limited to 32K dictionary size, can store uint16_t offsets in hashtable, instead of current uint8_t* * genlz77: should accept HASH_BITS as param, hashtable ptr as...
To decompress a gzip compressed file I had to provide a buffer that is one byte larger than indicated by the size field in the trailer of the file. Otherwise...
I am working on an embedded project where RAM is very limited. The firmware update image is compressed (and encrypted with AES) using the Deflate algorithm. My embedded processor doesn't...
Would you consider making a portable single-file-header, i.e. header-only with `#define UZLIB_IMPLEMENTATION`? So that one could implement this in their own projects without making a more sophisticated build system?
memcpy cannot be used, because memory region may overlap (the behavior is undefined). copy must be made byte by byte. Simple check with tgunzip: 1) set UZLIB_CONF_USE_MEMCPY to 1 2)...