Fix CI (#1558)
* endif * just fix every profile * WHY YOU DONT JUST USE THE SAME NAME FOR DIR * fix * Some fuzzer want release * WHY I ALWAYS FORGET COMMA * NO MORE SPACE * rename * stb doesn't like debug build * just use release * another just use release
This commit is contained in:
parent
74435e1461
commit
324db072a2
17
.github/workflows/build_and_test.yml
vendored
17
.github/workflows/build_and_test.yml
vendored
@ -196,9 +196,22 @@ jobs:
|
||||
- name: Remove Dotnet (macOS)
|
||||
if: runner.os == 'macOS'
|
||||
run: rm -rf /usr/local/bin/dotnet
|
||||
- name: Remove Dotnet & Haskell (Linux)
|
||||
- name: Free Disk Space (Ubuntu)
|
||||
if: runner.os == 'Linux'
|
||||
run: rm -rf /usr/share/dotnet && rm -rf /opt/ghc
|
||||
uses: jlumbroso/free-disk-space@main
|
||||
with:
|
||||
# this might remove tools that are actually needed,
|
||||
# if set to "true" but frees about 6 GB
|
||||
tool-cache: false
|
||||
|
||||
# all of these default to true, but feel free to set to
|
||||
# "false" if necessary for your workflow
|
||||
android: true
|
||||
dotnet: true
|
||||
haskell: true
|
||||
large-packages: true
|
||||
docker-images: true
|
||||
swap-storage: true
|
||||
- name: Add nightly rustfmt and clippy
|
||||
run: rustup toolchain install nightly --component rustfmt --component clippy --allow-downgrade
|
||||
- name: Add no_std toolchain
|
||||
|
@ -3,24 +3,25 @@
|
||||
FUZZER_NAME='fuzzer_sd'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
PROFILE = { value = "release" }
|
||||
PROFILE_DIR = {value = "release" }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
|
||||
# Compilers
|
||||
[tasks.cc]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--bin", "libafl_cc"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--bin", "libafl_cc"]
|
||||
|
||||
# Harness
|
||||
[tasks.fuzzer]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--bin", "${FUZZER_NAME}"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--bin", "${FUZZER_NAME}"]
|
||||
dependencies = [ "cc" ]
|
||||
|
||||
# Run the fuzzer
|
||||
[tasks.run]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}"
|
||||
dependencies = [ "fuzzer" ]
|
||||
|
||||
# Test
|
||||
@ -32,7 +33,7 @@ windows_alias = "unsupported"
|
||||
[tasks.test_unix]
|
||||
script_runner = "@shell"
|
||||
script='''
|
||||
timeout 10s ${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME} >fuzz_stdout.log || true
|
||||
timeout 10s ${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME} >fuzz_stdout.log || true
|
||||
if [ -z "$(grep "objectives: 1" fuzz_stdout.log)" ]; then
|
||||
echo "Fuzzer does not generate any testcases or any crashes"
|
||||
exit 1
|
||||
|
@ -2,6 +2,7 @@
|
||||
FUZZER_NAME="fuzzer"
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -12,7 +13,7 @@ echo "Cargo-make not integrated yet on this"
|
||||
# Fuzzer
|
||||
[tasks.build]
|
||||
command = "cargo"
|
||||
args = ["build", "--${PROFILE}", "-Zbuild-std=core,alloc", "--target", "x86_64-unknown-linux-gnu"]
|
||||
args = ["build", "--profile", "${PROFILE}", "-Zbuild-std=core,alloc", "--target", "x86_64-unknown-linux-gnu"]
|
||||
|
||||
# Test
|
||||
[tasks.test]
|
||||
@ -27,7 +28,7 @@ cargo run -Zbuild-std=core,alloc --target x86_64-unknown-linux-gnu || true
|
||||
dependencies = ["build"]
|
||||
|
||||
[tasks.build_aarch]
|
||||
script = "cargo +nightly build -Zbuild-std=core,alloc --target aarch64-unknown-none -v --${PROFILE}"
|
||||
script = "cargo +nightly build -Zbuild-std=core,alloc --target aarch64-unknown-none -v --profile ${PROFILE}"
|
||||
|
||||
# Clean
|
||||
[tasks.clean]
|
||||
|
@ -3,9 +3,10 @@
|
||||
FUZZER_NAME='fuzzer_libafl_cc'
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
|
||||
[tasks.unsupported]
|
||||
@ -22,7 +23,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile","${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -31,7 +32,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.crash_cxx]
|
||||
linux_alias = "crash_cxx_unix"
|
||||
@ -40,7 +41,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
[tasks.crash_cc]
|
||||
linux_alias = "crash_cc_unix"
|
||||
@ -49,7 +50,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
# Harness
|
||||
[tasks.fuzzer]
|
||||
@ -58,7 +59,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc"
|
||||
args = ["${PROJECT_DIR}/src/program.c", "-o", "${FUZZER_NAME}", "-lm"]
|
||||
dependencies = [ "cxx", "cc" ]
|
||||
|
||||
@ -69,7 +70,7 @@ mac_alias = "fuzzer_crash_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_crash_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc"
|
||||
args = ["${PROJECT_DIR}/src/program.c", "-o", "${FUZZER_NAME}_crash", "-lm"]
|
||||
dependencies = [ "crash_cxx", "crash_cc" ]
|
||||
|
||||
@ -82,7 +83,7 @@ windows_alias = "unsupported"
|
||||
[tasks.run_unix]
|
||||
script_runner = "@shell"
|
||||
script='''
|
||||
taskset -c 1 ${CARGO_TARGET_DIR}/${PROFILE}/${CARGO_MAKE_PROJECT_NAME} ./${FUZZER_NAME} ./corpus/ -t 1000
|
||||
taskset -c 1 ${CARGO_TARGET_DIR}/${PROFILE_DIR}/${CARGO_MAKE_PROJECT_NAME} ./${FUZZER_NAME} ./corpus/ -t 1000
|
||||
'''
|
||||
dependencies = [ "fuzzer" ]
|
||||
|
||||
@ -96,7 +97,7 @@ windows_alias = "unsupported"
|
||||
[tasks.crash_unix]
|
||||
script_runner = "@shell"
|
||||
script='''
|
||||
taskset -c 1 ${CARGO_TARGET_DIR}/${PROFILE}/${CARGO_MAKE_PROJECT_NAME} ./${FUZZER_NAME}_crash ./corpus/ -t 1000
|
||||
taskset -c 1 ${CARGO_TARGET_DIR}/${PROFILE_DIR}/${CARGO_MAKE_PROJECT_NAME} ./${FUZZER_NAME}_crash ./corpus/ -t 1000
|
||||
'''
|
||||
dependencies = [ "fuzzer_crash" ]
|
||||
|
||||
|
@ -2,6 +2,7 @@
|
||||
[env]
|
||||
CARGO_TARGET_DIR = { value = "target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -61,7 +62,7 @@ windows_alias = "unsupported"
|
||||
[tasks.fuzzer_unix]
|
||||
script_runner="@shell"
|
||||
script='''
|
||||
cargo build --${PROFILE}
|
||||
cargo build --profile ${PROFILE}
|
||||
'''
|
||||
|
||||
# Run the fuzzer
|
||||
@ -73,7 +74,7 @@ windows_alias = "unsupported"
|
||||
[tasks.run_unix]
|
||||
script_runner = "@shell"
|
||||
script='''
|
||||
LD_PRELOAD=$CARGO_TARGET_DIR/${PROFILE}/libfrida_executable_fuzzer.so ./libpng-harness -i corpus -o out -H ./libpng-harness
|
||||
LD_PRELOAD=$CARGO_TARGET_DIR/${PROFILE_DIR}/libfrida_executable_fuzzer.so ./libpng-harness -i corpus -o out -H ./libpng-harness
|
||||
'''
|
||||
dependencies = [ "fuzzer", "harness" ]
|
||||
|
||||
@ -87,7 +88,7 @@ windows_alias = "unsupported"
|
||||
script_runner = "@shell"
|
||||
script='''
|
||||
rm -rf libafl_unix_shmem_server || true
|
||||
LD_PRELOAD=$CARGO_TARGET_DIR/${PROFILE}/libfrida_executable_fuzzer.so ./libpng-harness -i corpus -o out -H ./libpng-harness > fuzz_stdout.log &
|
||||
LD_PRELOAD=$CARGO_TARGET_DIR/${PROFILE_DIR}/libfrida_executable_fuzzer.so ./libpng-harness -i corpus -o out -H ./libpng-harness > fuzz_stdout.log &
|
||||
sleep 10s && pkill libpng-harness
|
||||
if [ -z "$(grep "corpus: 30" fuzz_stdout.log)" ]; then
|
||||
echo "Fuzzer does not generate any testcases or any crashes"
|
||||
|
@ -3,6 +3,7 @@
|
||||
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"} }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -32,8 +33,8 @@ windows_alias = "fuzzer_windows"
|
||||
[tasks.fuzzer_windows]
|
||||
script_runner="@shell"
|
||||
script='''
|
||||
cargo build --${PROFILE}
|
||||
cp ./target/${PROFILE}/${FUZZER_NAME} .
|
||||
cargo build --profile ${PROFILE}
|
||||
cp ./target/${PROFILE_DIR}/${FUZZER_NAME} .
|
||||
'''
|
||||
|
||||
# Run the fuzzer
|
||||
|
@ -3,6 +3,7 @@
|
||||
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"} }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -68,15 +69,15 @@ windows_alias = "fuzzer_windows"
|
||||
[tasks.fuzzer_unix]
|
||||
script_runner="@shell"
|
||||
script='''
|
||||
cargo build --${PROFILE}
|
||||
cp ${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME} .
|
||||
cargo build --profile ${PROFILE}
|
||||
cp ${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME} .
|
||||
'''
|
||||
|
||||
[tasks.fuzzer_windows]
|
||||
script_runner="@shell"
|
||||
script='''
|
||||
cargo build --${PROFILE}
|
||||
cp ./target/${PROFILE}/${FUZZER_NAME} .
|
||||
cargo build --profile ${PROFILE}
|
||||
cp ./target/${PROFILE_DIR}/${FUZZER_NAME} .
|
||||
'''
|
||||
|
||||
# Run the fuzzer
|
||||
|
@ -3,6 +3,7 @@ PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
FUZZER_NAME="fuzzer"
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -18,7 +19,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build", "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -27,7 +28,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build", "--profile", "${PROFILE}"]
|
||||
|
||||
# fuzz.o File
|
||||
[tasks.fuzz_o]
|
||||
@ -36,7 +37,7 @@ mac_alias = "fuzz_o_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzz_o_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc"
|
||||
args = ["--libafl-no-link", "-O3", "-c", "fuzz.c", "-o", "fuzz.o"]
|
||||
dependencies = ["cc", "cxx"]
|
||||
|
||||
@ -47,7 +48,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
args = ["--libafl", "fuzz.o", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
|
||||
dependencies = ["cc", "cxx", "fuzz_o"]
|
||||
|
||||
|
@ -3,6 +3,7 @@
|
||||
FUZZER_NAME='libpng_harness'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -32,7 +33,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "cargo"
|
||||
args = ["build", "--${PROFILE}"]
|
||||
args = ["build", "--profile", "${PROFILE}"]
|
||||
|
||||
# Harness
|
||||
[tasks.harness]
|
||||
@ -66,7 +67,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.run_unix]
|
||||
command = "cargo"
|
||||
args = ["run", "--${PROFILE}", "./${FUZZER_NAME}", "--", "--libafl-in", "../libfuzzer_libpng/corpus", "--libafl-out", "./out", "./${FUZZER_NAME}"]
|
||||
args = ["run", "--profile", "${PROFILE_DIR}", "./${FUZZER_NAME}", "--", "--libafl-in", "../libfuzzer_libpng/corpus", "--libafl-out", "./out", "./${FUZZER_NAME}"]
|
||||
dependencies = [ "harness", "fuzzer" ]
|
||||
|
||||
# Run the fuzzer
|
||||
|
@ -3,6 +3,7 @@
|
||||
FUZZER_NAME='libpng_harness'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -32,7 +33,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "cargo"
|
||||
args = ["build", "--${PROFILE}"]
|
||||
args = ["build", "--profile", "${PROFILE}"]
|
||||
|
||||
# Harness
|
||||
[tasks.harness]
|
||||
@ -66,7 +67,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.run_unix]
|
||||
command = "cargo"
|
||||
args = ["run", "--${PROFILE}", "./${FUZZER_NAME}", "--", "--libafl-in", "../libfuzzer_libpng/corpus", "--libafl-out", "./out", "./${FUZZER_NAME}"]
|
||||
args = ["run", "--profile", "${PROFILE}", "./${FUZZER_NAME}", "--", "--libafl-in", "../libfuzzer_libpng/corpus", "--libafl-out", "./out", "./${FUZZER_NAME}"]
|
||||
dependencies = [ "harness", "fuzzer" ]
|
||||
|
||||
# Run the fuzzer
|
||||
|
@ -3,6 +3,7 @@ PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
FUZZER_NAME="fuzzer"
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -18,7 +19,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -27,7 +28,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
# fuzz.o File
|
||||
[tasks.fuzz_o]
|
||||
@ -36,7 +37,7 @@ mac_alias = "fuzz_o_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzz_o_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc"
|
||||
args = ["--libafl-no-link", "-O3", "-c", "fuzz.c", "-o", "fuzz.o"]
|
||||
dependencies = ["cc", "cxx"]
|
||||
|
||||
@ -47,7 +48,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
args = ["--libafl", "fuzz.o", "-o", "${FUZZER_NAME}", "-lm", "-lz"]
|
||||
dependencies = ["cc", "cxx", "fuzz_o"]
|
||||
|
||||
|
@ -3,9 +3,10 @@
|
||||
FUZZER_NAME='fuzzer_mozjpeg'
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
|
||||
[tasks.unsupported]
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -69,7 +70,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
|
@ -4,9 +4,10 @@ FUZZER_NAME='fuzzer_libpng'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.crash_cxx]
|
||||
linux_alias = "crash_cxx_unix"
|
||||
@ -54,7 +55,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
[tasks.crash_cc]
|
||||
linux_alias = "crash_cc_unix"
|
||||
@ -63,7 +64,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -76,7 +77,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -91,7 +92,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "crash_cxx", "crash_cc" ]
|
||||
|
||||
@ -102,7 +103,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
@ -113,7 +114,7 @@ mac_alias = "fuzzer_crash_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_crash_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ]
|
||||
|
||||
|
@ -2,10 +2,11 @@
|
||||
[env]
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
FUZZER_NAME='fuzzer_libpng_accounting'
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
|
||||
[tasks.unsupported]
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -58,7 +59,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -70,7 +71,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
|
@ -4,9 +4,10 @@ FUZZER_NAME='fuzzer_libpng'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target"}
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.crash_cxx]
|
||||
linux_alias = "crash_cxx_unix"
|
||||
@ -54,7 +55,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
[tasks.crash_cc]
|
||||
linux_alias = "crash_cc_unix"
|
||||
@ -63,7 +64,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -76,7 +77,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -91,7 +92,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "crash_cxx", "crash_cc" ]
|
||||
|
||||
@ -102,7 +103,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
@ -113,7 +114,7 @@ mac_alias = "fuzzer_crash_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_crash_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ]
|
||||
|
||||
|
@ -3,9 +3,10 @@
|
||||
FUZZER_NAME='fuzzer_libpng_launcher'
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
|
||||
[tasks.unsupported]
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -58,7 +59,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -70,7 +71,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
|
@ -4,9 +4,10 @@ FUZZER_NAME='fuzzer_libpng'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.crash_cxx]
|
||||
linux_alias = "crash_cxx_unix"
|
||||
@ -54,7 +55,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
[tasks.crash_cc]
|
||||
linux_alias = "crash_cc_unix"
|
||||
@ -63,7 +64,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -76,7 +77,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -91,7 +92,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "crash_cxx", "crash_cc" ]
|
||||
|
||||
@ -102,7 +103,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
@ -113,7 +114,7 @@ mac_alias = "fuzzer_crash_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_crash_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ]
|
||||
|
||||
|
@ -4,9 +4,10 @@ FUZZER_NAME='fuzzer_libpng_ctx'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -58,7 +59,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -70,7 +71,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
|
@ -3,10 +3,11 @@
|
||||
FUZZER_NAME='fuzzer_libpng_launcher'
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
LIBAFL_LIBTOOL = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_libtool'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
|
||||
[tasks.unsupported]
|
||||
@ -37,7 +38,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -46,7 +47,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -59,7 +60,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
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
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx" LIBTOOL=${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_libtool
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -71,7 +72,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
|
@ -3,9 +3,10 @@
|
||||
FUZZER_NAME='fuzzer_libpng_launcher'
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
|
||||
[tasks.unsupported]
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -58,7 +59,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -70,7 +71,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
|
@ -4,9 +4,10 @@ FUZZER_NAME='fuzzer_libpng'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.crash_cxx]
|
||||
linux_alias = "crash_cxx_unix"
|
||||
@ -54,7 +55,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
[tasks.crash_cc]
|
||||
linux_alias = "crash_cc_unix"
|
||||
@ -63,7 +64,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.crash_cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}", "--features=crash"]
|
||||
args = ["build" , "--profile", "${PROFILE}", "--features=crash"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -76,7 +77,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -91,7 +92,7 @@ script_runner="@shell"
|
||||
script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "crash_cxx", "crash_cc" ]
|
||||
|
||||
@ -102,7 +103,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
@ -113,7 +114,7 @@ mac_alias = "fuzzer_crash_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_crash_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "crash_lib", "crash_cxx", "crash_cc" ]
|
||||
|
||||
|
@ -3,28 +3,29 @@
|
||||
FUZZER_NAME='libfuzzer_stb_image'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc', mapping = {"windows" = '.\\target\\${PROFILE}\\libafl_cc.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'} }
|
||||
PROFILE = { value = "release" }
|
||||
PROFILE_DIR = {value = "release" }
|
||||
LIBAFL_CC = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc', mapping = {"windows" = '.\\target\\${PROFILE_DIR}\\libafl_cc.exe'} }
|
||||
LIBAFL_CXX = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx', mapping = {"windows" = '.\\target\\${PROFILE_DIR}\\libafl_cxx.exe'} }
|
||||
FUZZER = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libfuzzer_stb_image', mapping = {"windows" = '.\\target\\${PROFILE_DIR}\\libfuzzer_stb_image.exe'} }
|
||||
|
||||
# Compilers
|
||||
[tasks.cxx]
|
||||
condition = { files_not_exist = ["${LIBAFL_CXX}"] }
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
condition = { files_not_exist = ["${LIBAFL_CC}"] }
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
|
||||
# Build the fuzzer
|
||||
[tasks.fuzzer]
|
||||
script_runner="@shell"
|
||||
script='''
|
||||
cargo build --${PROFILE}
|
||||
cargo build --profile ${PROFILE}
|
||||
cp ${FUZZER} .
|
||||
'''
|
||||
dependencies = ["cc", "cxx"]
|
||||
@ -100,4 +101,4 @@ script_runner="@shell"
|
||||
script='''
|
||||
rm -f ./${FUZZER_NAME}
|
||||
cargo clean
|
||||
'''
|
||||
'''
|
||||
|
@ -2,7 +2,8 @@
|
||||
[env]
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE = { value = "release" }
|
||||
PROFILE_DIR = {value = "release" }
|
||||
FUZZER_NAME='libfuzzer_stb_image_concolic'
|
||||
|
||||
# Compilers
|
||||
@ -16,7 +17,7 @@ condition = { files_not_exist = ["${CARGO_TARGET_DIR}/libSymRuntime.so"] }
|
||||
script_runner = "@shell"
|
||||
script = '''
|
||||
cd runtime
|
||||
cargo build --${PROFILE}
|
||||
cargo build --profile ${PROFILE}
|
||||
'''
|
||||
|
||||
# Build the fuzzer
|
||||
@ -30,7 +31,7 @@ dependencies = ["runtime"]
|
||||
script_runner = "@shell"
|
||||
script = '''
|
||||
cd fuzzer
|
||||
cargo build --${PROFILE}
|
||||
cargo build --profile ${PROFILE}
|
||||
'''
|
||||
|
||||
[tasks.test]
|
||||
|
@ -3,28 +3,29 @@
|
||||
FUZZER_NAME='libfuzzer_stb_image_sugar'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc", mapping = {"windows" = '.\\target\\${PROFILE}\\libafl_cc.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'} }
|
||||
PROFILE = { value = "release" }
|
||||
PROFILE_DIR = {value = "release" }
|
||||
LIBAFL_CC = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc", mapping = {"windows" = '.\\target\\${PROFILE_DIR}\\libafl_cc.exe'} }
|
||||
LIBAFL_CXX = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx", mapping = {"windows" = '.\\target\\${PROFILE_DIR}\\libafl_cxx.exe'} }
|
||||
FUZZER = { source = "${CARGO_MAKE_RUST_TARGET_OS}", default_value = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libfuzzer_stb_image_sugar", mapping = {"windows" = '.\\target\\${PROFILE_DIR}\\libfuzzer_stb_image_sugar.exe'} }
|
||||
|
||||
# Compilers
|
||||
[tasks.cxx]
|
||||
condition = { files_not_exist = ["${LIBAFL_CXX}"] }
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
condition = { files_not_exist = ["${LIBAFL_CC}"] }
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
|
||||
# Build the fuzzer
|
||||
[tasks.fuzzer]
|
||||
script_runner="@shell"
|
||||
script='''
|
||||
cargo build --${PROFILE}
|
||||
cargo build --profile ${PROFILE}
|
||||
cp ${FUZZER} .
|
||||
'''
|
||||
dependencies = ["cc", "cxx"]
|
||||
|
@ -3,6 +3,7 @@
|
||||
FUZZER_NAME='libfuzzer_windows_asan'
|
||||
CARGO_TARGET_DIR = { value = "./target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -18,7 +19,7 @@ windows_alias = "cxx_unix"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -27,7 +28,7 @@ windows_alias = "cc_unix"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.crash_cxx]
|
||||
linux_alias = "unsupported"
|
||||
@ -55,7 +56,7 @@ mac_alias = "unsupported"
|
||||
windows_alias = "fuzzer_windows"
|
||||
|
||||
[tasks.fuzzer_windows]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
args = ["./harness.cpp", "-o", "${FUZZER_NAME}.exe"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
|
@ -3,9 +3,10 @@
|
||||
FUZZER_NAME='fuzzer_libpng_nautilus'
|
||||
CARGO_TARGET_DIR = { value = "${PROJECT_DIR}/target", condition = { env_not_set = ["CARGO_TARGET_DIR"] } }
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc'
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
LIBAFL_CC = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc'
|
||||
LIBAFL_CXX = '${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE}/${FUZZER_NAME}'
|
||||
FUZZER = '${CARGO_TARGET_DIR}/${PROFILE_DIR}/${FUZZER_NAME}'
|
||||
PROJECT_DIR = { script = ["pwd"] }
|
||||
|
||||
[tasks.unsupported]
|
||||
@ -36,7 +37,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cxx_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
[tasks.cc]
|
||||
linux_alias = "cc_unix"
|
||||
@ -45,7 +46,7 @@ windows_alias = "unsupported"
|
||||
|
||||
[tasks.cc_unix]
|
||||
command = "cargo"
|
||||
args = ["build" , "--${PROFILE}"]
|
||||
args = ["build" , "--profile", "${PROFILE}"]
|
||||
|
||||
# Library
|
||||
[tasks.lib]
|
||||
@ -59,7 +60,7 @@ script='''
|
||||
cd libpng-1.6.37 && ./configure --enable-shared=no --with-pic=yes --enable-hardware-optimizations=yes
|
||||
cd "${PROJECT_DIR}"
|
||||
cp ../baby_fuzzer_nautilus/grammar.json .
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
make -C libpng-1.6.37 CC="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cc" CXX="${CARGO_TARGET_DIR}/${PROFILE_DIR}/libafl_cxx"
|
||||
'''
|
||||
dependencies = [ "libpng", "cxx", "cc" ]
|
||||
|
||||
@ -71,7 +72,7 @@ mac_alias = "fuzzer_unix"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.fuzzer_unix]
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE}/libafl_cxx"
|
||||
command = "${CARGO_TARGET_DIR}/${PROFILE_DIR}/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"]
|
||||
dependencies = [ "lib", "cxx", "cc" ]
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
[package]
|
||||
name = "qemu-coverage"
|
||||
name = "qemu_coverage"
|
||||
version = "0.11.1"
|
||||
authors = ["Andrea Fioraldi <andreafioraldi@gmail.com>", "Dominik Maier <domenukk@gmail.com>", "WorksButNotTested"]
|
||||
edition = "2021"
|
||||
|
@ -1,5 +1,6 @@
|
||||
[env]
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
CROSS_CC = "x86_64-linux-gnu-gcc"
|
||||
CROSS_CXX = "x86_64-linux-gnu-g++"
|
||||
CROSS_CFLAGS = ""
|
||||
@ -183,7 +184,8 @@ windows_alias = "unsupported"
|
||||
command = "cargo"
|
||||
args = [
|
||||
"build",
|
||||
"--${PROFILE}",
|
||||
"--profile",
|
||||
"${PROFILE}",
|
||||
"--features", "${FEATURE}",
|
||||
"--target-dir", "${TARGET_DIR}"
|
||||
]
|
||||
@ -192,7 +194,7 @@ args = [
|
||||
dependencies = ["build"]
|
||||
script_runner="@shell"
|
||||
script='''
|
||||
mv ${TARGET_DIR}/${PROFILE}/qemu-coverage ${TARGET_DIR}/${PROFILE}/qemu-coverage-${CARGO_MAKE_PROFILE}
|
||||
mv ${TARGET_DIR}/${PROFILE_DIR}/qemu_coverage ${TARGET_DIR}/${PROFILE_DIR}/qemu_coverage-${CARGO_MAKE_PROFILE}
|
||||
'''
|
||||
|
||||
[tasks.harness]
|
||||
@ -223,7 +225,7 @@ mac_alias = "unsupported"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.run_unix]
|
||||
command = "${TARGET_DIR}/${PROFILE}/qemu-coverage-${CARGO_MAKE_PROFILE}"
|
||||
command = "${TARGET_DIR}/${PROFILE_DIR}/qemu_coverage-${CARGO_MAKE_PROFILE}"
|
||||
args = [
|
||||
"--coverage", "${TARGET_DIR}/drcov.log",
|
||||
"--input", "./corpus",
|
||||
|
@ -1,4 +1,4 @@
|
||||
# qemu-coverage
|
||||
# qemu_coverage
|
||||
|
||||
This folder contains an example fuzzer which runs each entry in the input corpus and collects
|
||||
the cumuative coverage data in drcov format. This fuzzer also distributes the test cases in
|
||||
|
@ -61,7 +61,7 @@ impl From<Version> for Str {
|
||||
#[derive(Parser, Debug)]
|
||||
#[clap(author, version, about, long_about = None)]
|
||||
#[command(
|
||||
name = format!("qemu-coverage-{}",env!("CPU_TARGET")),
|
||||
name = format!("qemu_coverage-{}",env!("CPU_TARGET")),
|
||||
version = Version::default(),
|
||||
about,
|
||||
long_about = "Tool for generating DrCov coverage data using QEMU instrumentation"
|
||||
|
@ -1,5 +1,6 @@
|
||||
[env]
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
CROSS_CC = "x86_64-linux-gnu-gcc"
|
||||
CROSS_CXX = "x86_64-linux-gnu-g++"
|
||||
CROSS_CFLAGS = ""
|
||||
@ -183,7 +184,8 @@ windows_alias = "unsupported"
|
||||
command = "cargo"
|
||||
args = [
|
||||
"build",
|
||||
"--${PROFILE}",
|
||||
"--profile",
|
||||
"${PROFILE}",
|
||||
"--features", "${FEATURE}",
|
||||
"--target-dir", "${TARGET_DIR}"
|
||||
]
|
||||
@ -192,7 +194,7 @@ args = [
|
||||
dependencies = ["build"]
|
||||
script_runner="@shell"
|
||||
script='''
|
||||
mv ${TARGET_DIR}/${PROFILE}/qemu_launcher ${TARGET_DIR}/${PROFILE}/qemu_launcher-${CARGO_MAKE_PROFILE}
|
||||
mv ${TARGET_DIR}/${PROFILE_DIR}/qemu_launcher ${TARGET_DIR}/${PROFILE_DIR}/qemu_launcher-${CARGO_MAKE_PROFILE}
|
||||
'''
|
||||
|
||||
[tasks.harness]
|
||||
@ -223,7 +225,7 @@ mac_alias = "unsupported"
|
||||
windows_alias = "unsupported"
|
||||
|
||||
[tasks.run_unix]
|
||||
command = "${TARGET_DIR}/${PROFILE}/qemu_launcher-${CARGO_MAKE_PROFILE}"
|
||||
command = "${TARGET_DIR}/${PROFILE_DIR}/qemu_launcher-${CARGO_MAKE_PROFILE}"
|
||||
args = [
|
||||
"--coverage", "${TARGET_DIR}/drcov.log",
|
||||
"--input", "./corpus",
|
||||
|
@ -67,7 +67,7 @@ impl From<Version> for Str {
|
||||
#[derive(Parser, Debug)]
|
||||
#[clap(author, version, about, long_about = None)]
|
||||
#[command(
|
||||
name = format!("qemu-coverage-{}",env!("CPU_TARGET")),
|
||||
name = format!("qemu_coverage-{}",env!("CPU_TARGET")),
|
||||
version = Version::default(),
|
||||
about,
|
||||
long_about = "Tool for generating DrCov coverage data using QEMU instrumentation"
|
||||
|
@ -1,5 +1,6 @@
|
||||
[env]
|
||||
PROFILE = { value = "release", condition = {env_not_set = ["PROFILE"]} }
|
||||
PROFILE_DIR = {value = "release", condition = {env_not_set = ["PROFILE_DIR"] }}
|
||||
|
||||
[tasks.unsupported]
|
||||
script_runner="@shell"
|
||||
@ -27,7 +28,7 @@ windows_alias = "fuzzer_windows"
|
||||
[tasks.fuzzer_windows]
|
||||
dependencies = ["harness"]
|
||||
command = "cargo"
|
||||
args = ["build", "--${PROFILE}"]
|
||||
args = ["build", "--profile", "${PROFILE}"]
|
||||
|
||||
# Run the fuzzer
|
||||
[tasks.run]
|
||||
@ -38,7 +39,7 @@ windows_alias = "run_windows"
|
||||
[tasks.run_windows]
|
||||
dependencies = ["harness", "fuzzer"]
|
||||
command = "cargo"
|
||||
args = ["run", "--${PROFILE}"]
|
||||
args = ["run", "--profile", "${PROFILE}"]
|
||||
|
||||
|
||||
# Run the fuzzer
|
||||
@ -50,7 +51,7 @@ windows_alias = "test_windows"
|
||||
[tasks.test_windows]
|
||||
script_runner = "@shell"
|
||||
script='''
|
||||
copy .\target\${PROFILE}\tinyinst_simple.exe .
|
||||
copy .\target\${PROFILE_DIR}\tinyinst_simple.exe .
|
||||
start "" "tinyinst_simple.exe"
|
||||
#ping is for timeout
|
||||
ping -n 10 127.0.0.1>NUL && taskkill /im tinyinst_simple.exe /F
|
||||
|
@ -694,5 +694,4 @@ static RegisterStandardPasses RegisterAutoTokensPass(
|
||||
|
||||
static RegisterStandardPasses RegisterAutoTokensPass0(
|
||||
PassManagerBuilder::EP_EnabledOnOptLevel0, registerAutoTokensPass);
|
||||
#endif
|
||||
#endif
|
||||
|
@ -480,5 +480,4 @@ static RegisterStandardPasses RegisterCmpLogRoutinesPassLTO(
|
||||
PassManagerBuilder::EP_FullLinkTimeOptimizationLast,
|
||||
registerCmpLogRoutinesPass);
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
@ -12,6 +12,7 @@ else
|
||||
fuzzers=$(cargo run -p build_and_test_fuzzers -- "remotes/origin/main" "HEAD^")
|
||||
backtrace_fuzzers=""
|
||||
export PROFILE=dev
|
||||
export PROFILE_DIR=debug
|
||||
fi
|
||||
|
||||
libafl=$(pwd)
|
||||
|
Loading…
x
Reference in New Issue
Block a user