diff options
author | vanhauser-thc <vh@thc.org> | 2021-06-22 17:24:06 +0200 |
---|---|---|
committer | vanhauser-thc <vh@thc.org> | 2021-06-22 17:24:06 +0200 |
commit | cbac22d82b90d631bafc4572aa79faa0c568beeb (patch) | |
tree | 6d943e4ea1ebe3f08d00524c8b11919df1ac3332 /src | |
parent | ba9323f14cb4ba7c99c4081f19c12b93e112dd65 (diff) | |
download | afl++-cbac22d82b90d631bafc4572aa79faa0c568beeb.tar.gz |
reverse read the queue n resumes
Diffstat (limited to 'src')
-rw-r--r-- | src/afl-fuzz-init.c | 7 | ||||
-rw-r--r-- | src/afl-fuzz-run.c | 3 | ||||
-rw-r--r-- | src/afl-fuzz.c | 7 |
3 files changed, 13 insertions, 4 deletions
diff --git a/src/afl-fuzz-init.c b/src/afl-fuzz-init.c index 872e3a32..cc5974d8 100644 --- a/src/afl-fuzz-init.c +++ b/src/afl-fuzz-init.c @@ -710,7 +710,10 @@ void read_testcases(afl_state_t *afl, u8 *directory) { } - for (i = 0; i < (u32)nl_cnt; ++i) { + i = nl_cnt; + do { + + --i; struct stat st; @@ -801,7 +804,7 @@ void read_testcases(afl_state_t *afl, u8 *directory) { */ - } + } while (i > 0); free(nl); /* not tracked */ diff --git a/src/afl-fuzz-run.c b/src/afl-fuzz-run.c index 3de67955..49856a9f 100644 --- a/src/afl-fuzz-run.c +++ b/src/afl-fuzz-run.c @@ -424,7 +424,8 @@ u8 calibrate_case(afl_state_t *afl, struct queue_entry *q, u8 *use_mem, } var_detected = 1; - afl->stage_max = afl->afl_env.afl_cal_fast ? CAL_CYCLES : CAL_CYCLES_LONG; + afl->stage_max = + afl->afl_env.afl_cal_fast ? CAL_CYCLES : CAL_CYCLES_LONG; } else { diff --git a/src/afl-fuzz.c b/src/afl-fuzz.c index c148086c..5f25f728 100644 --- a/src/afl-fuzz.c +++ b/src/afl-fuzz.c @@ -1911,7 +1911,12 @@ int main(int argc, char **argv_orig, char **envp) { if (unlikely(afl->old_seed_selection)) seek_to = find_start_position(afl); afl->start_time = get_cur_time(); - if (afl->in_place_resume || afl->afl_env.afl_autoresume) load_stats_file(afl); + if (afl->in_place_resume || afl->afl_env.afl_autoresume) { + + load_stats_file(afl); + + } + write_stats_file(afl, 0, 0, 0, 0); maybe_update_plot_file(afl, 0, 0, 0); save_auto(afl); |