mirror of
https://github.com/AFLplusplus/AFLplusplus.git
synced 2025-06-15 11:28:08 +00:00
add -D option for -S
This commit is contained in:
@ -14,6 +14,7 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
|
|||||||
- -S secondary nodes now only sync from the main node to increase
|
- -S secondary nodes now only sync from the main node to increase
|
||||||
performance, the -M main node still syncs from everyone. Added checks
|
performance, the -M main node still syncs from everyone. Added checks
|
||||||
that ensure exactly one main node is present and warn otherwise
|
that ensure exactly one main node is present and warn otherwise
|
||||||
|
- Add -D after -S to force a secondary to perform deterministic fuzzing
|
||||||
- If no main node is present at a sync one secondary node automatically
|
- If no main node is present at a sync one secondary node automatically
|
||||||
becomes a temporary main node until a real main nodes shows up
|
becomes a temporary main node until a real main nodes shows up
|
||||||
- Fixed a mayor performance issue we inherited from AFLfast
|
- Fixed a mayor performance issue we inherited from AFLfast
|
||||||
|
@ -160,6 +160,8 @@ static void usage(afl_state_t *afl, u8 *argv0, int more_help) {
|
|||||||
"Other stuff:\n"
|
"Other stuff:\n"
|
||||||
" -T text - text banner to show on the screen\n"
|
" -T text - text banner to show on the screen\n"
|
||||||
" -M/-S id - distributed mode (see docs/parallel_fuzzing.md)\n"
|
" -M/-S id - distributed mode (see docs/parallel_fuzzing.md)\n"
|
||||||
|
" use -D to force -S secondary to perform deterministic "
|
||||||
|
"fuzzing\n"
|
||||||
" -I command - execute this command/script when a new crash is "
|
" -I command - execute this command/script when a new crash is "
|
||||||
"found\n"
|
"found\n"
|
||||||
" -B bitmap.txt - mutate a specific test case, use the out/fuzz_bitmap "
|
" -B bitmap.txt - mutate a specific test case, use the out/fuzz_bitmap "
|
||||||
@ -292,7 +294,7 @@ int main(int argc, char **argv_orig, char **envp) {
|
|||||||
rand_set_seed(afl, tv.tv_sec ^ tv.tv_usec ^ getpid());
|
rand_set_seed(afl, tv.tv_sec ^ tv.tv_usec ^ getpid());
|
||||||
|
|
||||||
while ((opt = getopt(argc, argv,
|
while ((opt = getopt(argc, argv,
|
||||||
"+c:i:I:o:f:m:t:T:dnCB:S:M:x:QNUWe:p:s:V:E:L:hRP:")) >
|
"+c:i:I:o:f:m:t:T:dDnCB:S:M:x:QNUWe:p:s:V:E:L:hRP:")) >
|
||||||
0) {
|
0) {
|
||||||
|
|
||||||
switch (opt) {
|
switch (opt) {
|
||||||
@ -518,6 +520,11 @@ int main(int argc, char **argv_orig, char **envp) {
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'D': /* enforce deterministic */
|
||||||
|
|
||||||
|
afl->skip_deterministic = 0;
|
||||||
|
break;
|
||||||
|
|
||||||
case 'd': /* skip deterministic */
|
case 'd': /* skip deterministic */
|
||||||
|
|
||||||
afl->skip_deterministic = 1;
|
afl->skip_deterministic = 1;
|
||||||
@ -1093,7 +1100,7 @@ int main(int argc, char **argv_orig, char **envp) {
|
|||||||
|
|
||||||
if (afl->is_main_node && check_main_node_exists(afl) == 1) {
|
if (afl->is_main_node && check_main_node_exists(afl) == 1) {
|
||||||
|
|
||||||
WARNF("it is wasteful to run more than one master!");
|
WARNF("it is wasteful to run more than one main node!");
|
||||||
sleep(1);
|
sleep(1);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user