Re: [RFC] CryptoAPI & Compression

Artem B. Bityuckiy
2005-04-03T09:46:07Z

Herbert Xu wrote:
> You can't compress 1M-12bytes into 1M using zlib when the block size
> is 64K.
Here is a cite from RFC-1951 (page 4):

A compressed data set consists of a series of blocks, corresponding
to successive blocks of input data. The block sizes are arbitrary,
except that non-compressible blocks are limited to 65,535 bytes.

Thus,

1. 64K is only applied to non-compressible data, in which case zlib just
copies it as it is, adding a 1-byte header and a 1-byte EOB marker.

2. 64K is just the *upper limit*, and blocks may be shorter.

3. If zlib compressed data (i.e., applied LZ77 & Huffman), blocks may
have arbitrary length.

So, I don't see any reason why I can't.