13 static const uint64_t
kMagic = 8860221463604ULL;
18 if (Size <= 10)
return;
24 if (Data[10] ==
'!') {
25 std::cout <<
"BINGO; Found the target, exiting\n";
32 virtual size_t Mutate(uint8_t *Data,
size_t Size,
size_t MaxSize) {
33 assert(MaxSize >
sizeof(
kMagic));
44 int main(
int argc,
char **argv) {
int main(int argc, char **argv)
int FuzzerDriver(int argc, char **argv, UserCallback Callback)
Simple C-like interface with a single user-supplied callback.
virtual size_t Mutate(uint8_t *Data, size_t Size, size_t MaxSize)
Mutates 'Size' bytes of data in 'Data' inplace into up to 'MaxSize' bytes, returns the new size of th...
static const uint64_t kMagic
Number of individual test Apply this number of consecutive mutations to each input exit after the first new interesting input is found the minimized corpus is saved into the first input directory Number of jobs to run If min(jobs, NumberOfCpuCores()/2)\" is used.") FUZZER_FLAG_INT(reload
void TargetFunction(const uint8_t *Data, size_t Size)
Executes the target function on 'Size' bytes of 'Data'.
size_t BasicMutate(uint8_t *Data, size_t Size, size_t MaxSize)
These can be called internally by Mutate and CrossOver.
An abstract class that allows to use user-supplied mutators with libFuzzer.