From f6787312346b66f52148f5daa8c5ffb08d92407f Mon Sep 17 00:00:00 2001 From: van Hauser Date: Tue, 10 Mar 2020 06:44:24 +0100 Subject: afl-tmin is fixed via default initialization in forkserver --- src/afl-forkserver.c | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/afl-forkserver.c b/src/afl-forkserver.c index 60c84cde..087f89ac 100644 --- a/src/afl-forkserver.c +++ b/src/afl-forkserver.c @@ -135,15 +135,24 @@ void handle_timeout(int sig) { void afl_fsrv_init(afl_forkserver_t *fsrv) { - uint32_t i, j = 0; - - // this is the default and is != 0 so we need to set it if fsrv is still - // uninitialized - for (i = 0; i < sizeof(afl_forkserver_t) && j == 0; i++) - if (((char*)fsrv)[i] != 0) - j = 1; - if (j == 0) + // this structure needs default so we initialize it if this was not done already + + if (!fsrv->use_stdin) { + fsrv->use_stdin = 1; + fsrv->out_fd = -1; + fsrv->out_dir_fd = -1; + fsrv->dev_null_fd = -1; +#ifndef HAVE_ARC4RANDOM + fsrv->dev_urandom_fd = -1; +#endif + fsrv->exec_tmout = EXEC_TIMEOUT; + fsrv->mem_limit = MEM_LIMIT; + fsrv->child_pid = -1; + fsrv->out_dir_fd = -1; + + } + list_append(&fsrv_list, fsrv); } -- cgit 1.4.1