This integrates fuzzing into our project by introducing two targets which exercise the descriptor parsing and analysis logic. The `descriptor_parse` is dead simple but not very effective. The `descriptors` harness tries to be smarter by almost always generating a valid Liana descriptor. Of course, this is just a first integration and both could be made more effective.
32 lines
543 B
TOML
32 lines
543 B
TOML
[package]
|
|
name = "liana-fuzz"
|
|
version = "0.0.0"
|
|
publish = false
|
|
edition = "2018"
|
|
|
|
[package.metadata]
|
|
cargo-fuzz = true
|
|
|
|
[dependencies]
|
|
libfuzzer-sys = "0.4"
|
|
arbitrary = { version = "1", features = ["derive"] }
|
|
secp256k1 = { version = "0.28", features = ["global-context-less-secure"] }
|
|
|
|
|
|
[dependencies.liana]
|
|
path = ".."
|
|
|
|
[[bin]]
|
|
name = "descriptor_parse"
|
|
path = "fuzz_targets/descriptor_parse.rs"
|
|
test = false
|
|
doc = false
|
|
bench = false
|
|
|
|
[[bin]]
|
|
name = "descriptors"
|
|
path = "fuzz_targets/descriptors.rs"
|
|
test = false
|
|
doc = false
|
|
bench = false
|