X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=fuzz%2FCargo.toml;h=115f3e8a4dc0db632cf417b0ae840051da4c783d;hb=27079e04d7b542058e48cafaf5c2e7114b3b8e15;hp=521e93d3b1bd12d1c18e0dd56b1e12ae098403e8;hpb=913ea887fea16be5f272ff8467a0458c086e7ff1;p=rust-lightning diff --git a/fuzz/Cargo.toml b/fuzz/Cargo.toml index 521e93d3..115f3e8a 100644 --- a/fuzz/Cargo.toml +++ b/fuzz/Cargo.toml @@ -6,7 +6,6 @@ publish = false # 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 # fuzztarget mode. -build = "../build.rs" [package.metadata] cargo-fuzz = true @@ -14,87 +13,33 @@ cargo-fuzz = true [features] afl_fuzz = ["afl"] honggfuzz_fuzz = ["honggfuzz"] +libfuzzer_fuzz = ["libfuzzer-sys"] +stdin_fuzz = [] [dependencies] -lightning = { path = "..", features = ["fuzztarget"] } -bitcoin = { version = "0.13", features = ["fuzztarget"] } -secp256k1 = { git = "https://github.com/rust-bitcoin/rust-secp256k1", branch = "master" , features=["fuzztarget"]} -rust-crypto = "0.2" +afl = { version = "0.4", optional = true } +lightning = { path = "../lightning", features = ["fuzztarget"] } +bitcoin = { version = "0.23", features = ["fuzztarget"] } +hex = "0.3" honggfuzz = { version = "0.5", optional = true } -afl = { version = "0.3", optional = true } +libfuzzer-sys = { git = "https://github.com/rust-fuzz/libfuzzer-sys.git", optional = true } [build-dependencies] -gcc = "0.3" +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 -[[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" - -# message fuzz targets -[[bin]] -name = "msg_accept_channel_target" -path = "fuzz_targets/msg_targets/msg_accept_channel_target.rs" - -[[bin]] -name = "msg_closing_signed_target" -path = "fuzz_targets/msg_targets/msg_closing_signed_target.rs" - -[[bin]] -name = "msg_commitment_signed_target" -path = "fuzz_targets/msg_targets/msg_commitment_signed_target.rs" - -[[bin]] -name = "msg_funding_created_target" -path = "fuzz_targets/msg_targets/msg_funding_created_target.rs" - -[[bin]] -name = "msg_funding_locked_target" -path = "fuzz_targets/msg_targets/msg_funding_locked_target.rs" - -[[bin]] -name = "msg_funding_signed_target" -path = "fuzz_targets/msg_targets/msg_funding_signed_target.rs" - -[[bin]] -name = "msg_open_channel_target" -path = "fuzz_targets/msg_targets/msg_open_channel_target.rs" - -[[bin]] -name = "msg_revoke_and_ack_target" -path = "fuzz_targets/msg_targets/msg_revoke_and_ack_target.rs" - -[[bin]] -name = "msg_shutdown_target" -path = "fuzz_targets/msg_targets/msg_shutdown_target.rs" - -[[bin]] -name = "msg_update_add_htlc_target" -path = "fuzz_targets/msg_targets/msg_update_add_htlc_target.rs" - -[[bin]] -name = "msg_update_fail_malformed_htlc_target" -path = "fuzz_targets/msg_targets/msg_update_fail_malformed_htlc_target.rs" - -[[bin]] -name = "msg_update_fee_target" -path = "fuzz_targets/msg_targets/msg_update_fee_target.rs" - -[[bin]] -name = "msg_update_fulfill_htlc_target" -path = "fuzz_targets/msg_targets/msg_update_fulfill_htlc_target.rs" - -[[bin]] -name = "msg_update_fail_htlc_target" -path = "fuzz_targets/msg_targets/msg_update_fail_htlc_target.rs" +[lib] +name = "lightning_fuzz" +path = "src/lib.rs" +crate-type = ["rlib", "dylib", "staticlib"]