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