Remove --release from Makefile.toml (#1522)

* rem release

* Revert "rem release"

This reverts commit 13aaf13e412818629880348188c3e1b4137b9ed8.

* toggle it with envvar

* fm
This commit is contained in:
Dongjia "toka" Zhang 2023-09-25 14:22:10 +02:00 committed by GitHub
parent dc7d561621
commit c1eef33b5d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
29 changed files with 191 additions and 163 deletions

View File

@ -3,23 +3,24 @@
FUZZER_NAME='fuzzer_sd' FUZZER_NAME='fuzzer_sd'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
# Compilers # Compilers
[tasks.cc] [tasks.cc]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--bin", "libafl_cc"] args = ["build" , "--${PROFILE}", "--bin", "libafl_cc"]
# Harness # Harness
[tasks.fuzzer] [tasks.fuzzer]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--bin", "${FUZZER_NAME}"] args = ["build" , "--${PROFILE}", "--bin", "${FUZZER_NAME}"]
dependencies = [ "cc" ] dependencies = [ "cc" ]
# Run the fuzzer # Run the fuzzer
[tasks.run] [tasks.run]
command = "${CARGO_TARGET_DIR}/release/${FUZZER_NAME}" command = "${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}"
dependencies = [ "fuzzer" ] dependencies = [ "fuzzer" ]
# Test # Test
@ -31,7 +32,7 @@ windows_alias = "unsupported"
[tasks.test_unix] [tasks.test_unix]
script_runner = "@shell" script_runner = "@shell"
script=''' script='''
timeout 10s ${CARGO_TARGET_DIR}/release/${FUZZER_NAME} >fuzz_stdout.log || true timeout 10s ${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME} >fuzz_stdout.log || true
if [ -z "$(grep "objectives: 1" fuzz_stdout.log)" ]; then if [ -z "$(grep "objectives: 1" fuzz_stdout.log)" ]; then
echo "Fuzzer does not generate any testcases or any crashes" echo "Fuzzer does not generate any testcases or any crashes"
exit 1 exit 1

View File

@ -1,6 +1,7 @@
[env] [env]
FUZZER_NAME="fuzzer" FUZZER_NAME="fuzzer"
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -11,7 +12,7 @@ echo "Cargo-make not integrated yet on this"
# Fuzzer # Fuzzer
[tasks.build] [tasks.build]
command = "cargo" command = "cargo"
args = ["build", "--release", "-Zbuild-std=core,alloc", "--target", "x86_64-unknown-linux-gnu"] args = ["build", "--${PROFILE}", "-Zbuild-std=core,alloc", "--target", "x86_64-unknown-linux-gnu"]
# Test # Test
[tasks.test] [tasks.test]
@ -26,7 +27,7 @@ cargo run -Zbuild-std=core,alloc --target x86_64-unknown-linux-gnu || true
dependencies = ["build"] dependencies = ["build"]
[tasks.build_aarch] [tasks.build_aarch]
script = "cargo +nightly build -Zbuild-std=core,alloc --target aarch64-unknown-none -v --release" script = "cargo +nightly build -Zbuild-std=core,alloc --target aarch64-unknown-none -v --${PROFILE}"
# Clean # Clean
[tasks.clean] [tasks.clean]

View File

@ -2,9 +2,10 @@
[env] [env]
FUZZER_NAME='fuzzer_libafl_cc' FUZZER_NAME='fuzzer_libafl_cc'
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
[tasks.unsupported] [tasks.unsupported]
@ -21,7 +22,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -30,7 +31,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.crash_cxx] [tasks.crash_cxx]
linux_alias = "crash_cxx_unix" linux_alias = "crash_cxx_unix"
@ -39,7 +40,7 @@ windows_alias = "unsupported"
[tasks.crash_cxx_unix] [tasks.crash_cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
[tasks.crash_cc] [tasks.crash_cc]
linux_alias = "crash_cc_unix" linux_alias = "crash_cc_unix"
@ -48,7 +49,7 @@ windows_alias = "unsupported"
[tasks.crash_cc_unix] [tasks.crash_cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
# Harness # Harness
[tasks.fuzzer] [tasks.fuzzer]
@ -57,7 +58,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cc" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc"
args = ["${PROJECT_DIR}/src/program.c", "-o", "${FUZZER_NAME}", "-lm"] args = ["${PROJECT_DIR}/src/program.c", "-o", "${FUZZER_NAME}", "-lm"]
dependencies = [ "cxx", "cc" ] dependencies = [ "cxx", "cc" ]
@ -68,7 +69,7 @@ mac_alias = "fuzzer_crash_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_crash_unix] [tasks.fuzzer_crash_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cc" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc"
args = ["${PROJECT_DIR}/src/program.c", "-o", "${FUZZER_NAME}_crash", "-lm"] args = ["${PROJECT_DIR}/src/program.c", "-o", "${FUZZER_NAME}_crash", "-lm"]
dependencies = [ "crash_cxx", "crash_cc" ] dependencies = [ "crash_cxx", "crash_cc" ]
@ -81,7 +82,7 @@ windows_alias = "unsupported"
[tasks.run_unix] [tasks.run_unix]
script_runner = "@shell" script_runner = "@shell"
script=''' script='''
taskset -c 1 ${CARGO_TARGET_DIR}/release/${CARGO_MAKE_PROJECT_NAME} ./${FUZZER_NAME} ./corpus/ -t 1000 taskset -c 1 ${CARGO_TARGET_DIR}/${PROFILE}/${CARGO_MAKE_PROJECT_NAME} ./${FUZZER_NAME} ./corpus/ -t 1000
''' '''
dependencies = [ "fuzzer" ] dependencies = [ "fuzzer" ]
@ -95,7 +96,7 @@ windows_alias = "unsupported"
[tasks.crash_unix] [tasks.crash_unix]
script_runner = "@shell" script_runner = "@shell"
script=''' script='''
taskset -c 1 ${CARGO_TARGET_DIR}/release/${CARGO_MAKE_PROJECT_NAME} ./${FUZZER_NAME}_crash ./corpus/ -t 1000 taskset -c 1 ${CARGO_TARGET_DIR}/${PROFILE}/${CARGO_MAKE_PROJECT_NAME} ./${FUZZER_NAME}_crash ./corpus/ -t 1000
''' '''
dependencies = [ "fuzzer_crash" ] dependencies = [ "fuzzer_crash" ]

View File

@ -1,7 +1,7 @@
# Variables # Variables
[env] [env]
CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -61,7 +61,7 @@ windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
script_runner="@shell" script_runner="@shell"
script=''' script='''
cargo build --release cargo build --${PROFILE}
''' '''
# Run the fuzzer # Run the fuzzer
@ -73,7 +73,7 @@ windows_alias = "unsupported"
[tasks.run_unix] [tasks.run_unix]
script_runner = "@shell" script_runner = "@shell"
script=''' script='''
LD_PRELOAD=$CARGO_TARGET_DIR/release/libfrida_executable_fuzzer.so ./libpng-harness -i corpus -o out -H ./libpng-harness LD_PRELOAD=$CARGO_TARGET_DIR/${PROFILE}/libfrida_executable_fuzzer.so ./libpng-harness -i corpus -o out -H ./libpng-harness
''' '''
dependencies = [ "fuzzer", "harness" ] dependencies = [ "fuzzer", "harness" ]
@ -87,7 +87,7 @@ windows_alias = "unsupported"
script_runner = "@shell" script_runner = "@shell"
script=''' script='''
rm -rf libafl_unix_shmem_server || true rm -rf libafl_unix_shmem_server || true
LD_PRELOAD=$CARGO_TARGET_DIR/release/libfrida_executable_fuzzer.so ./libpng-harness -i corpus -o out -H ./libpng-harness > fuzz_stdout.log & LD_PRELOAD=$CARGO_TARGET_DIR/${PROFILE}/libfrida_executable_fuzzer.so ./libpng-harness -i corpus -o out -H ./libpng-harness > fuzz_stdout.log &
sleep 10s && pkill libpng-harness sleep 10s && pkill libpng-harness
if [ -z "$(grep "corpus: 30" fuzz_stdout.log)" ]; then if [ -z "$(grep "corpus: 30" fuzz_stdout.log)" ]; then
echo "Fuzzer does not generate any testcases or any crashes" echo "Fuzzer does not generate any testcases or any crashes"

View File

@ -2,7 +2,7 @@
[env] [env]
CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
FUZZER_NAME={ source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "frida_gdiplus", mapping = {"linux" = "frida_gdiplus", "macos" = "frida_gdiplus", "windows" = "frida_gdiplus.exe"} } FUZZER_NAME={ source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "frida_gdiplus", mapping = {"linux" = "frida_gdiplus", "macos" = "frida_gdiplus", "windows" = "frida_gdiplus.exe"} }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -32,8 +32,8 @@ windows_alias = "fuzzer_windows"
[tasks.fuzzer_windows] [tasks.fuzzer_windows]
script_runner="@shell" script_runner="@shell"
script=''' script='''
cargo build --release cargo build --${PROFILE}
cp ./target/release/${FUZZER_NAME} . cp ./target/${PROFILE}/${FUZZER_NAME} .
''' '''
# Run the fuzzer # Run the fuzzer

View File

@ -2,7 +2,7 @@
[env] [env]
CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
FUZZER_NAME={ source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "frida_fuzzer", mapping = {"linux" = "frida_fuzzer", "macos" = "frida_fuzzer", "windows" = "frida_fuzzer.exe"} } FUZZER_NAME={ source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "frida_fuzzer", mapping = {"linux" = "frida_fuzzer", "macos" = "frida_fuzzer", "windows" = "frida_fuzzer.exe"} }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -68,15 +68,15 @@ windows_alias = "fuzzer_windows"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
script_runner="@shell" script_runner="@shell"
script=''' script='''
cargo build --release cargo build --${PROFILE}
cp ${CARGO_TARGET_DIR}/release/${FUZZER_NAME} . cp ${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME} .
''' '''
[tasks.fuzzer_windows] [tasks.fuzzer_windows]
script_runner="@shell" script_runner="@shell"
script=''' script='''
cargo build --release cargo build --${PROFILE}
cp ./target/release/${FUZZER_NAME} . cp ./target/${PROFILE}/${FUZZER_NAME} .
''' '''
# Run the fuzzer # Run the fuzzer

View File

@ -2,6 +2,7 @@
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
FUZZER_NAME="fuzzer" FUZZER_NAME="fuzzer"
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -17,7 +18,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -26,7 +27,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# fuzz.o File # fuzz.o File
[tasks.fuzz_o] [tasks.fuzz_o]
@ -35,7 +36,7 @@ mac_alias = "fuzz_o_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzz_o_unix] [tasks.fuzz_o_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cc" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc"
args = ["--libafl-no-link", "-O3", "-c", "fuzz.c", "-o", "fuzz.o"] args = ["--libafl-no-link", "-O3", "-c", "fuzz.c", "-o", "fuzz.o"]
dependencies = ["cc", "cxx"] dependencies = ["cc", "cxx"]
@ -46,7 +47,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["--libafl", "fuzz.o", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["--libafl", "fuzz.o", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = ["cc", "cxx", "fuzz_o"] dependencies = ["cc", "cxx", "fuzz_o"]

View File

@ -2,6 +2,7 @@
[env] [env]
FUZZER_NAME='libpng_harness' FUZZER_NAME='libpng_harness'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -31,7 +32,7 @@ windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "cargo" command = "cargo"
args = ["build", "--release"] args = ["build", "--${PROFILE}"]
# Harness # Harness
[tasks.harness] [tasks.harness]
@ -65,7 +66,7 @@ windows_alias = "unsupported"
[tasks.run_unix] [tasks.run_unix]
command = "cargo" command = "cargo"
args = ["run", "--release", "./${FUZZER_NAME}", "--", "--libafl-in", "../libfuzzer_libpng/corpus", "--libafl-out", "./out", "./${FUZZER_NAME}"] args = ["run", "--${PROFILE}", "./${FUZZER_NAME}", "--", "--libafl-in", "../libfuzzer_libpng/corpus", "--libafl-out", "./out", "./${FUZZER_NAME}"]
dependencies = [ "harness", "fuzzer" ] dependencies = [ "harness", "fuzzer" ]
# Run the fuzzer # Run the fuzzer

View File

@ -2,6 +2,7 @@
[env] [env]
FUZZER_NAME='libpng_harness' FUZZER_NAME='libpng_harness'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -31,7 +32,7 @@ windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "cargo" command = "cargo"
args = ["build", "--release"] args = ["build", "--${PROFILE}"]
# Harness # Harness
[tasks.harness] [tasks.harness]
@ -65,7 +66,7 @@ windows_alias = "unsupported"
[tasks.run_unix] [tasks.run_unix]
command = "cargo" command = "cargo"
args = ["run", "--release", "./${FUZZER_NAME}", "--", "--libafl-in", "../libfuzzer_libpng/corpus", "--libafl-out", "./out", "./${FUZZER_NAME}"] args = ["run", "--${PROFILE}", "./${FUZZER_NAME}", "--", "--libafl-in", "../libfuzzer_libpng/corpus", "--libafl-out", "./out", "./${FUZZER_NAME}"]
dependencies = [ "harness", "fuzzer" ] dependencies = [ "harness", "fuzzer" ]
# Run the fuzzer # Run the fuzzer

View File

@ -2,6 +2,7 @@
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
FUZZER_NAME="fuzzer" FUZZER_NAME="fuzzer"
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -17,7 +18,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -26,7 +27,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# fuzz.o File # fuzz.o File
[tasks.fuzz_o] [tasks.fuzz_o]
@ -35,7 +36,7 @@ mac_alias = "fuzz_o_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzz_o_unix] [tasks.fuzz_o_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cc" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc"
args = ["--libafl-no-link", "-O3", "-c", "fuzz.c", "-o", "fuzz.o"] args = ["--libafl-no-link", "-O3", "-c", "fuzz.c", "-o", "fuzz.o"]
dependencies = ["cc", "cxx"] dependencies = ["cc", "cxx"]
@ -46,7 +47,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["--libafl", "fuzz.o", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["--libafl", "fuzz.o", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = ["cc", "cxx", "fuzz_o"] dependencies = ["cc", "cxx", "fuzz_o"]

View File

@ -2,9 +2,10 @@
[env] [env]
FUZZER_NAME='fuzzer_mozjpeg' FUZZER_NAME='fuzzer_mozjpeg'
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
[tasks.unsupported] [tasks.unsupported]
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -68,7 +69,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/mozjpeg-4.0.3/libjpeg.a", "${PROJECT_DIR}/mozjpeg-4.0.3/libturbojpeg.a", "-I", "${PROJECT_DIR}/mozjpeg-4.0.3/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/mozjpeg-4.0.3/libjpeg.a", "${PROJECT_DIR}/mozjpeg-4.0.3/libturbojpeg.a", "-I", "${PROJECT_DIR}/mozjpeg-4.0.3/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]

View File

@ -3,9 +3,10 @@
FUZZER_NAME='fuzzer_libpng' FUZZER_NAME='fuzzer_libpng'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.crash_cxx] [tasks.crash_cxx]
linux_alias = "crash_cxx_unix" linux_alias = "crash_cxx_unix"
@ -53,7 +54,7 @@ windows_alias = "unsupported"
[tasks.crash_cxx_unix] [tasks.crash_cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
[tasks.crash_cc] [tasks.crash_cc]
linux_alias = "crash_cc_unix" linux_alias = "crash_cc_unix"
@ -62,7 +63,7 @@ windows_alias = "unsupported"
[tasks.crash_cc_unix] [tasks.crash_cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -75,7 +76,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -90,7 +91,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "crash_cxx", "crash_cc" ] dependencies = [ "libpng", "crash_cxx", "crash_cc" ]
@ -101,7 +102,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]
@ -112,7 +113,7 @@ mac_alias = "fuzzer_crash_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_crash_unix] [tasks.fuzzer_crash_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}_crash", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}_crash", "-lm", "-lz"]
dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ] dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ]

View File

@ -1,10 +1,11 @@
# Variables # Variables
[env] [env]
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
FUZZER_NAME='fuzzer_libpng_accounting' FUZZER_NAME='fuzzer_libpng_accounting'
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
[tasks.unsupported] [tasks.unsupported]
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -57,7 +58,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -69,7 +70,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]

View File

@ -3,9 +3,10 @@
FUZZER_NAME='fuzzer_libpng' FUZZER_NAME='fuzzer_libpng'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target"} CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target"}
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.crash_cxx] [tasks.crash_cxx]
linux_alias = "crash_cxx_unix" linux_alias = "crash_cxx_unix"
@ -53,7 +54,7 @@ windows_alias = "unsupported"
[tasks.crash_cxx_unix] [tasks.crash_cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
[tasks.crash_cc] [tasks.crash_cc]
linux_alias = "crash_cc_unix" linux_alias = "crash_cc_unix"
@ -62,7 +63,7 @@ windows_alias = "unsupported"
[tasks.crash_cc_unix] [tasks.crash_cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -75,7 +76,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -90,7 +91,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "crash_cxx", "crash_cc" ] dependencies = [ "libpng", "crash_cxx", "crash_cc" ]
@ -101,7 +102,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]
@ -112,7 +113,7 @@ mac_alias = "fuzzer_crash_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_crash_unix] [tasks.fuzzer_crash_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}_crash", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}_crash", "-lm", "-lz"]
dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ] dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ]

View File

@ -2,9 +2,10 @@
[env] [env]
FUZZER_NAME='fuzzer_libpng_launcher' FUZZER_NAME='fuzzer_libpng_launcher'
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
[tasks.unsupported] [tasks.unsupported]
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -57,7 +58,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -69,7 +70,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]

View File

@ -3,9 +3,10 @@
FUZZER_NAME='fuzzer_libpng' FUZZER_NAME='fuzzer_libpng'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.crash_cxx] [tasks.crash_cxx]
linux_alias = "crash_cxx_unix" linux_alias = "crash_cxx_unix"
@ -53,7 +54,7 @@ windows_alias = "unsupported"
[tasks.crash_cxx_unix] [tasks.crash_cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
[tasks.crash_cc] [tasks.crash_cc]
linux_alias = "crash_cc_unix" linux_alias = "crash_cc_unix"
@ -62,7 +63,7 @@ windows_alias = "unsupported"
[tasks.crash_cc_unix] [tasks.crash_cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -75,7 +76,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -90,7 +91,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "crash_cxx", "crash_cc" ] dependencies = [ "libpng", "crash_cxx", "crash_cc" ]
@ -101,7 +102,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]
@ -112,7 +113,7 @@ mac_alias = "fuzzer_crash_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_crash_unix] [tasks.fuzzer_crash_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}_crash", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}_crash", "-lm", "-lz"]
dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ] dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ]

View File

@ -3,9 +3,10 @@
FUZZER_NAME='fuzzer_libpng_ctx' FUZZER_NAME='fuzzer_libpng_ctx'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -57,7 +58,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -69,7 +70,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]

View File

@ -2,10 +2,11 @@
[env] [env]
FUZZER_NAME='fuzzer_libpng_launcher' FUZZER_NAME='fuzzer_libpng_launcher'
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
LIBAFL_LIBTOOL = '${CARGO_TARGET_DIR}/release/libafl_libtool' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_LIBTOOL = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_libtool'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
[tasks.unsupported] [tasks.unsupported]
@ -36,7 +37,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -45,7 +46,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -58,7 +59,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" LIBTOOL=${CARGO_TARGET_DIR}/release/libafl_libtool make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx" LIBTOOL=${CARGO_TARGET_DIR}/${PROFILE}/libafl_libtool
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -70,7 +71,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]

View File

@ -2,9 +2,10 @@
[env] [env]
FUZZER_NAME='fuzzer_libpng_launcher' FUZZER_NAME='fuzzer_libpng_launcher'
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
[tasks.unsupported] [tasks.unsupported]
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -57,7 +58,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -69,7 +70,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]

View File

@ -3,9 +3,10 @@
FUZZER_NAME='fuzzer_libpng' FUZZER_NAME='fuzzer_libpng'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.crash_cxx] [tasks.crash_cxx]
linux_alias = "crash_cxx_unix" linux_alias = "crash_cxx_unix"
@ -53,7 +54,7 @@ windows_alias = "unsupported"
[tasks.crash_cxx_unix] [tasks.crash_cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
[tasks.crash_cc] [tasks.crash_cc]
linux_alias = "crash_cc_unix" linux_alias = "crash_cc_unix"
@ -62,7 +63,7 @@ windows_alias = "unsupported"
[tasks.crash_cc_unix] [tasks.crash_cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release", "--features=crash"] args = ["build" , "--${PROFILE}", "--features=crash"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -75,7 +76,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -90,7 +91,7 @@ script_runner="@shell"
script=''' script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "crash_cxx", "crash_cc" ] dependencies = [ "libpng", "crash_cxx", "crash_cc" ]
@ -101,7 +102,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]
@ -112,7 +113,7 @@ mac_alias = "fuzzer_crash_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_crash_unix] [tasks.fuzzer_crash_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}_crash", "-lm", "-lz"] args = ["${PROJECT_DIR}/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}_crash", "-lm", "-lz"]
dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ] dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ]

View File

@ -3,27 +3,28 @@
FUZZER_NAME='libfuzzer_stb_image' FUZZER_NAME='libfuzzer_stb_image'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/release/libafl_cc', mapping = {"windows" = '.\\target\\release\\libafl_cc.exe'} } PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/release/libafl_cxx', mapping = {"windows" = '.\\target\\release\\libafl_cxx.exe'} } LIBAFL_CC = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc', mapping = {"windows" = '.\\target\\${PROFILE}\\libafl_cc.exe'} }
FUZZER = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/release/libfuzzer_stb_image', mapping = {"windows" = '.\\target\\release\\libfuzzer_stb_image.exe'} } LIBAFL_CXX = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx', mapping = {"windows" = '.\\target\\${PROFILE}\\libafl_cxx.exe'} }
FUZZER = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/${PROFILE}/libfuzzer_stb_image', mapping = {"windows" = '.\\target\\${PROFILE}\\libfuzzer_stb_image.exe'} }
# Compilers # Compilers
[tasks.cxx] [tasks.cxx]
condition = { files_not_exist = ["${LIBAFL_CXX}"] } condition = { files_not_exist = ["${LIBAFL_CXX}"] }
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
condition = { files_not_exist = ["${LIBAFL_CC}"] } condition = { files_not_exist = ["${LIBAFL_CC}"] }
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Build the fuzzer # Build the fuzzer
[tasks.fuzzer] [tasks.fuzzer]
script_runner="@shell" script_runner="@shell"
script=''' script='''
cargo build --release cargo build --${PROFILE}
cp ${FUZZER} . cp ${FUZZER} .
''' '''
dependencies = ["cc", "cxx"] dependencies = ["cc", "cxx"]

View File

@ -2,6 +2,7 @@
[env] [env]
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
FUZZER_NAME='libfuzzer_stb_image_concolic' FUZZER_NAME='libfuzzer_stb_image_concolic'
# Compilers # Compilers
@ -15,7 +16,7 @@ condition = { files_not_exist = ["${CARGO_TARGET_DIR}/libSymRuntime.so"] }
script_runner = "@shell" script_runner = "@shell"
script = ''' script = '''
cd runtime cd runtime
cargo build --release cargo build --${PROFILE}
''' '''
# Build the fuzzer # Build the fuzzer
@ -29,7 +30,7 @@ dependencies = ["runtime"]
script_runner = "@shell" script_runner = "@shell"
script = ''' script = '''
cd fuzzer cd fuzzer
cargo build --release cargo build --${PROFILE}
''' '''
[tasks.test] [tasks.test]

View File

@ -3,27 +3,28 @@
FUZZER_NAME='libfuzzer_stb_image_sugar' FUZZER_NAME='libfuzzer_stb_image_sugar'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/release/libafl_cc", mapping = {"windows" = '.\\target\\release\\libafl_cc.exe'} } PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/release/libafl_cxx", mapping = {"windows" = '.\\target\\release\\libafl_cxx.exe'} } LIBAFL_CC = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc", mapping = {"windows" = '.\\target\\${PROFILE}\\libafl_cc.exe'} }
FUZZER = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/release/libfuzzer_stb_image_sugar", mapping = {"windows" = '.\\target\\release\\libfuzzer_stb_image_sugar.exe'} } LIBAFL_CXX = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx", mapping = {"windows" = '.\\target\\${PROFILE}\\libafl_cxx.exe'} }
FUZZER = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/${PROFILE}/libfuzzer_stb_image_sugar", mapping = {"windows" = '.\\target\\${PROFILE}\\libfuzzer_stb_image_sugar.exe'} }
# Compilers # Compilers
[tasks.cxx] [tasks.cxx]
condition = { files_not_exist = ["${LIBAFL_CXX}"] } condition = { files_not_exist = ["${LIBAFL_CXX}"] }
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
condition = { files_not_exist = ["${LIBAFL_CC}"] } condition = { files_not_exist = ["${LIBAFL_CC}"] }
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Build the fuzzer # Build the fuzzer
[tasks.fuzzer] [tasks.fuzzer]
script_runner="@shell" script_runner="@shell"
script=''' script='''
cargo build --release cargo build --${PROFILE}
cp ${FUZZER} . cp ${FUZZER} .
''' '''
dependencies = ["cc", "cxx"] dependencies = ["cc", "cxx"]

View File

@ -2,6 +2,7 @@
[env] [env]
FUZZER_NAME='libfuzzer_windows_asan' FUZZER_NAME='libfuzzer_windows_asan'
CARGO_TARGET_DIR = { value = "./target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "./target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
@ -17,7 +18,7 @@ windows_alias = "cxx_unix"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -26,7 +27,7 @@ windows_alias = "cc_unix"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.crash_cxx] [tasks.crash_cxx]
linux_alias = "unsupported" linux_alias = "unsupported"
@ -54,7 +55,7 @@ mac_alias = "unsupported"
windows_alias = "fuzzer_windows" windows_alias = "fuzzer_windows"
[tasks.fuzzer_windows] [tasks.fuzzer_windows]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["./harness.cpp", "-o", "${FUZZER_NAME}.exe"] args = ["./harness.cpp", "-o", "${FUZZER_NAME}.exe"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]

View File

@ -2,9 +2,10 @@
[env] [env]
FUZZER_NAME='fuzzer_libpng_nautilus' FUZZER_NAME='fuzzer_libpng_nautilus'
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } } CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
LIBAFL_CC = '${CARGO_TARGET_DIR}/release/libafl_cc' PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
LIBAFL_CXX = '${CARGO_TARGET_DIR}/release/libafl_cxx' LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
FUZZER = '${CARGO_TARGET_DIR}/release/${FUZZER_NAME}' LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
PROJECT_DIR = { script = ["pwd"] } PROJECT_DIR = { script = ["pwd"] }
[tasks.unsupported] [tasks.unsupported]
@ -35,7 +36,7 @@ windows_alias = "unsupported"
[tasks.cxx_unix] [tasks.cxx_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
[tasks.cc] [tasks.cc]
linux_alias = "cc_unix" linux_alias = "cc_unix"
@ -44,7 +45,7 @@ windows_alias = "unsupported"
[tasks.cc_unix] [tasks.cc_unix]
command = "cargo" command = "cargo"
args = ["build" , "--release"] args = ["build" , "--${PROFILE}"]
# Library # Library
[tasks.lib] [tasks.lib]
@ -58,7 +59,7 @@ script='''
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
cd "${PROJECT_DIR}" cd "${PROJECT_DIR}"
cp ../baby_fuzzer_nautilus/grammar.json . cp ../baby_fuzzer_nautilus/grammar.json .
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/release/libafl_cc" CXX="${CARGO_TARGET_DIR}/release/libafl_cxx" make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
''' '''
dependencies = [ "libpng", "cxx", "cc" ] dependencies = [ "libpng", "cxx", "cc" ]
@ -70,7 +71,7 @@ mac_alias = "fuzzer_unix"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.fuzzer_unix] [tasks.fuzzer_unix]
command = "${CARGO_TARGET_DIR}/release/libafl_cxx" command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
args = ["${PROJECT_DIR}/../libfuzzer_libpng/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"] args = ["${PROJECT_DIR}/../libfuzzer_libpng/harness.cc", "${PROJECT_DIR}/libpng-1.6.37/.libs/libpng16.a", "-I", "${PROJECT_DIR}/libpng-1.6.37/", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
dependencies = [ "lib", "cxx", "cc" ] dependencies = [ "lib", "cxx", "cc" ]

View File

@ -1,4 +1,5 @@
[env] [env]
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
CROSS_CC = "x86_64-linux-gnu-gcc" CROSS_CC = "x86_64-linux-gnu-gcc"
CROSS_CXX = "x86_64-linux-gnu-g++" CROSS_CXX = "x86_64-linux-gnu-g++"
CROSS_CFLAGS = "" CROSS_CFLAGS = ""
@ -182,7 +183,7 @@ windows_alias = "unsupported"
command = "cargo" command = "cargo"
args = [ args = [
"build", "build",
"--release", "--${PROFILE}",
"--features", "${FEATURE}", "--features", "${FEATURE}",
"--target-dir", "${TARGET_DIR}" "--target-dir", "${TARGET_DIR}"
] ]
@ -191,7 +192,7 @@ args = [
dependencies = ["build"] dependencies = ["build"]
script_runner="@shell" script_runner="@shell"
script=''' script='''
mv ${TARGET_DIR}/release/qemu-coverage ${TARGET_DIR}/release/qemu-coverage-${CARGO_MAKE_PROFILE} mv ${TARGET_DIR}/${PROFILE}/qemu-coverage ${TARGET_DIR}/${PROFILE}/qemu-coverage-${CARGO_MAKE_PROFILE}
''' '''
[tasks.harness] [tasks.harness]
@ -222,7 +223,7 @@ mac_alias = "unsupported"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.run_unix] [tasks.run_unix]
command = "${TARGET_DIR}/release/qemu-coverage-${CARGO_MAKE_PROFILE}" command = "${TARGET_DIR}/${PROFILE}/qemu-coverage-${CARGO_MAKE_PROFILE}"
args = [ args = [
"--coverage", "${TARGET_DIR}/drcov.log", "--coverage", "${TARGET_DIR}/drcov.log",
"--input", "./corpus", "--input", "./corpus",

View File

@ -1,4 +1,5 @@
[env] [env]
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
CROSS_CC = "x86_64-linux-gnu-gcc" CROSS_CC = "x86_64-linux-gnu-gcc"
CROSS_CXX = "x86_64-linux-gnu-g++" CROSS_CXX = "x86_64-linux-gnu-g++"
CROSS_CFLAGS = "" CROSS_CFLAGS = ""
@ -182,7 +183,7 @@ windows_alias = "unsupported"
command = "cargo" command = "cargo"
args = [ args = [
"build", "build",
"--release", "--${PROFILE}",
"--features", "${FEATURE}", "--features", "${FEATURE}",
"--target-dir", "${TARGET_DIR}" "--target-dir", "${TARGET_DIR}"
] ]
@ -191,7 +192,7 @@ args = [
dependencies = ["build"] dependencies = ["build"]
script_runner="@shell" script_runner="@shell"
script=''' script='''
mv ${TARGET_DIR}/release/qemu_launcher ${TARGET_DIR}/release/qemu_launcher-${CARGO_MAKE_PROFILE} mv ${TARGET_DIR}/${PROFILE}/qemu_launcher ${TARGET_DIR}/${PROFILE}/qemu_launcher-${CARGO_MAKE_PROFILE}
''' '''
[tasks.harness] [tasks.harness]
@ -222,7 +223,7 @@ mac_alias = "unsupported"
windows_alias = "unsupported" windows_alias = "unsupported"
[tasks.run_unix] [tasks.run_unix]
command = "${TARGET_DIR}/release/qemu_launcher-${CARGO_MAKE_PROFILE}" command = "${TARGET_DIR}/${PROFILE}/qemu_launcher-${CARGO_MAKE_PROFILE}"
args = [ args = [
"--coverage", "${TARGET_DIR}/drcov.log", "--coverage", "${TARGET_DIR}/drcov.log",
"--input", "./corpus", "--input", "./corpus",

View File

@ -1,3 +1,6 @@
[env]
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
[tasks.unsupported] [tasks.unsupported]
script_runner="@shell" script_runner="@shell"
script=''' script='''
@ -24,7 +27,7 @@ windows_alias = "fuzzer_windows"
[tasks.fuzzer_windows] [tasks.fuzzer_windows]
dependencies = ["harness"] dependencies = ["harness"]
command = "cargo" command = "cargo"
args = ["build", "--release"] args = ["build", "--${PROFILE}"]
# Run the fuzzer # Run the fuzzer
[tasks.run] [tasks.run]
@ -35,7 +38,7 @@ windows_alias = "run_windows"
[tasks.run_windows] [tasks.run_windows]
dependencies = ["harness", "fuzzer"] dependencies = ["harness", "fuzzer"]
command = "cargo" command = "cargo"
args = ["run", "--release"] args = ["run", "--${PROFILE}"]
# Run the fuzzer # Run the fuzzer
@ -47,7 +50,7 @@ windows_alias = "test_windows"
[tasks.test_windows] [tasks.test_windows]
script_runner = "@shell" script_runner = "@shell"
script=''' script='''
copy .\target\release\tinyinst_simple.exe . copy .\target\${PROFILE}\tinyinst_simple.exe .
start "" "tinyinst_simple.exe" start "" "tinyinst_simple.exe"
#ping is for timeout #ping is for timeout
ping -n 10 127.0.0.1>NUL && taskkill /im tinyinst_simple.exe /F ping -n 10 127.0.0.1>NUL && taskkill /im tinyinst_simple.exe /F

View File

@ -7,6 +7,7 @@ cd "$SCRIPT_DIR/.." || exit 1
if [[ -z "${RUN_ON_CI}" ]]; then if [[ -z "${RUN_ON_CI}" ]]; then
fuzzers=$(find ./fuzzers -mindepth 1 -maxdepth 1 -type d) fuzzers=$(find ./fuzzers -mindepth 1 -maxdepth 1 -type d)
backtrace_fuzzers=$(find ./fuzzers/backtrace_baby_fuzzers -mindepth 1 -maxdepth 1 -type d) backtrace_fuzzers=$(find ./fuzzers/backtrace_baby_fuzzers -mindepth 1 -maxdepth 1 -type d)
export PROFILE=dev
else else
cargo build -p build_and_test_fuzzers cargo build -p build_and_test_fuzzers
fuzzers=$(cargo run -p build_and_test_fuzzers -- "remotes/origin/main" "HEAD^") fuzzers=$(cargo run -p build_and_test_fuzzers -- "remotes/origin/main" "HEAD^")
@ -82,4 +83,4 @@ do
du -sh "$CARGO_TARGET_DIR" du -sh "$CARGO_TARGET_DIR"
cd "$libafl" || exit 1 cd "$libafl" || exit 1
echo "" echo ""
done done