aboutsummaryrefslogtreecommitdiff
path: root/tests/qtest
diff options
context:
space:
mode:
authorAlexander Bulekov <alxndr@bu.edu>2020-05-29 18:14:50 -0400
committerThomas Huth <thuth@redhat.com>2020-06-15 18:26:46 +0200
commit8efebd4e0171a6f11f7ac085898d315fcac0e066 (patch)
tree79ab64053e8b6f6ff9ded643f79767a7e9de95f8 /tests/qtest
parentd92e1b6d5439e04d2b863113ce714709f40fb84e (diff)
fuzz: Add support for logging QTest commands
Signed-off-by: Alexander Bulekov <alxndr@bu.edu> Message-Id: <20200529221450.26673-3-alxndr@bu.edu> Reviewed-by: Darren Kenny <darren.kenny@oracle.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to 'tests/qtest')
-rw-r--r--tests/qtest/fuzz/fuzz.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/tests/qtest/fuzz/fuzz.c b/tests/qtest/fuzz/fuzz.c
index ea630ddb9b..a44fe479db 100644
--- a/tests/qtest/fuzz/fuzz.c
+++ b/tests/qtest/fuzz/fuzz.c
@@ -94,7 +94,9 @@ static void usage(char *path)
printf("Alternatively, add -target-FUZZ_TARGET to the executable name\n\n"
"Set the environment variable FUZZ_SERIALIZE_QTEST=1 to serialize\n"
"QTest commands into an ASCII protocol. Useful for building crash\n"
- "reproducers, but slows down execution.\n");
+ "reproducers, but slows down execution.\n\n"
+ "Set the environment variable QTEST_LOG=1 to log all qtest commands"
+ "\n");
exit(0);
}
@@ -197,6 +199,11 @@ int LLVMFuzzerInitialize(int *argc, char ***argv, char ***envp)
/* Run QEMU's softmmu main with the fuzz-target dependent arguments */
const char *init_cmdline = fuzz_target->get_init_cmdline(fuzz_target);
+ init_cmdline = g_strdup_printf("%s -qtest /dev/null -qtest-log %s",
+ init_cmdline,
+ getenv("QTEST_LOG") ? "/dev/fd/2"
+ : "/dev/null");
+
/* Split the runcmd into an argv and argc */
wordexp_t result;