Hasnain Lakhani created THRIFT-5855:
---------------------------------------
Summary: Improve fuzzing support
Key: THRIFT-5855
URL: https://issues.apache.org/jira/browse/THRIFT-5855
Project: Thrift
Issue Type: Epic
Reporter: Hasnain Lakhani
Improve fuzzing support so we can make the generated code more robust. In
particular, thrift is currently fuzzed on oss-fuzz, but:
* the build is failing
* it only supports go
* and that fuzzer isn't optimal either
This ticket will be considered complete when there are fuzzers for all the
supported languages on oss-fuzz:
* c
* c++
* Rust
* Go
* Swift
* Python
* Javascript
* Java/JVM (and all of the supported thrift JVM languages here)
Other languages are out of scope.
For each language, we want at bare minimum:
* a fuzzer that just deserializes a structure from fuzzer input
* one that ensures things round trip properly
... for each of the supported protocols (e.g. binary/compact).
For languages where this is easy, we should add structure aware fuzzing
support, and/or also test the networking code.
Then, further improve the fuzzers by adding corpora, dictionaries, and doing
fuzz introspector inspection.
I'll update this ticket/file sub-tickets as the work progresses.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)