[libFuzzer] add a test with two different bugs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@298030 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Kostya Serebryany 2017-03-17 01:33:16 +00:00
parent 8e740f17e2
commit 6ee36bcf11
2 changed files with 23 additions and 0 deletions

View File

@ -128,6 +128,7 @@ set(Tests
TimeoutTest TimeoutTest
TimeoutEmptyTest TimeoutEmptyTest
TraceMallocTest TraceMallocTest
TwoDifferentBugsTest
) )
if(APPLE OR MSVC) if(APPLE OR MSVC)

View File

@ -0,0 +1,22 @@
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
// Simple test for a fuzzer. This test may trigger two different bugs.
#include <cstdint>
#include <cstdlib>
#include <cstddef>
#include <iostream>
static volatile int *Null = 0;
void Foo() { Null[1] = 0; }
void Bar() { Null[2] = 0; }
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
if (Size < 10 && Data[0] == 'H')
Foo();
if (Size >= 10 && Data[0] == 'H')
Bar();
return 0;
}