X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=fuzz%2FCargo.toml;h=5daebb3506681503e197ba92656eb1ddd4eb4c06;hb=6144e30c0e99ff52f4febed652d62b48a9f4c924;hp=7ed7533a33d0dd499a704dfd979ba6ea3d31a0a6;hpb=f7dd69240afcd3a0087f7796824a9e2697ed85cf;p=rust-lightning diff --git a/fuzz/Cargo.toml b/fuzz/Cargo.toml index 7ed7533a..5daebb35 100644 --- a/fuzz/Cargo.toml +++ b/fuzz/Cargo.toml @@ -3,6 +3,10 @@ name = "lightning-fuzz" version = "0.0.1" authors = ["Automatically generated"] publish = false +edition = "2018" +# Because the function is unused it gets dropped before we link lightning, so +# we have to duplicate build.rs here. Note that this is only required for +# fuzzing mode. [package.metadata] cargo-fuzz = true @@ -10,26 +14,38 @@ cargo-fuzz = true [features] afl_fuzz = ["afl"] honggfuzz_fuzz = ["honggfuzz"] +libfuzzer_fuzz = ["libfuzzer-sys"] +stdin_fuzz = [] [dependencies] -lightning = { path = "..", features = ["fuzztarget"] } -bitcoin = { git = "https://github.com/rust-bitcoin/rust-bitcoin", features = ["fuzztarget"] } -secp256k1 = { version = "0.9", features = ["fuzztarget"] } -honggfuzz = { version = "0.5", optional = true } -afl = { version = "0.3", optional = true } +lightning = { path = "../lightning", features = ["regex", "hashbrown", "_test_utils"] } +lightning-rapid-gossip-sync = { path = "../lightning-rapid-gossip-sync" } +bitcoin = { version = "0.29.0", features = ["secp-lowmemory"] } +hex = "0.3" +hashbrown = "0.8" + +afl = { version = "0.12", optional = true } +honggfuzz = { version = "0.5", optional = true, default-features = false } +libfuzzer-sys = { version = "0.4", optional = true } + +[build-dependencies] +cc = "1.0" # Prevent this from interfering with workspaces [workspace] members = ["."] -[[bin]] -name = "peer_crypt_target" -path = "fuzz_targets/peer_crypt_target.rs" +[profile.release] +lto = true +codegen-units = 1 +debug-assertions = true +overflow-checks = true -[[bin]] -name = "channel_target" -path = "fuzz_targets/channel_target.rs" +# When testing a large fuzz corpus, -O1 offers a nice speedup +[profile.dev] +opt-level = 1 -[[bin]] -name = "full_stack_target" -path = "fuzz_targets/full_stack_target.rs" +[lib] +name = "lightning_fuzz" +path = "src/lib.rs" +crate-type = ["rlib", "dylib", "staticlib"]