aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2023-06-06 17:43:19 +0300
committerGitHub <noreply@github.com>2023-06-06 17:43:19 +0300
commit7c84331dc5259311c1be70a25a03aaeefb746ef6 (patch)
tree4dcfff4a4d53b3390e6c2d1bc17248d45f41f687
parentf9b72b6f2f9a6545143ad2efa40ea0b527a5bf5c (diff)
parentee2cab73ac6c72095f781da979094f877291a1d6 (diff)
downloadAFLplusplus-7c84331dc5259311c1be70a25a03aaeefb746ef6.tar.gz
Merge pull request #1760 from AFLplusplus/dev
push to stable
-rw-r--r--GNUmakefile4
-rw-r--r--GNUmakefile.llvm2
-rw-r--r--instrumentation/SanitizerCoveragePCGUARD.so.cc5
-rw-r--r--test/test-cmplog.c6
-rwxr-xr-xtest/test-llvm.sh2
5 files changed, 7 insertions, 12 deletions
diff --git a/GNUmakefile b/GNUmakefile
index 715e7386..55676d97 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -291,8 +291,6 @@ ifeq "$(shell command -v svn >/dev/null && svn proplist . 2>/dev/null && echo 1
IN_REPO=1
endif
-CCVER=$(shell cc -v 2>&1|tail -n 1)
-
ifeq "$(shell echo 'int main() { return 0;}' | $(CC) $(CFLAGS) -fsanitize=address -x c - -o .test2 2>/dev/null && echo 1 || echo 0 ; rm -f .test2 )" "1"
ASAN_CFLAGS=-fsanitize=address -fstack-protector-all -fno-omit-frame-pointer -DASAN_BUILD
ASAN_LDFLAGS=-fsanitize=address -fstack-protector-all -fno-omit-frame-pointer
@@ -439,7 +437,7 @@ endif
.PHONY: ready
ready:
- @echo "[+] Everything seems to be working, ready to compile. ($(CCVER))"
+ @echo "[+] Everything seems to be working, ready to compile. ($(shell $(CC) --version 2>&1|head -n 1))"
afl-as: src/afl-as.c include/afl-as.h $(COMM_HDR) | test_x86
$(CC) $(CFLAGS) src/$@.c -o $@ $(LDFLAGS)
diff --git a/GNUmakefile.llvm b/GNUmakefile.llvm
index 6c68f1f3..6ffac68f 100644
--- a/GNUmakefile.llvm
+++ b/GNUmakefile.llvm
@@ -46,7 +46,7 @@ LLVMVER = $(shell $(LLVM_CONFIG) --version 2>/dev/null | sed 's/git//' | sed 's
LLVM_MAJOR = $(shell $(LLVM_CONFIG) --version 2>/dev/null | sed 's/\..*//' )
LLVM_MINOR = $(shell $(LLVM_CONFIG) --version 2>/dev/null | sed 's/.*\.//' | sed 's/git//' | sed 's/svn//' | sed 's/ .*//' )
LLVM_UNSUPPORTED = $(shell $(LLVM_CONFIG) --version 2>/dev/null | grep -E -q '^[0-2]\.|^3.[0-7]\.' && echo 1 || echo 0 )
-LLVM_TOO_NEW = $(shell $(LLVM_CONFIG) --version 2>/dev/null | grep -E -q '^1[5-9]' && echo 1 || echo 0 )
+LLVM_TOO_NEW = $(shell $(LLVM_CONFIG) --version 2>/dev/null | grep -E -q '^1[7-9]' && echo 1 || echo 0 )
LLVM_NEW_API = $(shell $(LLVM_CONFIG) --version 2>/dev/null | grep -E -q '^1[0-9]' && echo 1 || echo 0 )
LLVM_NEWER_API = $(shell $(LLVM_CONFIG) --version 2>/dev/null | grep -E -q '^1[6-9]' && echo 1 || echo 0 )
LLVM_13_OK = $(shell $(LLVM_CONFIG) --version 2>/dev/null | grep -E -q '^1[3-9]' && echo 1 || echo 0 )
diff --git a/instrumentation/SanitizerCoveragePCGUARD.so.cc b/instrumentation/SanitizerCoveragePCGUARD.so.cc
index 20f54b84..7171e7aa 100644
--- a/instrumentation/SanitizerCoveragePCGUARD.so.cc
+++ b/instrumentation/SanitizerCoveragePCGUARD.so.cc
@@ -18,9 +18,6 @@
#include "llvm/ADT/Triple.h"
#endif
#endif
-#if LLVM_VERSION_MAJOR < 17
- #include "llvm/Analysis/EHPersonalities.h"
-#endif
#include "llvm/Analysis/PostDominators.h"
#if LLVM_VERSION_MAJOR < 15
#include "llvm/IR/CFG.h"
@@ -32,6 +29,8 @@
#endif
#include "llvm/IR/Dominators.h"
#if LLVM_VERSION_MAJOR >= 17
+ #include "llvm/IR/EHPersonalities.h"
+#else
#include "llvm/Analysis/EHPersonalities.h"
#endif
#include "llvm/IR/Function.h"
diff --git a/test/test-cmplog.c b/test/test-cmplog.c
index bd1b73e3..2ab579b0 100644
--- a/test/test-cmplog.c
+++ b/test/test-cmplog.c
@@ -8,16 +8,14 @@
int LLVMFuzzerTestOneInput(const uint8_t *buf, size_t i) {
- if (i < 30) return -1;
+ if (i < 15) return -1;
if (buf[0] != 'A') return 0;
if (buf[1] != 'B') return 0;
if (buf[2] != 'C') return 0;
if (buf[3] != 'D') return 0;
int *icmp = (int *)(buf + 4);
if (*icmp != 0x69694141) return 0;
- if (memcmp(buf + 8, "1234", 4) || memcmp(buf + 12, "EFGH", 4)) return 0;
- if (strncmp(buf + 16, "IJKL", 4) == 0 && strcmp(buf + 20, "DEADBEEF") == 0)
- abort();
+ if (memcmp(buf + 8, "1234EF", 6) == 0) abort();
return 0;
}
diff --git a/test/test-llvm.sh b/test/test-llvm.sh
index 714bda93..19fb7c1a 100755
--- a/test/test-llvm.sh
+++ b/test/test-llvm.sh
@@ -263,7 +263,7 @@ test -e ../afl-clang-fast -a -e ../split-switches-pass.so && {
{
mkdir -p in
echo 00000000000000000000000000000000 > in/in
- AFL_BENCH_UNTIL_CRASH=1 ../afl-fuzz -m none -V30 -i in -o out -c./test-cmplog -- ./test-c >>errors 2>&1
+ AFL_BENCH_UNTIL_CRASH=1 ../afl-fuzz -l 3 -m none -V30 -i in -o out -c ./test-cmplog -- ./test-c >>errors 2>&1
} >>errors 2>&1
test -n "$( ls out/default/crashes/id:000000* out/default/hangs/id:000000* 2>/dev/null )" && {
$ECHO "$GREEN[+] afl-fuzz is working correctly with llvm_mode cmplog"