[libFuzzer] add a test with two different bugs

llvm-svn: 298030
This commit is contained in:
Kostya Serebryany 2017-03-17 01:33:16 +00:00
parent eecb0ec2ea
commit a52c8d0daf
2 changed files with 23 additions and 0 deletions

View File

@ -128,6 +128,7 @@ set(Tests
TimeoutTest
TimeoutEmptyTest
TraceMallocTest
TwoDifferentBugsTest
)
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;
}