mirror of
https://github.com/AFLplusplus/AFLplusplus.git
synced 2025-06-16 11:58:08 +00:00
ignore timeout env option
This commit is contained in:
@ -354,6 +354,9 @@ checks or alter some of the more exotic semantics of the tool:
|
|||||||
- Setting `AFL_KEEP_TIMEOUTS` will keep longer running inputs if they reach
|
- Setting `AFL_KEEP_TIMEOUTS` will keep longer running inputs if they reach
|
||||||
new coverage
|
new coverage
|
||||||
|
|
||||||
|
- On the contrary, if you are not interested in any timeouts, you can set
|
||||||
|
`AFL_IGNORE_TIMEOUTS` to get a bit of speed instead.
|
||||||
|
|
||||||
- `AFL_EXIT_ON_SEED_ISSUES` will restore the vanilla afl-fuzz behavior which
|
- `AFL_EXIT_ON_SEED_ISSUES` will restore the vanilla afl-fuzz behavior which
|
||||||
does not allow crashes or timeout seeds in the initial -i corpus.
|
does not allow crashes or timeout seeds in the initial -i corpus.
|
||||||
|
|
||||||
|
@ -398,7 +398,7 @@ typedef struct afl_env_vars {
|
|||||||
afl_cycle_schedules, afl_expand_havoc, afl_statsd, afl_cmplog_only_new,
|
afl_cycle_schedules, afl_expand_havoc, afl_statsd, afl_cmplog_only_new,
|
||||||
afl_exit_on_seed_issues, afl_try_affinity, afl_ignore_problems,
|
afl_exit_on_seed_issues, afl_try_affinity, afl_ignore_problems,
|
||||||
afl_keep_timeouts, afl_pizza_mode, afl_no_crash_readme,
|
afl_keep_timeouts, afl_pizza_mode, afl_no_crash_readme,
|
||||||
afl_no_startup_calibration;
|
afl_ignore_timeouts, afl_no_startup_calibration;
|
||||||
|
|
||||||
u8 *afl_tmpdir, *afl_custom_mutator_library, *afl_python_module, *afl_path,
|
u8 *afl_tmpdir, *afl_custom_mutator_library, *afl_python_module, *afl_path,
|
||||||
*afl_hang_tmout, *afl_forksrv_init_tmout, *afl_preload,
|
*afl_hang_tmout, *afl_forksrv_init_tmout, *afl_preload,
|
||||||
|
@ -103,6 +103,7 @@ static char *afl_environment_variables[] = {
|
|||||||
"AFL_HARDEN",
|
"AFL_HARDEN",
|
||||||
"AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES",
|
"AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES",
|
||||||
"AFL_IGNORE_PROBLEMS",
|
"AFL_IGNORE_PROBLEMS",
|
||||||
|
"AFL_IGNORE_TIMEOUTS",
|
||||||
"AFL_IGNORE_UNKNOWN_ENVS",
|
"AFL_IGNORE_UNKNOWN_ENVS",
|
||||||
"AFL_IMPORT_FIRST",
|
"AFL_IMPORT_FIRST",
|
||||||
"AFL_INPUT_LEN_MIN",
|
"AFL_INPUT_LEN_MIN",
|
||||||
|
@ -457,6 +457,12 @@ save_if_interesting(afl_state_t *afl, void *mem, u32 len, u8 fault) {
|
|||||||
|
|
||||||
if (unlikely(len == 0)) { return 0; }
|
if (unlikely(len == 0)) { return 0; }
|
||||||
|
|
||||||
|
if (unlikely(fault == FSRV_RUN_TMOUT && afl->afl_env.afl_ignore_timeouts)) {
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
u8 fn[PATH_MAX];
|
u8 fn[PATH_MAX];
|
||||||
u8 *queue_fn = "";
|
u8 *queue_fn = "";
|
||||||
u8 new_bits = 0, keeping = 0, res, classified = 0, is_timeout = 0;
|
u8 new_bits = 0, keeping = 0, res, classified = 0, is_timeout = 0;
|
||||||
|
@ -292,6 +292,13 @@ void read_afl_environment(afl_state_t *afl, char **envp) {
|
|||||||
afl->afl_env.afl_ignore_problems =
|
afl->afl_env.afl_ignore_problems =
|
||||||
get_afl_env(afl_environment_variables[i]) ? 1 : 0;
|
get_afl_env(afl_environment_variables[i]) ? 1 : 0;
|
||||||
|
|
||||||
|
} else if (!strncmp(env, "AFL_IGNORE_TIMEOUTS",
|
||||||
|
|
||||||
|
afl_environment_variable_len)) {
|
||||||
|
|
||||||
|
afl->afl_env.afl_ignore_timeouts =
|
||||||
|
get_afl_env(afl_environment_variables[i]) ? 1 : 0;
|
||||||
|
|
||||||
} else if (!strncmp(env, "AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES",
|
} else if (!strncmp(env, "AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES",
|
||||||
|
|
||||||
afl_environment_variable_len)) {
|
afl_environment_variable_len)) {
|
||||||
|
@ -258,8 +258,9 @@ static void usage(u8 *argv0, int more_help) {
|
|||||||
"AFL_FORKSRV_INIT_TMOUT: time spent waiting for forkserver during startup (in ms)\n"
|
"AFL_FORKSRV_INIT_TMOUT: time spent waiting for forkserver during startup (in ms)\n"
|
||||||
"AFL_HANG_TMOUT: override timeout value (in milliseconds)\n"
|
"AFL_HANG_TMOUT: override timeout value (in milliseconds)\n"
|
||||||
"AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES: don't warn about core dump handlers\n"
|
"AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES: don't warn about core dump handlers\n"
|
||||||
"AFL_IGNORE_UNKNOWN_ENVS: don't warn on unknown env vars\n"
|
|
||||||
"AFL_IGNORE_PROBLEMS: do not abort fuzzing if an incorrect setup is detected\n"
|
"AFL_IGNORE_PROBLEMS: do not abort fuzzing if an incorrect setup is detected\n"
|
||||||
|
"AFL_IGNORE_TIMEOUTS: do not process or save any timeouts\n"
|
||||||
|
"AFL_IGNORE_UNKNOWN_ENVS: don't warn on unknown env vars\n"
|
||||||
"AFL_IMPORT_FIRST: sync and import test cases from other fuzzer instances first\n"
|
"AFL_IMPORT_FIRST: sync and import test cases from other fuzzer instances first\n"
|
||||||
"AFL_INPUT_LEN_MIN/AFL_INPUT_LEN_MAX: like -g/-G set min/max fuzz length produced\n"
|
"AFL_INPUT_LEN_MIN/AFL_INPUT_LEN_MAX: like -g/-G set min/max fuzz length produced\n"
|
||||||
"AFL_PIZZA_MODE: 1 - enforce pizza mode, 0 - disable for April 1st\n"
|
"AFL_PIZZA_MODE: 1 - enforce pizza mode, 0 - disable for April 1st\n"
|
||||||
|
Reference in New Issue
Block a user