aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Meumertzheim <meumertzheim@code-intelligence.com>2021-04-13 07:50:00 +0200
committerFabian Meumertzheim <fabian@meumertzhe.im>2021-04-13 08:18:51 +0200
commite0e4a9876496a432daab2fd9e7c5b3bc48ca8bbb (patch)
tree65c216da4f882748e5181864f4a87679063b4680
parent10a743b631cea4566e6f7b39d23611f85526e721 (diff)
downloadjazzer-api-e0e4a9876496a432daab2fd9e7c5b3bc48ca8bbb.tar.gz
Fix dump of crashing input on sanitizer report
Also makes the tests look for a crash dump.
-rwxr-xr-xbazel/fuzz_target_test_wrapper.sh6
-rw-r--r--driver/libfuzzer_driver.cpp2
2 files changed, 6 insertions, 2 deletions
diff --git a/bazel/fuzz_target_test_wrapper.sh b/bazel/fuzz_target_test_wrapper.sh
index 061ed3ae..f79809e2 100755
--- a/bazel/fuzz_target_test_wrapper.sh
+++ b/bazel/fuzz_target_test_wrapper.sh
@@ -22,7 +22,11 @@ eval "$1" -artifact_prefix="$DEFAULT_CRASH_PREFIX/" --reproducer_path="$DEFAULT_
declare -i exit_code=$?
if [ $exit_code -eq 77 ] || [ $exit_code -eq 76 ]
then
- exit 0
+ if [ "$(ls "$DEFAULT_CRASH_PREFIX/")" ]; then
+ exit 0
+ else
+ exit 1
+ fi
else
echo "Unexpected exit code: $exit_code"
exit 1
diff --git a/driver/libfuzzer_driver.cpp b/driver/libfuzzer_driver.cpp
index b6b5085e..d69ca3d4 100644
--- a/driver/libfuzzer_driver.cpp
+++ b/driver/libfuzzer_driver.cpp
@@ -56,7 +56,7 @@ extern "C" [[maybe_unused]] void __jazzer_set_death_callback(
void (*callback)()) {
jazzer::AbstractLibfuzzerDriver::libfuzzer_print_crashing_input_ = callback;
void *sanitizer_set_death_callback =
- dlsym(RTLD_NEXT, "__sanitizer_set_death_callback");
+ dlsym(RTLD_DEFAULT, "__sanitizer_set_death_callback");
if (sanitizer_set_death_callback != nullptr)
reinterpret_cast<void (*)(void (*)())>(sanitizer_set_death_callback)(
callback);