fix afl_custom_queue_new_entry when syncing

This commit is contained in:
vanhauser-thc
2021-04-09 11:19:40 +02:00
parent 43ca2d3113
commit 019b26de58
3 changed files with 9 additions and 2 deletions

View File

@ -21,9 +21,12 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
AFL_PERSISTENT_RECORD in config.h and docs/envs.h AFL_PERSISTENT_RECORD in config.h and docs/envs.h
- default cmplog level (-l) is now 2, better efficiency. - default cmplog level (-l) is now 2, better efficiency.
- ensure one fuzzer sync per cycle - ensure one fuzzer sync per cycle
- fix afl_custom_queue_new_entry original file name when syncing
from fuzzers
- afl-cc: - afl-cc:
- Leak Sanitizer support (AFL_USE_LSAN) added by Joshua Rogers, thanks! - Leak Sanitizer support (AFL_USE_LSAN) added by Joshua Rogers, thanks!
- Removed InsTrim instrumentation as it is not as good as PCGUARD - Removed InsTrim instrumentation as it is not as good as PCGUARD
- Removed automatic linking with -lc++ for LTO mode
### Version ++3.12c (release) ### Version ++3.12c (release)
- afl-fuzz: - afl-fuzz:

View File

@ -92,7 +92,7 @@ class AFLLTOPass : public ModulePass {
uint32_t afl_global_id = 1, autodictionary = 1; uint32_t afl_global_id = 1, autodictionary = 1;
uint32_t function_minimum_size = 1; uint32_t function_minimum_size = 1;
uint32_t inst_blocks = 0, inst_funcs = 0, total_instr = 0; uint32_t inst_blocks = 0, inst_funcs = 0, total_instr = 0;
uint64_t map_addr = 0x10000; unsigned long long int map_addr = 0x10000;
char * skip_nozero = NULL; char * skip_nozero = NULL;
}; };

View File

@ -478,7 +478,11 @@ void add_to_queue(afl_state_t *afl, u8 *fname, u32 len, u8 passed_det) {
u8 *fname_orig = NULL; u8 *fname_orig = NULL;
/* At the initialization stage, queue_cur is NULL */ /* At the initialization stage, queue_cur is NULL */
if (afl->queue_cur) fname_orig = afl->queue_cur->fname; if (afl->queue_cur && !afl->syncing_party) {
fname_orig = afl->queue_cur->fname;
}
el->afl_custom_queue_new_entry(el->data, fname, fname_orig); el->afl_custom_queue_new_entry(el->data, fname, fname_orig);