diff options
author | van Hauser <vh@thc.org> | 2024-09-23 17:02:47 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-23 17:02:47 +0300 |
commit | 703fd0b6104bfc35cd2d49638abe795cdab60636 (patch) | |
tree | 4aae62daa178bf644812db184fb4832ea8c4f751 /src | |
parent | 5b44067e9ce72826f87e26e9e1ee0e0c3c1b5e1f (diff) | |
parent | db172473b55584c901c615413a5f1204eb603782 (diff) | |
download | afl++-703fd0b6104bfc35cd2d49638abe795cdab60636.tar.gz |
Merge pull request #2212 from nj00001/dev
Save crash log returned by nyx when AFL_CRASHING_SEEDS_AS_NEW_CRASH e…
Diffstat (limited to 'src')
-rw-r--r-- | src/afl-fuzz-init.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/afl-fuzz-init.c b/src/afl-fuzz-init.c index 72a765ff..e9036985 100644 --- a/src/afl-fuzz-init.c +++ b/src/afl-fuzz-init.c @@ -1231,6 +1231,23 @@ void perform_dry_run(afl_state_t *afl) { ck_write(fd, use_mem, read_len, crash_fn); close(fd); + if (afl->fsrv.nyx_mode) { + + u8 crash_log_fn[PATH_MAX]; + + snprintf(crash_log_fn, PATH_MAX, "%s.log", crash_fn); + fd = open(crash_log_fn, O_WRONLY | O_CREAT | O_EXCL, DEFAULT_PERMISSION); + if (unlikely(fd < 0)) { PFATAL("Unable to create '%s'", crash_log_fn); } + + u32 nyx_aux_string_len = afl->fsrv.nyx_handlers->nyx_get_aux_string( + afl->fsrv.nyx_runner, afl->fsrv.nyx_aux_string, + afl->fsrv.nyx_aux_string_len); + + ck_write(fd, afl->fsrv.nyx_aux_string, nyx_aux_string_len, crash_log_fn); + close(fd); + + } + afl->last_crash_time = get_cur_time(); afl->last_crash_execs = afl->fsrv.total_execs; |