CISO Library
This is a Rust ciso compression library. Reference compression and decompression tools are provided.
Binaries
The library contains two binaries, ciso and unciso that compress and decompress provided images
respectively.
The compression tool splits images at about the 4GB boundary. The decompression tool supports
both split and non-split images. Passing an image with extension .1.cso will discover all other
parts in sequence.
Library
Compression and Decompression
The ciso::write::write_ciso_data function can be used to compress data. lz4-flex is used to compress blocks.
Currently, only a sector size of 2048 is supported.
The ciso::read::CSOReader struct can be used to read from compressed data.
Split Files
The ciso::split module has wrappers for handling split files for both reading and writing. For a reference of how
to use them, see the provided binaries.
Features
The tokio feature is used for the binaries and can be safely disabled. If you
use the library, you should use default-features = false.
The sync feature removes the async qualifier on all functions and traits.
If you need to use the library without async, you can use this feature.