1 // This file is distributed under the University of Illinois Open Source
2 // License. See LICENSE.TXT for details.
3 
4 // Test that we don't creash in case of bad strcmp params.
5 #include <cstddef>
6 #include <cstdint>
7 #include <cstring>
8 
9 static volatile int Sink;
10 
11 extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
12   if (Size != 10) return 0;
13   // Data is not zero-terminated, so this call is bad.
14   // Still, there are cases when such calles appear, see e.g.
15   // https://bugs.llvm.org/show_bug.cgi?id=32357
16   Sink = strcmp(reinterpret_cast<const char*>(Data), "123456789");
17   return 0;
18 }
19 
20