- Enable clippy pedantic + nursery lints; fix all warnings - Add config validation (SF, CR, frequency range checks) - Zeroize passphrase intermediates after key derivation - Convert to lib+bin crate for fuzz target accessibility - Replace Vec with VecDeque for O(1) log/bucket rotation - Add TUI minimum terminal size guard Testing: - 145 unit + property tests (was 15) - 6 proptest groups (frame roundtrip, hash, SNR, air time, peer list, padding) - 2 cargo-fuzz targets (gossip frame decode, peer list decode) - cargo-mutants: 0 missed, 241 caught, 54 unviable Documentation: - README with prerequisites, quick start, config reference, architecture - Module-level and item-level rustdoc on all public items - LICENSE (MIT), rustfmt.toml, .gitignore Infrastructure: - GitHub Actions CI (fmt, clippy, test, audit) - cargo-mutants config (.cargo/mutants.toml) - justfile for common tasks
27 lines
428 B
TOML
27 lines
428 B
TOML
[package]
|
|
name = "donglora-bridge-fuzz"
|
|
version = "0.0.0"
|
|
publish = false
|
|
edition = "2024"
|
|
|
|
[package.metadata]
|
|
cargo-fuzz = true
|
|
|
|
[dependencies]
|
|
libfuzzer-sys = "0.4"
|
|
|
|
[dependencies.donglora-bridge]
|
|
path = ".."
|
|
|
|
[[bin]]
|
|
name = "fuzz_gossip_frame_decode"
|
|
path = "fuzz_targets/fuzz_gossip_frame_decode.rs"
|
|
doc = false
|
|
|
|
[[bin]]
|
|
name = "fuzz_decode_peer_list"
|
|
path = "fuzz_targets/fuzz_decode_peer_list.rs"
|
|
doc = false
|
|
|
|
[workspace]
|