midi-harbor/fuzz/Cargo.toml
2026-09-28 13:59:10 -05:00

49 lines
1.4 KiB
TOML

[package]
name = "midi-harbor-fuzz"
description = "cargo-fuzz targets for every parser that reads bytes from a peer"
version = "0.0.0"
edition = "2024"
publish = false
[package.metadata]
cargo-fuzz = true
# Its own workspace, because libFuzzer needs a nightly compiler and sanitizer flags that must not
# leak into the gates the real workspace runs on stable. None of those gates builds these targets,
# so after changing a parser, or any API a target calls, run from this directory:
#
# cargo +nightly fuzz build
# cargo +nightly fuzz run blemidi_codec -- -max_total_time=300
#
# and likewise rtpmidi_packet and rtpmidi_journal. Leave -rss_limit_mb at its default: libFuzzer
# itself settles near 480 MB here, so a lower limit reports an out-of-memory no input caused.
[workspace]
members = ["."]
[dependencies]
allocation-counter = "0.8"
libfuzzer-sys = { version = "0.4", features = ["arbitrary-derive"] }
midi-harbor-blemidi = { path = "../crates/blemidi" }
midi-harbor-core = { path = "../crates/core" }
midi-harbor-rtpmidi = { path = "../crates/rtpmidi" }
[[bin]]
name = "blemidi_codec"
path = "fuzz_targets/blemidi_codec.rs"
test = false
doc = false
bench = false
[[bin]]
name = "rtpmidi_packet"
path = "fuzz_targets/rtpmidi_packet.rs"
test = false
doc = false
bench = false
[[bin]]
name = "rtpmidi_journal"
path = "fuzz_targets/rtpmidi_journal.rs"
test = false
doc = false
bench = false