LLVM
4.0.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
llvm.src
lib
Fuzzer
test
BufferOverflowOnInput.cpp
Go to the documentation of this file.
1
// This file is distributed under the University of Illinois Open Source
2
// License. See LICENSE.TXT for details.
3
4
// Simple test for a fuzzer. The fuzzer must find the string "Hi!".
5
#include <assert.h>
6
#include <cstdint>
7
#include <cstdlib>
8
#include <cstddef>
9
#include <iostream>
10
11
static
volatile
bool
SeedLargeBuffer
;
12
13
extern
"C"
int
LLVMFuzzerTestOneInput
(
const
uint8_t *Data,
size_t
Size) {
14
assert
(Data);
15
if
(Size >= 4)
16
SeedLargeBuffer =
true
;
17
if
(Size == 3 && SeedLargeBuffer && Data[3]) {
18
std::cout <<
"Woops, reading Data[3] w/o crashing\n"
;
19
exit(1);
20
}
21
return
0;
22
}
23
SeedLargeBuffer
static volatile bool SeedLargeBuffer
Definition:
BufferOverflowOnInput.cpp:11
LLVMFuzzerTestOneInput
int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size)
Definition:
BufferOverflowOnInput.cpp:13
assert
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
Generated on Wed Mar 8 2017 17:06:50 for LLVM by
1.8.6