From 6a7e4c2e202629c9d60719d7ee0fea4b9eb52c93 Mon Sep 17 00:00:00 2001 From: Marcos Pividori Date: Fri, 16 Dec 2016 17:35:13 +0000 Subject: [PATCH] [libFuzzer] Update tests to use more general functions instead of posix specific. Replace sleep() posix function by a more portable sleep_for() function from std. Also, ignore memmem() and strcasestr() on Windows. Differential Revision: https://reviews.llvm.org/D27729 llvm-svn: 289964 --- llvm/lib/Fuzzer/test/OutOfMemoryTest.cpp | 3 ++- llvm/lib/Fuzzer/test/StrstrTest.cpp | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/llvm/lib/Fuzzer/test/OutOfMemoryTest.cpp b/llvm/lib/Fuzzer/test/OutOfMemoryTest.cpp index e5c9f0a..18949c7 100644 --- a/llvm/lib/Fuzzer/test/OutOfMemoryTest.cpp +++ b/llvm/lib/Fuzzer/test/OutOfMemoryTest.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include static volatile char *SinkPtr; @@ -21,7 +22,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { char *p = new char[kSize]; memset(p, 0, kSize); SinkPtr = p; - sleep(1); + std::this_thread::sleep_for(std::chrono::seconds(1)); } } } diff --git a/llvm/lib/Fuzzer/test/StrstrTest.cpp b/llvm/lib/Fuzzer/test/StrstrTest.cpp index dd83953..f021e75 100644 --- a/llvm/lib/Fuzzer/test/StrstrTest.cpp +++ b/llvm/lib/Fuzzer/test/StrstrTest.cpp @@ -8,6 +8,12 @@ #include #include +// Windows does not have strcasestr and memmem, so we are not testing them. +#ifdef _WIN32 +#define strcasestr strstr +#define memmem(a, b, c, d) true +#endif + extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { if (Size < 4) return 0; std::string s(reinterpret_cast(Data), Size); -- 2.7.4