[compiler-rt] r341495 - [libfuzzer] Replace memmem with strstr.
Matt Morehouse via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 5 14:03:44 PDT 2018
Author: morehouse
Date: Wed Sep 5 14:03:43 2018
New Revision: 341495
URL: http://llvm.org/viewvc/llvm-project?rev=341495&view=rev
Log:
[libfuzzer] Replace memmem with strstr.
Summary: Memmem is not available on Windows.
Patch By: metzman
Reviewers: morehouse
Reviewed By: morehouse
Subscribers: george.karpenkov, morehouse
Differential Revision: https://reviews.llvm.org/D51692
Modified:
compiler-rt/trunk/test/fuzzer/InitializeTest.cpp
compiler-rt/trunk/test/fuzzer/initialize.test
Modified: compiler-rt/trunk/test/fuzzer/InitializeTest.cpp
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/fuzzer/InitializeTest.cpp?rev=341495&r1=341494&r2=341495&view=diff
==============================================================================
--- compiler-rt/trunk/test/fuzzer/InitializeTest.cpp (original)
+++ compiler-rt/trunk/test/fuzzer/InitializeTest.cpp Wed Sep 5 14:03:43 2018
@@ -9,7 +9,7 @@
#include <stdlib.h>
#include <string.h>
-static char *argv0;
+static char *argv0 = NULL;
extern "C" int LLVMFuzzerInitialize(int *argc, char ***argv) {
assert(*argc > 0);
@@ -20,8 +20,7 @@ extern "C" int LLVMFuzzerInitialize(int
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
assert(argv0);
- if (Size == strlen(argv0) &&
- !memmem(Data, Size, argv0, Size)) {
+ if (argv0 && Size >= 4 && !memcmp(Data, "fuzz", 4)) {
fprintf(stderr, "BINGO %s\n", argv0);
exit(1);
}
Modified: compiler-rt/trunk/test/fuzzer/initialize.test
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/fuzzer/initialize.test?rev=341495&r1=341494&r2=341495&view=diff
==============================================================================
--- compiler-rt/trunk/test/fuzzer/initialize.test (original)
+++ compiler-rt/trunk/test/fuzzer/initialize.test Wed Sep 5 14:03:43 2018
@@ -1,4 +1,4 @@
-# FIXME: Disabled on Windows because memmem is a GNU extension.
+# FIXME: Disabled on Windows since LLVMFuzzerInitialize does not yet work.
UNSUPPORTED: windows
CHECK: BINGO
RUN: %cpp_compiler %S/InitializeTest.cpp -o %t-InitializeTest
More information about the llvm-commits
mailing list