[llvm] r298030 - [libFuzzer] add a test with two different bugs

Kostya Serebryany via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 16 18:33:16 PDT 2017


Author: kcc
Date: Thu Mar 16 20:33:16 2017
New Revision: 298030

URL: http://llvm.org/viewvc/llvm-project?rev=298030&view=rev
Log:
[libFuzzer] add a test with two different bugs

Added:
    llvm/trunk/lib/Fuzzer/test/TwoDifferentBugsTest.cpp
Modified:
    llvm/trunk/lib/Fuzzer/test/CMakeLists.txt

Modified: llvm/trunk/lib/Fuzzer/test/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/test/CMakeLists.txt?rev=298030&r1=298029&r2=298030&view=diff
==============================================================================
--- llvm/trunk/lib/Fuzzer/test/CMakeLists.txt (original)
+++ llvm/trunk/lib/Fuzzer/test/CMakeLists.txt Thu Mar 16 20:33:16 2017
@@ -128,6 +128,7 @@ set(Tests
   TimeoutTest
   TimeoutEmptyTest
   TraceMallocTest
+  TwoDifferentBugsTest
   )
 
 if(APPLE OR MSVC)

Added: llvm/trunk/lib/Fuzzer/test/TwoDifferentBugsTest.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/test/TwoDifferentBugsTest.cpp?rev=298030&view=auto
==============================================================================
--- llvm/trunk/lib/Fuzzer/test/TwoDifferentBugsTest.cpp (added)
+++ llvm/trunk/lib/Fuzzer/test/TwoDifferentBugsTest.cpp Thu Mar 16 20:33:16 2017
@@ -0,0 +1,22 @@
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+
+// Simple test for a fuzzer. This test may trigger two different bugs.
+#include <cstdint>
+#include <cstdlib>
+#include <cstddef>
+#include <iostream>
+
+static volatile int *Null = 0;
+
+void Foo() { Null[1] = 0; }
+void Bar() { Null[2] = 0; }
+
+extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
+  if (Size < 10 && Data[0] == 'H')
+    Foo();
+  if (Size >= 10 && Data[0] == 'H')
+    Bar();
+  return 0;
+}
+




More information about the llvm-commits mailing list