diff options
author | van Hauser <vh@thc.org> | 2020-03-10 06:44:24 +0100 |
---|---|---|
committer | van Hauser <vh@thc.org> | 2020-03-10 06:44:24 +0100 |
commit | f6787312346b66f52148f5daa8c5ffb08d92407f (patch) | |
tree | aa8b6122c6f18a72fa7eacb9cd23db678aa2ef59 /src | |
parent | e04d2a6efab8c6501870961a0b4be35afddc45ae (diff) | |
download | afl++-f6787312346b66f52148f5daa8c5ffb08d92407f.tar.gz |
afl-tmin is fixed via default initialization in forkserver
Diffstat (limited to 'src')
-rw-r--r-- | src/afl-forkserver.c | 25 |
1 files changed, 17 insertions, 8 deletions
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); } |