Files
darkfi/fuzz/honggfuzz/Cargo.toml
y 9d97aebf50 fuzz: Add fuzz harness for zkas compilation
Create a fuzz harness to test the ./zkas binary compilation process. The
whole pipeline is tested: Lexer, Parser, Compiler, Analyzer. This is
performed by copying the relevant code from bin/zkas/src/main.rs.

Testing the entire pipeline like this is not very efficient in terms of
fuzzing cycles but on the other hand it is a quick-and-dirty way to find
results. It also benefits from testing the actual inputs to the binary
in the way it's expecting, rather than checking each of the components
in a piecemeal way using interfaces that aren't expected to be exposed
anyway.
2023-09-16 23:00:24 +00:00

55 lines
938 B
TOML

[package]
name = "darkfi-fuzz2"
version = "0.0.0"
publish = false
edition = "2021"
[package.metadata]
cargo-fuzz = true
[dependencies]
honggfuzz = "0.5"
bitcoin = "0.30.1"
[dependencies.darkfi]
path = "../.."
features = ["zkas"]
[dependencies.darkfi-serial]
path = "../../src/serial"
features = ["derive", "semver", "collections", "crypto", "hash"]
[patch.crates-io]
blake2b_simd = {git="https://github.com/parazyd/blake2_simd", branch="impl-common"}
# Prevent this from interfering with workspaces
[workspace]
members = ["."]
[profile.release]
debug = 1
[[bin]]
name = "zkbinary-decode"
path = "src/zkbinary_decode.rs"
test = false
doc = false
[[bin]]
name = "serial-decode-string"
path = "src/serial_decode_string.rs"
test = false
doc = false
[[bin]]
name = "varint-differential"
path = "src/varint_differential.rs"
test = false
doc = false
[[bin]]
name = "zkas-compile"
path = "src/zkas_compile.rs"
test = false
doc = false