diff options
author | vanhauser-thc <vh@thc.org> | 2021-11-06 14:29:16 +0100 |
---|---|---|
committer | vanhauser-thc <vh@thc.org> | 2021-11-06 14:29:16 +0100 |
commit | 61039b410c98cb971daff5778b1591d0e5cbfd3e (patch) | |
tree | 64e9d060065d4114c465189b6c9ee9e403860046 /src | |
parent | b5d7f6bd60e053a47996b1f1b9c70008bb106a32 (diff) | |
download | afl++-61039b410c98cb971daff5778b1591d0e5cbfd3e.tar.gz |
better error report for old qemu/frida cmplog
Diffstat (limited to 'src')
-rw-r--r-- | src/afl-forkserver.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/afl-forkserver.c b/src/afl-forkserver.c index 93fd19e1..94c90701 100644 --- a/src/afl-forkserver.c +++ b/src/afl-forkserver.c @@ -347,6 +347,11 @@ static void report_error_and_exit(int error) { "the -c cmplog target was instrumented with an too old afl++ " "version, you need to recompile it."); break; + case FS_ERROR_OLD_CMPLOG_QEMU: + FATAL( + "The AFL++ QEMU/FRIDA loaders are from an older version, for -c you " + "need to recompile it.\n"); + break; default: FATAL("unknown error code %d from fuzzing target!", error); @@ -670,7 +675,15 @@ void afl_fsrv_start(afl_forkserver_t *fsrv, char **argv, if ((status & FS_OPT_NEWCMPLOG) == 0 && fsrv->cmplog_binary) { - report_error_and_exit(FS_ERROR_OLD_CMPLOG); + if (fsrv->qemu_mode || fsrv->frida_mode) { + + report_error_and_exit(FS_ERROR_OLD_CMPLOG_QEMU); + + } else { + + report_error_and_exit(FS_ERROR_OLD_CMPLOG); + + } } |