summaryrefslogtreecommitdiffstats
path: root/third_party/rust/prost/FUZZING.md
blob: b79112d04ef99d06e864c457886bd5d238dd83a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Fuzzing

Prost ships a few fuzz tests, using both libfuzzer and aflfuzz.


## afl

To run the afl fuzz tests, first install cargo-afl:

    cargo install -f afl

Then build a fuzz target and run afl on it:

    cd fuzz/afl/<target>/
    cargo afl build --bin fuzz-target
    cargo afl fuzz -i in -o out target/debug/fuzz-target

To reproduce a crash:

    cd fuzz/afl/<target>/
    cargo build --bin reproduce
    cargo run --bin reproduce -- out/crashes/<crashfile>


## libfuzzer

TODO