diff options
| author | van Hauser <vh@thc.org> | 2020-04-11 07:32:42 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-11 07:32:42 +0200 |
| commit | 68f269437d0f502a5a091a6ed62cf8d71d0148d6 (patch) | |
| tree | ae9c05498f11ceba352656a18941498bdd46fcce /src/afl-forkserver.c | |
| parent | 29ee3a1ffca2aa5a3939beb84d7c6a81621f3355 (diff) | |
| download | afl++-68f269437d0f502a5a091a6ed62cf8d71d0148d6.tar.gz | |
Autodictionary (#309)
* lto module clean-up * step 1/3 * step 1/3 completed * if tmp is ever made non-static * parts 2 and 3 - autodictionary is complete * variable map_size support * variable map size: changed overlooked functions * remove debug for autodict * 64 bit alignment of map size * fix review comments * force 64 bit alignment on both sides * typo * better map transfer, display snapshot in UI * update readme
Diffstat (limited to 'src/afl-forkserver.c')
| -rw-r--r-- | src/afl-forkserver.c | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/src/afl-forkserver.c b/src/afl-forkserver.c index 7ab8a4b5..3c0ad4a2 100644 --- a/src/afl-forkserver.c +++ b/src/afl-forkserver.c @@ -367,23 +367,28 @@ void afl_fsrv_start(afl_forkserver_t *fsrv, char **argv, if ((status & FS_OPT_MAPSIZE) == FS_OPT_MAPSIZE) { fsrv->map_size = FS_OPT_GET_MAPSIZE(status); - if (fsrv->map_size % 8) + if (fsrv->map_size % 8) // should not happen fsrv->map_size = (((fsrv->map_size + 8) >> 3) << 3); if (!be_quiet) ACTF("Target map size: %u", fsrv->map_size); + if (fsrv->map_size > MAP_SIZE) + FATAL( + "Target's coverage map size of %u is larger than the one this " + "afl++ is compiled with (%u)\n", + fsrv->map_size, MAP_SIZE); } - if (fsrv->function_ptr == NULL || fsrv->function_opt == NULL) { + if ((status & FS_OPT_AUTODICT) == FS_OPT_AUTODICT) { - // this is not afl-fuzz - we deny and return - status = (0xffffffff ^ (FS_OPT_ENABLED | FS_OPT_AUTODICT)); - if (write(fsrv->fsrv_ctl_fd, &status, 4) != 4) - FATAL("Writing to forkserver failed."); - return; + if (fsrv->function_ptr == NULL || fsrv->function_opt == NULL) { - } + // this is not afl-fuzz - we deny and return + status = (0xffffffff ^ (FS_OPT_ENABLED | FS_OPT_AUTODICT)); + if (write(fsrv->fsrv_ctl_fd, &status, 4) != 4) + FATAL("Writing to forkserver failed."); + return; - if ((status & FS_OPT_AUTODICT) == FS_OPT_AUTODICT) { + } if (!be_quiet) ACTF("Using AUTODICT feature."); status = (FS_OPT_ENABLED | FS_OPT_AUTODICT); |
