Commit bc260d96 authored by Clemens Hammacher's avatar Clemens Hammacher Committed by Commit Bot

[fuzzer] Add *san options for v8 fuzzers

This makes use of the new fuzzer-specific asan_options, msan_options
and ubsan_options. Wasm fuzzers need to be able to install custom
segfault handlers, and v8-generated code sometimes uses SIGTRAP in
internal code assertions.

We might need to allow segfault handlers for more fuzzers (if it's not
the default anyway), but this CL is conservative here and only adds it
to selected fuzzers. We can still add more later.

R=ahaas@chromium.org, mmoroz@chromium.org

Bug: chromium:863799
Change-Id: I3fa24b60851501b9c194f7b0cf131cb19325972e
Reviewed-on: https://chromium-review.googlesource.com/c/1335572
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: default avatarMax Moroz <mmoroz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#608773}
parent 43847232
......@@ -196,6 +196,12 @@ fuzzer_test("v8_multi_return_fuzzer") {
deps = [
"//v8:multi_return_fuzzer",
]
asan_options = [
"allow_user_segv_handler=1",
"handle_sigtrap=1",
]
msan_options = [ "handle_sigtrap=1" ]
ubsan_options = [ "handle_sigtrap=1" ]
environment_variables = [ "AFL_DRIVER_DONT_DEFER=1" ]
}
......@@ -205,6 +211,12 @@ fuzzer_test("v8_wasm_code_fuzzer") {
"//v8:wasm_code_fuzzer",
]
libfuzzer_options = [ "max_len=500" ]
asan_options = [
"allow_user_segv_handler=1",
"handle_sigtrap=1",
]
msan_options = [ "handle_sigtrap=1" ]
ubsan_options = [ "handle_sigtrap=1" ]
environment_variables = [ "AFL_DRIVER_DONT_DEFER=1" ]
}
......@@ -214,6 +226,12 @@ fuzzer_test("v8_wasm_compile_fuzzer") {
"//v8:wasm_compile_fuzzer",
]
libfuzzer_options = [ "max_len=500" ]
asan_options = [
"allow_user_segv_handler=1",
"handle_sigtrap=1",
]
msan_options = [ "handle_sigtrap=1" ]
ubsan_options = [ "handle_sigtrap=1" ]
environment_variables = [ "AFL_DRIVER_DONT_DEFER=1" ]
}
......@@ -225,6 +243,12 @@ fuzzer_test("v8_wasm_fuzzer") {
dict = "dicts/v8_wasm.dict"
seed_corpus = "//v8/test/fuzzer/wasm_corpus/"
libfuzzer_options = [ "max_len=500" ]
asan_options = [
"allow_user_segv_handler=1",
"handle_sigtrap=1",
]
msan_options = [ "handle_sigtrap=1" ]
ubsan_options = [ "handle_sigtrap=1" ]
environment_variables = [ "AFL_DRIVER_DONT_DEFER=1" ]
}
......@@ -236,6 +260,12 @@ fuzzer_test("v8_wasm_async_fuzzer") {
dict = "dicts/v8_wasm.dict"
seed_corpus = "//v8/test/fuzzer/wasm_corpus/"
libfuzzer_options = [ "max_len=500" ]
asan_options = [
"allow_user_segv_handler=1",
"handle_sigtrap=1",
]
msan_options = [ "handle_sigtrap=1" ]
ubsan_options = [ "handle_sigtrap=1" ]
environment_variables = [ "AFL_DRIVER_DONT_DEFER=1" ]
}
......@@ -400,6 +430,12 @@ fuzzer_test("v8_fully_instrumented_fuzzer") {
"//v8:v8_libplatform",
]
dict = "dicts/generated/javascript.dict"
asan_options = [
"allow_user_segv_handler=1",
"handle_sigtrap=1",
]
msan_options = [ "handle_sigtrap=1" ]
ubsan_options = [ "handle_sigtrap=1" ]
libfuzzer_options = [ "only_ascii=1" ]
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment