mirror of
https://github.com/AFLplusplus/AFLplusplus.git
synced 2025-06-14 11:08:06 +00:00
add no splicing compile option and print used compile options in afl-fuzz help
This commit is contained in:
@ -36,6 +36,10 @@ SH_PROGS = afl-plot afl-cmin afl-cmin.bash afl-whatsup afl-system-config
|
|||||||
MANPAGES=$(foreach p, $(PROGS) $(SH_PROGS), $(p).8) afl-as.8
|
MANPAGES=$(foreach p, $(PROGS) $(SH_PROGS), $(p).8) afl-as.8
|
||||||
ASAN_OPTIONS=detect_leaks=0
|
ASAN_OPTIONS=detect_leaks=0
|
||||||
|
|
||||||
|
ifdef NO_SPLICING
|
||||||
|
override CFLAGS += -DNO_SPLICING
|
||||||
|
endif
|
||||||
|
|
||||||
ifdef ASAN_BUILD
|
ifdef ASAN_BUILD
|
||||||
$(info Compiling ASAN version of binaries)
|
$(info Compiling ASAN version of binaries)
|
||||||
override CFLAGS+=$(ASAN_CFLAGS)
|
override CFLAGS+=$(ASAN_CFLAGS)
|
||||||
@ -344,7 +348,10 @@ help:
|
|||||||
@echo ASAN_BUILD - compiles with memory sanitizer for debug purposes
|
@echo ASAN_BUILD - compiles with memory sanitizer for debug purposes
|
||||||
@echo DEBUG - no optimization, -ggdb3, all warnings and -Werror
|
@echo DEBUG - no optimization, -ggdb3, all warnings and -Werror
|
||||||
@echo PROFILING - compile afl-fuzz with profiling information
|
@echo PROFILING - compile afl-fuzz with profiling information
|
||||||
|
@echo NO_PYTHON - disable python support
|
||||||
|
@echo NO_SPLICING - disables splicing mutation in afl-fuzz, not recommended for normal fuzzing
|
||||||
@echo AFL_NO_X86 - if compiling on non-intel/amd platforms
|
@echo AFL_NO_X86 - if compiling on non-intel/amd platforms
|
||||||
|
@echo "LLVM_CONFIG - if your distro doesn't use the standard name for llvm-config (e.g. Debian)"
|
||||||
@echo "=========================================="
|
@echo "=========================================="
|
||||||
@echo e.g.: make ASAN_BUILD=1
|
@echo e.g.: make ASAN_BUILD=1
|
||||||
|
|
||||||
|
@ -212,6 +212,7 @@ These build options exist:
|
|||||||
* DEBUG - no optimization, -ggdb3, all warnings and -Werror
|
* DEBUG - no optimization, -ggdb3, all warnings and -Werror
|
||||||
* PROFILING - compile with profiling information (gprof)
|
* PROFILING - compile with profiling information (gprof)
|
||||||
* NO_PYTHON - disable python support
|
* NO_PYTHON - disable python support
|
||||||
|
* NO_SPLICING - disables splicing mutation in afl-fuzz, not recommended for normal fuzzing
|
||||||
* AFL_NO_X86 - if compiling on non-intel/amd platforms
|
* AFL_NO_X86 - if compiling on non-intel/amd platforms
|
||||||
* LLVM_CONFIG - if your distro doesn't use the standard name for llvm-config (e.g. Debian)
|
* LLVM_CONFIG - if your distro doesn't use the standard name for llvm-config (e.g. Debian)
|
||||||
|
|
||||||
|
@ -34,6 +34,8 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
|
|||||||
- crashing seeds are now not prohibiting a run anymore but are
|
- crashing seeds are now not prohibiting a run anymore but are
|
||||||
skipped. They are used for splicing though.
|
skipped. They are used for splicing though.
|
||||||
- set the default power schedule to the superiour "seek" schedule
|
- set the default power schedule to the superiour "seek" schedule
|
||||||
|
- added NO_SPLICING compile option and makefile define
|
||||||
|
- print special compile time options used in help output
|
||||||
- instrumentation
|
- instrumentation
|
||||||
- We received an enhanced gcc_plugin module from AdaCore, thank you
|
- We received an enhanced gcc_plugin module from AdaCore, thank you
|
||||||
very much!!
|
very much!!
|
||||||
|
@ -102,7 +102,9 @@ void afl_state_init(afl_state_t *afl, uint32_t map_size) {
|
|||||||
afl->stats_update_freq = 1;
|
afl->stats_update_freq = 1;
|
||||||
afl->stats_avg_exec = -1;
|
afl->stats_avg_exec = -1;
|
||||||
afl->skip_deterministic = 1;
|
afl->skip_deterministic = 1;
|
||||||
|
#ifndef NO_SPLICING
|
||||||
afl->use_splicing = 1;
|
afl->use_splicing = 1;
|
||||||
|
#endif
|
||||||
afl->q_testcase_max_cache_size = TESTCASE_CACHE_SIZE * 1048576UL;
|
afl->q_testcase_max_cache_size = TESTCASE_CACHE_SIZE * 1048576UL;
|
||||||
afl->q_testcase_max_cache_entries = 64 * 1024;
|
afl->q_testcase_max_cache_entries = 64 * 1024;
|
||||||
|
|
||||||
|
@ -224,6 +224,26 @@ static void usage(u8 *argv0, int more_help) {
|
|||||||
SAYF("Compiled without python module support\n");
|
SAYF("Compiled without python module support\n");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef ASAN_BUILD
|
||||||
|
SAYF("Compiled with ASAN_BUILD\n\n");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef NO_SPLICING
|
||||||
|
SAYF("Compiled with NO_SPLICING\n\n");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef PROFILING
|
||||||
|
SAYF("Compiled with PROFILING\n\n");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
SAYF("Compiled with _DEBUG\n\n");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _AFL_DOCUMENT_MUTATIONS
|
||||||
|
SAYF("Compiled with _AFL_DOCUMENT_MUTATIONS\n\n");
|
||||||
|
#endif
|
||||||
|
|
||||||
SAYF("For additional help please consult %s/README.md\n\n", doc_path);
|
SAYF("For additional help please consult %s/README.md\n\n", doc_path);
|
||||||
|
|
||||||
exit(1);
|
exit(1);
|
||||||
@ -1527,7 +1547,11 @@ int main(int argc, char **argv_orig, char **envp) {
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
#ifndef NO_SPLICING
|
||||||
afl->use_splicing = 1;
|
afl->use_splicing = 1;
|
||||||
|
#else
|
||||||
|
afl->use_splicing = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user