summaryrefslogtreecommitdiffhomepage
path: root/fuzz-harness.c
diff options
context:
space:
mode:
Diffstat (limited to 'fuzz-harness.c')
-rw-r--r--fuzz-harness.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/fuzz-harness.c b/fuzz-harness.c
index 00a2ba6..be23d4e 100644
--- a/fuzz-harness.c
+++ b/fuzz-harness.c
@@ -9,6 +9,7 @@ int main(int argc, char ** argv) {
buffer *input = buf_new(100000);
for (i = 1; i < argc; i++) {
+ printf("arg %s\n", argv[i]);
#if DEBUG_TRACE
if (strcmp(argv[i], "-v") == 0) {
debug_trace = 1;
@@ -17,6 +18,7 @@ int main(int argc, char ** argv) {
#endif
}
+ int old_fuzz_wrapfds = 0;
for (i = 1; i < argc; i++) {
if (argv[i][0] == '-') {
/* ignore arguments */
@@ -28,11 +30,16 @@ int main(int argc, char ** argv) {
buf_readfile(input, fn);
buf_setpos(input, 0);
+ fuzz.wrapfds = old_fuzz_wrapfds;
printf("Running %s once \n", fn);
LLVMFuzzerTestOneInput(input->data, input->len);
printf("Running %s twice \n", fn);
LLVMFuzzerTestOneInput(input->data, input->len);
printf("Done %s\n", fn);
+
+ /* Disable wrapfd so it won't interfere with buf_readfile() above */
+ old_fuzz_wrapfds = fuzz.wrapfds;
+ fuzz.wrapfds = 0;
}
printf("Finished\n");