| REQUIRES: linux, x86_64 |
| RUN: rm -rf %t && mkdir %t |
| RUN: cd %t |
| RUN: %cpp_compiler %S/OutOfProcessFuzzTarget.cpp -o oop-fuzzer |
| RUN: %no_fuzzer_cpp_compiler -fsanitize-coverage=inline-8bit-counters %S/SimpleTest.cpp -c -o SimpleTestOOP.o |
| RUN: %no_fuzzer_c_compiler %S/../../lib/fuzzer/standalone/StandaloneFuzzTargetMain.c -c -o StandaloneFuzzTargetMainOOP.o |
| RUN: %no_fuzzer_cpp_compiler %S/SanCovDump.cpp -c -o SanCovDumpOOP.o |
| RUN: %no_fuzzer_cpp_compiler SimpleTestOOP.o StandaloneFuzzTargetMainOOP.o SanCovDumpOOP.o -o oop-target |
| RUN: rm -rf OOP_CORPUS |
| RUN: mkdir OOP_CORPUS |
| RUN: echo "Hi" > OOP_CORPUS/seed |
| RUN: echo %t |
| |
| # Out-of-process fuzzing with this rig is slow, |
| # we can not wait for the fuzzer to find the faulty input. |
| # Just run for a bit and observe the corpus expansion. |
| RUN: LIBFUZZER_OOP_TARGET="./oop-target > /dev/null 2>&1 " ./oop-fuzzer -max_len=3 OOP_CORPUS -runs=1000 -jobs=4 |
| CHECK: Running: OOP_CORPUS/ |
| CHECK: Running: OOP_CORPUS/ |
| CHECK: Running: OOP_CORPUS/ |
| RUN: ./oop-target OOP_CORPUS/* 2>&1 | FileCheck %s |