George Karpenkov | 10ab2ac | 2017-08-21 23:25:50 +0000 | [diff] [blame] | 1 | // This file is distributed under the University of Illinois Open Source |
| 2 | // License. See LICENSE.TXT for details. |
| 3 | |
| 4 | // Simple test for a fuzzer. The fuzzer must find a particular string. |
| 5 | #include <cstdint> |
| 6 | #include <cstdio> |
| 7 | #include <cstdlib> |
| 8 | #include <cstring> |
| 9 | |
| 10 | extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { |
| 11 | const char *S = (const char*)Data; |
| 12 | volatile auto Strncmp = &(strncmp); // Make sure strncmp is not inlined. |
| 13 | if (Size >= 6 && !Strncmp(S, "qwerty", 6)) { |
| 14 | fprintf(stderr, "BINGO\n"); |
| 15 | exit(1); |
| 16 | } |
| 17 | return 0; |
| 18 | } |