Squash  0.7.0
lzo Plugin

For information about LZO, see http://www.oberhumer.com/opensource/lzo/


Note that support for lzo1 and lzo1a are included in the plugin itself, but are disabled in the squash.ini file because there are no safe decompressors (i.e., to lzo1_decompress_safe and lzo1a_decompress_safe functions). Squash requires all decompression implementations to be safe.

According to the documentation in LZO, both algorithms "… are mainly included for compatibility reasons"; it is unlikely you really want to use them, and due to the absence of a safe decompressor doing so is strongly discouraged, especially with untrusted input. However, in the event that you do need to use them you can simply add them to the lzo plugin's squash.ini.

From the LZO documentation:

I first published LZO1 and LZO1A in the Internet newsgroups comp.compression and comp.compression.research in March 1996. They are mainly included for compatibility reasons. The LZO2A decompressor is too slow, and there is no fast compressor anyway.

My experiments have shown that LZO1B is good with a large blocksize or with very redundant data, LZO1F is good with a small blocksize or with binary data and that LZO1X is often the best choice of all. LZO1Y and LZO1Z are almost identical to LZO1X - they can achieve a better compression ratio on some files. Beware, your mileage may vary.




The lzo plugin is licensed under the MIT License, and LZO is licensed under the GNU GPLv2+.