From f5223713a042d7ac68b3fb27d8805054b05f3a5e Mon Sep 17 00:00:00 2001 From: Antoine Soulier Date: Fri, 7 Jul 2023 10:55:20 -0700 Subject: [PATCH] readme: Add few words on fuzzing --- README.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/README.md b/README.md index 057d7db..e972ae1 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,7 @@ The directory layout is as follows : - src: Source files - tools: Standalone encoder/decoder tools - test: Python implentation, used as reference for unit testing +- fuzz: Roundtrip fuzz testing harness - build: Building outputs - bin: Compilation output @@ -91,6 +92,20 @@ $ pip3 install scipy numpy $ make test ``` +## Fuzzing + +Roundtrip fuzz testing harness is available in `fuzz` directory. +LLVM `clang` and `clang++` compilers are needed to run fuzzing. + +The encoder and decoder fuzzers can be run, for 1 million iterations, using +target respectively `dfuzz` and `efuzz`. The `fuzz` target runs both. + +```sh +$ make efuzz # Run encoder fuzzer for 1M iteration +$ make dfuzz # Run decoder fuzzer for 1M iteration +$ make fuzz -j # Run encoder and decoder fuzzers in parallel +``` + ## Conformance The proposed encoder and decoder implementation have been fully tested and