1 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
2 // See https://llvm.org/LICENSE.txt for license information.
3 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
5 // Simple test for a custom mutator.
13 #include "FuzzerInterface.h"
15 static volatile int Sink
;
17 extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data
, size_t Size
) {
19 if (Size
> 0 && Data
[0] == 'H') {
21 if (Size
> 1 && Data
[1] == 'i') {
23 if (Size
> 2 && Data
[2] == '!') {
24 std::cout
<< "BINGO; Found the target, exiting\n" << std::flush
;
32 extern "C" size_t LLVMFuzzerCustomMutator(uint8_t *Data
, size_t Size
,
33 size_t MaxSize
, unsigned int Seed
) {
36 std::cerr
<< "In LLVMFuzzerCustomMutator\n";
39 return LLVMFuzzerMutate(Data
, Size
, MaxSize
);