summaryrefslogtreecommitdiff
path: root/security/afl++
diff options
context:
space:
mode:
Diffstat (limited to 'security/afl++')
-rw-r--r--security/afl++/Makefile9
-rw-r--r--security/afl++/distinfo6
-rw-r--r--security/afl++/files/patch-GNUmakefile.llvm20
-rw-r--r--security/afl++/files/patch-include_forkserver.h11
4 files changed, 39 insertions, 7 deletions
diff --git a/security/afl++/Makefile b/security/afl++/Makefile
index 41e79b781385..1a90d83b36a6 100644
--- a/security/afl++/Makefile
+++ b/security/afl++/Makefile
@@ -1,10 +1,10 @@
PORTNAME= afl
DISTVERSIONPREFIX= v
-DISTVERSION= 4.32c
+DISTVERSION= 4.33c
CATEGORIES= security
PKGNAMESUFFIX= ++-${FLAVOR}
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= fk@fabiankeil.de
COMMENT= Fast instrumented fuzzer
WWW= https://aflplus.plus/
@@ -13,6 +13,7 @@ LICENSE_FILE= ${WRKSRC}/docs/COPYING
ONLY_FOR_ARCHS= aarch64 amd64 i386 powerpc powerpc64 powerpc64le riscv64
ONLY_FOR_ARCHS_REASON= uses x86-only instrumentation or requires complete LLVM support
+BROKEN_FreeBSD_13= fails to build, error: unknown type name 'mode_t'
BUILD_DEPENDS= ginstall:sysutils/coreutils
@@ -30,10 +31,10 @@ USE_GCC= yes
USE_GITHUB= yes
GH_ACCOUNT= AFLplusplus
GH_PROJECT= AFLplusplus
-SHEBANG_FILES= afl-persistent-config
+SHEBANG_FILES= afl-cmin.py afl-persistent-config
MAKEFILE= GNUmakefile
-MAKE_ARGS= ${${ARCH} != amd64 && ${ARCH} != i386:?AFL_NO_X86=1:} \
+MAKE_ARGS= AFL_NO_X86=1 AFL_NO_TEST_BUILD=1 \
PREFIX="${PREFIX}/${PKGBASE}"
.if ${FLAVOR} == llvm
CFLAGS_riscv64= -mno-relax
diff --git a/security/afl++/distinfo b/security/afl++/distinfo
index 21befac35cea..871fd6e76ebe 100644
--- a/security/afl++/distinfo
+++ b/security/afl++/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1746197618
-SHA256 (AFLplusplus-AFLplusplus-v4.32c_GH0.tar.gz) = dc7f59a11ce8cf67a3ed09a5ac78028c6f793b239b21fd83e5b2370cea166926
-SIZE (AFLplusplus-AFLplusplus-v4.32c_GH0.tar.gz) = 3045679
+TIMESTAMP = 1751370940
+SHA256 (AFLplusplus-AFLplusplus-v4.33c_GH0.tar.gz) = 98903c8036282c8908b1d8cc0d60caf3ea259db4339503a76449b47acce58d1d
+SIZE (AFLplusplus-AFLplusplus-v4.33c_GH0.tar.gz) = 3058802
diff --git a/security/afl++/files/patch-GNUmakefile.llvm b/security/afl++/files/patch-GNUmakefile.llvm
new file mode 100644
index 000000000000..8642167f99eb
--- /dev/null
+++ b/security/afl++/files/patch-GNUmakefile.llvm
@@ -0,0 +1,20 @@
+--- GNUmakefile.llvm.orig 2025-06-28 20:29:37 UTC
++++ GNUmakefile.llvm
+@@ -554,6 +554,9 @@ test_build: $(PROGS)
+
+ .PHONY: test_build
+ test_build: $(PROGS)
++ifdef AFL_NO_TEST_BUILD
++ @echo "[*] Not testing the CC wrapper and instrumentation output (AFL_NO_TEST_BUILD set)."
++else
+ @echo "[*] Testing the CC wrapper and instrumentation output..."
+ unset AFL_USE_ASAN AFL_USE_MSAN AFL_INST_RATIO AFL_LLVM_ALLOWLIST AFL_LLVM_DENYLIST; ASAN_OPTIONS=detect_leaks=0 AFL_QUIET=1 AFL_PATH=. AFL_LLVM_LAF_ALL=1 ./afl-cc $(CFLAGS) $(CPPFLAGS) ./test-instr.c -o test-instr $(LDFLAGS)
+ ifdef IS_IOS
+@@ -564,6 +567,7 @@ endif
+ @rm -f test-instr
+ @cmp -s .test-instr0 .test-instr1; DR="$$?"; rm -f .test-instr0 .test-instr1; if [ "$$DR" = "0" ]; then echo; echo "Oops, the instrumentation does not seem to be behaving correctly!"; echo; echo "Please post to https://github.com/AFLplusplus/AFLplusplus/issues to troubleshoot the issue."; echo; exit 1; fi
+ @echo "[+] All right, the instrumentation seems to be working!"
++endif
+
+ .PHONY: all_done
+ all_done: test_build
diff --git a/security/afl++/files/patch-include_forkserver.h b/security/afl++/files/patch-include_forkserver.h
new file mode 100644
index 000000000000..d47f462f9bd0
--- /dev/null
+++ b/security/afl++/files/patch-include_forkserver.h
@@ -0,0 +1,11 @@
+--- include/forkserver.h.orig 2025-06-28 20:29:37 UTC
++++ include/forkserver.h
+@@ -30,6 +30,8 @@
+
+ #include <stdio.h>
+ #include <stdbool.h>
++#include <string.h>
++#include <unistd.h>
+
+ #include "types.h"
+