summaryrefslogtreecommitdiffhomepage
path: root/fuzz.h
diff options
context:
space:
mode:
authorMatt Johnston <matt@ucc.asn.au>2020-10-26 23:44:43 +0800
committerMatt Johnston <matt@ucc.asn.au>2020-10-26 23:44:43 +0800
commit1b603069db4b48ac05609efcf4a4672f69a3905d (patch)
treed5f6f748b040794e826b0bf8e594f13310d133da /fuzz.h
parentbf4058d1df8ba63fbdacd904aafe08c686f035f5 (diff)
Fix fuzzing stderr override on os x
Diffstat (limited to 'fuzz.h')
-rw-r--r--fuzz.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/fuzz.h b/fuzz.h
index f25a835..ae781df 100644
--- a/fuzz.h
+++ b/fuzz.h
@@ -74,18 +74,24 @@ struct dropbear_fuzz_options {
int recv_dumpfd;
// avoid filling fuzzing logs, this points to /dev/null
- FILE *stderr;
+ FILE *fake_stderr;
};
extern struct dropbear_fuzz_options fuzz;
+/* guard for when fuzz.h is included by fuzz-common.c */
+#ifndef FUZZ_NO_REPLACE_STDERR
+
/* This is a bodge but seems to work.
glibc stdio.h has the comment
"C89/C99 say they're macros. Make them happy." */
+/* OS X has it as a macro */
#ifdef stderr
#undef stderr
#endif
-#define stderr (fuzz.stderr)
+#define stderr (fuzz.fake_stderr)
+
+#endif /* FUZZ_NO_REPLACE_STDERR */
#endif // DROPBEAR_FUZZ