const char *traceprintstr= getenv("ADNS_TEST_FUZZRAW_TRACEPRINT");
if (traceprintstr) {
traceprint= atoi(traceprintstr);
- traceout= fdopen(2,"w"); if (!traceout) Tfailed("fdopen for traceout");
+ int tracefd= dup(2);
+ if (tracefd<0) Tfailed("dup for tracefd");
+ traceout= fdopen(tracefd,"w");
+ if (!traceout) Tfailed("fdopen for traceout");
}
}
r= newfd;
}
')
+ m4_define(`hm_rv_wlen',`
+ hm_rv_any
+ if (r>$'`1) Pformat("write return value too large");
+ ')
$2
hm_create_nothing