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 4 5 // Simple test for a fuzzer. The fuzzer must find a particular string. 6 #include <cstdint> 7 #include <cstdio> 8 #include <cstdlib> 9 #include <cstring> 10 LLVMFuzzerTestOneInput(const uint8_t * Data,size_t Size)11extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { 12 const char *S = (const char*)Data; 13 volatile auto Strncmp = &(strncmp); // Make sure strncmp is not inlined. 14 if (Size >= 6 && !Strncmp(S, "qwerty", 6)) { 15 fprintf(stderr, "BINGO\n"); 16 exit(1); 17 } 18 return 0; 19 } 20