#define FDF_OPEN 001u
#define FDF_NONBLOCK 002u
-static FILE *Tinputfile;
+static FILE *Tinputfile, *traceout;
static int traceprint;
-#define traceout stdout
static void Tflushtrace( void) {
if (fflush(traceout)) Toutputerr();
}
const char *traceprintstr= getenv("ADNS_TEST_FUZZRAW_TRACEPRINT");
- if (traceprintstr) traceprint= atoi(traceprintstr);
+ if (traceprintstr) {
+ traceprint= atoi(traceprintstr);
+ traceout= fdopen(2,"w"); if (!traceout) Tfailed("fdopen for traceout");
+ }
}
void Q_vb(void) {
+ if (!traceprint) return; /* hcommon.c.m4 can call Q_vb directly */
if (!adns__vbuf_append(&vb,"",1)) Tnomem();
if (fprintf(traceout," %s\n",vb.buf) == EOF) Toutputerr();
Tflushtrace();
#ifdef FUZZRAW_SYNC
hm_fr_syscall_ident($'`1)
static char sync_got[sizeof(sync_expect)];
- Psync(sync_expect, sync_got, sizeof(sync_got), "sync lost: exp=$1");
+ Psync(sync_expect, sync_got, sizeof(sync_got), "sync lost: program did $1");
#endif
')