From fe9787e58db79ff108f2d41d8b2030ea2b9925da Mon Sep 17 00:00:00 2001 From: Wouter van Oortmerssen Date: Mon, 23 May 2016 16:35:20 -0700 Subject: [PATCH] Add a fuzzer for flatbuffers, derived from the one used in Chromium: https://code.google.com/p/chromium/codesearch#chromium/src/testing/libfuzzer/fuzzers/flatbuffers_verifier_fuzzer.cc (mirrored from cl 122676317) Change-Id: I0074af435cf37f5e6368b040563c3733d9e02345 --- .../fuzz-0-flatbuffers_verifier_fuzzer | Bin 0 -> 411 bytes tests/fuzzer/flatbuffers_verifier_fuzzer.cc | 14 ++++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 tests/fuzzer/flatbuffers_verifier_corpus/fuzz-0-flatbuffers_verifier_fuzzer create mode 100644 tests/fuzzer/flatbuffers_verifier_fuzzer.cc diff --git a/tests/fuzzer/flatbuffers_verifier_corpus/fuzz-0-flatbuffers_verifier_fuzzer b/tests/fuzzer/flatbuffers_verifier_corpus/fuzz-0-flatbuffers_verifier_fuzzer new file mode 100644 index 0000000000000000000000000000000000000000..ada82f163f5670ff70daa87141aec4c2d0d421b3 GIT binary patch literal 411 zcmeZZU|{g|_X`G6Kw!ntz`y~d*%(ZKqy-SOGT1OUFt`9&9ze{%;KL9ABoi1i7(y5# z7z%*w7$B|y>I4Et2B2(%J&@%9L_iD!91cuClh|NfDE$RUKLO%1K->Vt5kTw!#EvH` z?}BjQlEyv|Rso6~oLK$oYy*E@<3$Ml@oxI@J03rsAvDNsxO@Tf2gnyLU|-k(Rb~J& z$R7w_RDgZ)8QB;5Kt&D^KO_6Z*Ix=6Sjc|*>C6mN&d9)Mwd?=?|13Z@2)h-frT{4h fCLk68Vvras5SOGDmly(RNSGqrt-$~ZeW)q`2B|>A literal 0 HcmV?d00001 diff --git a/tests/fuzzer/flatbuffers_verifier_fuzzer.cc b/tests/fuzzer/flatbuffers_verifier_fuzzer.cc new file mode 100644 index 0000000..d2fa73a --- /dev/null +++ b/tests/fuzzer/flatbuffers_verifier_fuzzer.cc @@ -0,0 +1,14 @@ +// Copyright 2015 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +#include +#include +#include + +#include "third_party/flatbuffers/tests/monster_test_generated.h" + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + flatbuffers::Verifier verifier(data, size); + MyGame::Example::VerifyMonsterBuffer(verifier); + return 0; +} -- 2.7.4