diff options
Diffstat (limited to 'test/fuzzer/AFLDriverTest.cpp')
-rw-r--r-- | test/fuzzer/AFLDriverTest.cpp | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/test/fuzzer/AFLDriverTest.cpp b/test/fuzzer/AFLDriverTest.cpp index b949adc7d..84b5f9f6b 100644 --- a/test/fuzzer/AFLDriverTest.cpp +++ b/test/fuzzer/AFLDriverTest.cpp @@ -1,28 +1,34 @@ -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// Contains dummy functions used to avoid dependency on AFL. #include <stdint.h> #include <stdio.h> #include <stdlib.h> +// Dummy functions used to avoid dependency on AFL. extern "C" void __afl_manual_init() {} extern "C" int __afl_persistent_loop(unsigned int N) { static int Count = N; - fprintf(stderr, "__afl_persistent_loop calle, Count = %d\n", Count); - if (Count--) return 1; - return 0; + fprintf(stderr, "__afl_persistent_loop called, Count = %d\n", Count); + return Count--; } // This declaration exists to prevent the Darwin linker // from complaining about this being a missing weak symbol. extern "C" int LLVMFuzzerInitialize(int *argc, char ***argv) { - fprintf(stderr, "LLVMFuzzerInitialize called\n"); return 0; } extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { - fprintf(stderr, "LLVMFuzzerTestOneInput called; Size = %zd\n", Size); - return 0; + puts("STDOUT MESSAGE"); + fflush(stdout); + fprintf(stderr, "STDERR MESSAGE\n" + "LLVMFuzzerTestOneInput called; Size = %zd\n", + Size); + if (Size < 4) + return 0; + + return Data[Size]; } |