diff --git a/tests/jq_fuzz_parse_extended.c b/tests/jq_fuzz_parse_extended.c index af6ceccc8d..7f212fcee0 100644 --- a/tests/jq_fuzz_parse_extended.c +++ b/tests/jq_fuzz_parse_extended.c @@ -5,13 +5,16 @@ #include "jv.h" int LLVMFuzzerTestOneInput(uint8_t *data, size_t size) { - if (size < 4) { + if (size < 8) { return 0; } int fuzz_flags = *(int*)data; data += 4; size -= 4; + int dump_flags = *(int*)data; + data += 4; + size -= 4; // Creat null-terminated string char *null_terminated = (char *)malloc(size + 1); @@ -20,6 +23,9 @@ int LLVMFuzzerTestOneInput(uint8_t *data, size_t size) { // Fuzzer entrypoint jv res = jv_parse_custom_flags(null_terminated, fuzz_flags); + if (jv_is_valid(res)) { + jv_dump(res, dump_flags); + } jv_free(res); // Free the null-terminated string