SWF Parser (Rust)
SWF parser implemented in Rust.
Converts bytes to swf-types movies.
Usage
use parse_swf;
use Movie;
Features
SWF decompression is provided by the following features, enabled by default:
deflate: enable support forCompressionMethod::Deflate, using theinflatecrate.lzma: enable support forCompressionMethod::Lzma, using thelzma-rscrate.
Disabling these features will cause the SWF parsing functions to fail when passed the corresponding CompressionMethod.
Contributing
This repo uses Git submodules for its test samples:
# Clone with submodules
# Update submodules for an already-cloned repo
This library is a standard Cargo project. You can test your changes with
cargo test. The commands must be run from the rs directory.
Fuzzing
The Rust implementation supports fuzzing:
# Make sure that you have `cargo-fuzz`
cargo install cargo-fuzz
# Fuzz the `swf` parser
cargo fuzz run swf
Prefer non-master branches when sending a PR so your changes can be rebased if
needed. All the commits must be made on top of master (fast-forward merge).
CI must pass for changes to be accepted.