From 6163da513578c2526c3b1de16a3deb8c913e2c34 Mon Sep 17 00:00:00 2001 From: yang-g <yangg@google.com> Date: Thu, 13 Apr 2017 09:39:42 -0700 Subject: [PATCH] Disallow empty method slice in api_fuzzer --- test/core/end2end/fuzzers/api_fuzzer.c | 3 +++ .../clusterfuzz-testcase-5867145026076672 | Bin 0 -> 46 bytes tools/run_tests/generated/tests.json | 23 ++++++++++++++++++ 3 files changed, 26 insertions(+) create mode 100644 test/core/end2end/fuzzers/api_fuzzer_corpus/clusterfuzz-testcase-5867145026076672 diff --git a/test/core/end2end/fuzzers/api_fuzzer.c b/test/core/end2end/fuzzers/api_fuzzer.c index a0acf5bf60..cd983a70a6 100644 --- a/test/core/end2end/fuzzers/api_fuzzer.c +++ b/test/core/end2end/fuzzers/api_fuzzer.c @@ -932,6 +932,9 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { } uint32_t propagation_mask = read_uint32(&inp); grpc_slice method = read_string_like_slice(&inp); + if (GRPC_SLICE_LENGTH(method) == 0) { + ok = false; + } grpc_slice host = read_string_like_slice(&inp); gpr_timespec deadline = gpr_time_add(gpr_now(GPR_CLOCK_REALTIME), diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/clusterfuzz-testcase-5867145026076672 b/test/core/end2end/fuzzers/api_fuzzer_corpus/clusterfuzz-testcase-5867145026076672 new file mode 100644 index 0000000000000000000000000000000000000000..3fd5427b46662d86534978f322d512466c8765af GIT binary patch literal 46 wcmZQ7PAw`+En;9`Vc<$+Wc<HBl$(c{0SuTJc$gTOfJ_I*U!4pLjMv2(0MTa${r~^~ literal 0 HcmV?d00001 diff --git a/tools/run_tests/generated/tests.json b/tools/run_tests/generated/tests.json index 12d48f219d..7b1140e494 100644 --- a/tools/run_tests/generated/tests.json +++ b/tools/run_tests/generated/tests.json @@ -85053,6 +85053,29 @@ ], "uses_polling": false }, + { + "args": [ + "test/core/end2end/fuzzers/api_fuzzer_corpus/clusterfuzz-testcase-5867145026076672" + ], + "ci_platforms": [ + "linux" + ], + "cpu_cost": 0.1, + "exclude_configs": [ + "tsan" + ], + "exclude_iomgrs": [ + "uv" + ], + "flaky": false, + "language": "c", + "name": "api_fuzzer_one_entry", + "platforms": [ + "mac", + "linux" + ], + "uses_polling": false + }, { "args": [ "test/core/end2end/fuzzers/api_fuzzer_corpus/clusterfuzz-testcase-5965570207907840" -- GitLab