diff --git a/security/nmap-devel/Makefile b/security/nmap-devel/Makefile index ab45feb4b0af..146d54da3aea 100644 --- a/security/nmap-devel/Makefile +++ b/security/nmap-devel/Makefile @@ -1,96 +1,100 @@ PORTNAME= nmap PORTVERSION= 7.95.${NMAP_COMMIT_DATE} +PORTREVISION= 1 CATEGORIES= security PKGNAMESUFFIX= -devel MAINTAINER?= cy@FreeBSD.org COMMENT?= Port scanning utility for large networks WWW= https://nmap.org/ # nmap-6.47 => svn.nmap.org/nmap-releases/nmap-6.47 (r33605) # https://nmap.org/book/man-legal.html # Install the nmap modified license because of # http://insecure.org/news/download-com-fiasco.html LICENSE= NPSL LICENSE_NAME= Nmap Public Source License LICENSE_FILE= ${WRKSRC}/LICENSE LICENSE_PERMS= auto-accept dist-mirror pkg-mirror pkg-sell IGNORE_FreeBSD_13= Does not build on FreeBSD 13.x due to OpenSSL 1.1.1 -.if !defined(MASTERDIR) +LIB_DEPENDS= libpcre2-16.so:devel/pcre2 \ + libdbus-1.so:devel/dbus -LIB_DEPENDS= libpcre2-16.so:devel/pcre2 +.if !defined(MASTERDIR) USES= gmake cpe libtool # XXX limit results if we do a grep in the sources! EXTRACT_AFTER_ARGS= --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/mswin32 \ --no-same-owner --no-same-permissions USE_GITHUB= yes GH_TAGNAME= a5b332ccd NMAP_COMMIT_DATE= 20260128 GNU_CONFIGURE= yes CONFIGURE_ARGS=--without-localdirs \ --without-zenmap \ --without-ndiff \ --with-libpcre=${LOCALBASE} \ --with-liblua=included \ --without-nmap-update MAKE_JOBS_UNSAFE= yes GNU_CONFIGURE_MANPREFIX=${PREFIX}/share +LDFLAGS+= -ldbus-1 + OPTIONS_DEFINE= DOCS NLS PCAP SSH2 SSL OPTIONS_DEFAULT=NLS SSH2 SSL OPTIONS_SUB= yes PCAP_DESC= Build with libpcap from nmap SSH2_DESC= SSH2 protocol support NLS_CONFIGURE_ENABLE= nls PCAP_CONFIGURE_ON= --with-libpcap=included SSH2_IMPLIES= SSL SSH2_CONFIGURE_ON= --with-libssh2=included SSH2_CONFIGURE_OFF= --without-libssh2 SSL_USES= ssl SSL_CONFIGURE_ON= --with-openssl=${OPENSSLBASE} SSL_CONFIGURE_OFF= --without-openssl SSL_CFLAGS= -I${OPENSSLINC} SSL_VARS= STRIP_FILES+=ncat DOCS= CHANGELOG HACKING STRIP_FILES+= nmap nping .include .if defined(SSL_DEFAULT) && ${SSL_DEFAULT} == libressl BROKEN= error: OpenSSL-1.1.1 is the minimum supported version. LibreSSLis not supported .endif .if exists(/usr/lib/libibverbs.a) # Link with libibverbs is needed by static libpcap post-patch-PCAP-on: @${REINPLACE_CMD} -E -e "s|(PCAP_LIBS=['\"].*)(['\"])$$|\1 -libverbs\2|" \ ${WRKSRC}/configure \ ${WRKSRC}/nping/configure \ ${WRKSRC}/ncat/configure .endif post-configure: @${REINPLACE_CMD} -e "s|^DESTDIR *=|& ${DESTDIR}|" ${WRKSRC}/Makefile pre-install: ${FIND} ${WRKSRC} -type f \( -name \*.orig -o -name \*.bak \) -delete post-install: ${STRIP_CMD} ${STRIP_FILES:S|^|${STAGEDIR}${PREFIX}/bin/|} post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${DOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} .endif .include diff --git a/security/nmap-devel/files/patch-configure b/security/nmap-devel/files/patch-configure new file mode 100644 index 000000000000..332a95b99b08 --- /dev/null +++ b/security/nmap-devel/files/patch-configure @@ -0,0 +1,56 @@ +--- configure.orig 2025-05-21 13:47:38.000000000 -0700 ++++ configure 2026-02-02 15:27:39.745358000 -0800 +@@ -3103,7 +3103,7 @@ + ac_compiler_gnu=$ac_cv_c_compiler_gnu + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +-set dummy ${ac_tool_prefix}gcc; ac_word=$2 ++set dummy ${ac_tool_prefix}$CXX; ac_word=$2 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 + printf %s "checking for $ac_word... " >&6; } + if test ${ac_cv_prog_CC+y} +@@ -3124,7 +3124,7 @@ + esac + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then +- ac_cv_prog_CC="${ac_tool_prefix}gcc" ++ ac_cv_prog_CC="${ac_tool_prefix}$CXX" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 + break 2 + fi +@@ -3169,7 +3169,7 @@ + esac + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then +- ac_cv_prog_ac_ct_CC="gcc" ++ ac_cv_prog_ac_ct_CC="$CXX" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 + break 2 + fi +@@ -4135,7 +4135,7 @@ + ac_compiler_gnu=$ac_cv_c_compiler_gnu + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +-set dummy ${ac_tool_prefix}gcc; ac_word=$2 ++set dummy ${ac_tool_prefix}$CXX; ac_word=$2 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 + printf %s "checking for $ac_word... " >&6; } + if test ${ac_cv_prog_CC+y} +@@ -4156,7 +4156,7 @@ + esac + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then +- ac_cv_prog_CC="${ac_tool_prefix}gcc" ++ ac_cv_prog_CC="${ac_tool_prefix}$CXX" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 + break 2 + fi +@@ -4201,7 +4201,7 @@ + esac + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then +- ac_cv_prog_ac_ct_CC="gcc" ++ ac_cv_prog_ac_ct_CC="$CXX" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 + break 2 + fi diff --git a/security/nmap-devel/files/patch-libdnet-stripped_configure b/security/nmap-devel/files/patch-libdnet-stripped_configure index 06520638f3ea..3ac064bb4dc8 100644 --- a/security/nmap-devel/files/patch-libdnet-stripped_configure +++ b/security/nmap-devel/files/patch-libdnet-stripped_configure @@ -1,12 +1,26 @@ ---- libdnet-stripped/configure.orig 2025-04-30 19:58:18 UTC -+++ libdnet-stripped/configure -@@ -650,6 +650,9 @@ ac_includes_default="\ +--- libdnet-stripped/configure.orig 2025-08-09 12:07:16.000000000 -0700 ++++ libdnet-stripped/configure 2026-02-02 15:30:56.588281000 -0800 +@@ -643,6 +643,9 @@ #ifdef HAVE_SYS_STAT_H # include #endif +#ifdef HAVE_SYS_SOCKET_H +# include +#endif #ifdef HAVE_UNISTD_H # include #endif" +@@ -15136,13 +15139,6 @@ + if test ${ac_cv_dnet_bsd_bpf+y} + then : + printf %s "(cached) " >&6 +-else case e in #( +- e) if test -c /dev/bpf -o -c /dev/bpf0 ; then +- ac_cv_dnet_bsd_bpf=yes +- else +- ac_cv_dnet_bsd_bpf=no +- fi ;; +-esac + fi + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_dnet_bsd_bpf" >&5 diff --git a/security/nmap-devel/files/patch-libdnet-stripped_src_eth-bsd.c b/security/nmap-devel/files/patch-libdnet-stripped_src_eth-bsd.c new file mode 100644 index 000000000000..d66fadd31f5b --- /dev/null +++ b/security/nmap-devel/files/patch-libdnet-stripped_src_eth-bsd.c @@ -0,0 +1,11 @@ +--- libdnet-stripped/src/eth-bsd.c.orig 2025-06-05 15:22:27.000000000 -0700 ++++ libdnet-stripped/src/eth-bsd.c 2026-02-02 15:33:01.105641000 -0800 +@@ -46,7 +46,7 @@ + + if ((e = calloc(1, sizeof(*e))) != NULL) { + char file[32] = "/dev/bpf"; +- for (i = 0; i <= 128; i++) { ++ for (i = 0; i <= 1024; i++) { + /* This would be O_WRONLY, but Mac OS X 10.6 has a bug + where that prevents other users of the interface + from seeing incoming traffic, even in other diff --git a/security/nmap-devel/files/patch-libdnet-stripped_src_intf.c b/security/nmap-devel/files/patch-libdnet-stripped_src_intf.c index 649d6bedb578..f7adb16d22d2 100644 --- a/security/nmap-devel/files/patch-libdnet-stripped_src_intf.c +++ b/security/nmap-devel/files/patch-libdnet-stripped_src_intf.c @@ -1,11 +1,11 @@ ---- libdnet-stripped/src/intf.c.orig 2025-04-30 19:58:18 UTC -+++ libdnet-stripped/src/intf.c -@@ -178,7 +178,7 @@ intf_open(void) +--- libdnet-stripped/src/intf.c.orig 2025-03-31 12:30:47.000000000 -0700 ++++ libdnet-stripped/src/intf.c 2026-02-02 15:34:47.918928000 -0800 +@@ -178,7 +178,7 @@ #if defined(SIOCGLIFCONF) || defined(SIOCGIFNETMASK_IN6) || defined(SIOCGIFNETMASK6) if ((intf->fd6 = socket(AF_INET6, SOCK_DGRAM, 0)) < 0) { # ifdef EPROTONOSUPPORT - if (errno != EPROTONOSUPPORT) + if (errno != EPROTONOSUPPORT && errno != EAFNOSUPPORT) #endif return (intf_close(intf)); } diff --git a/security/nmap-devel/files/patch-libpcap_Makefile.in b/security/nmap-devel/files/patch-libpcap_Makefile.in index 60dcc4e7d17e..a78c3fabce72 100644 --- a/security/nmap-devel/files/patch-libpcap_Makefile.in +++ b/security/nmap-devel/files/patch-libpcap_Makefile.in @@ -1,11 +1,12 @@ ---- libpcap/Makefile.in.orig 2025-04-30 19:58:18 UTC -+++ libpcap/Makefile.in -@@ -69,7 +69,7 @@ INSTALL_RPCAPD=@INSTALL_RPCAPD@ +--- libpcap/Makefile.in.orig 2025-04-14 12:06:54.000000000 -0700 ++++ libpcap/Makefile.in 2026-02-02 15:36:39.094534000 -0800 +@@ -69,7 +69,8 @@ INSTALL_RPCAPD=@INSTALL_RPCAPD@ # Standard CFLAGS for building members of a shared library -FULL_CFLAGS = $(CCOPT) @V_LIB_CCOPT_FAT@ $(SHLIB_CCOPT) $(INCLS) $(DEFS) $(CFLAGS) +FULL_CFLAGS = -I. $(CCOPT) @V_LIB_CCOPT_FAT@ $(SHLIB_CCOPT) $(INCLS) $(DEFS) $(CFLAGS) ++CXXFLAGS = -I. $(CCOPT) @V_LIB_CCOPT_FAT@ $(SHLIB_CCOPT) $(INCLS) $(DEFS) $(CFLAGS) INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@