Download raw body.
ports libpcap?
On 2026/02/27 14:04, Sebastian Reitenbach wrote:
> Hi,
>
> I forgot what I wanted to port or update some loong time ago, and indeed ran into this timeval
> vs. bpf_timeval issue that caused grief.
> Don't remember if I gave up, or was able to figure it out ;)
> Therefore definitely would appreciate a libpcap in ports.
>
> lightly tested, works for me on amd64.
>
> I agree with Kirill, using libepacp everywhere would be more intuitive.
>
> Sebastian
>
>
> On Fri, Feb 27, 2026 at 1:22 AM Kirill A. Korinsky <kirill@korins.ky> wrote:
>
> On Fri, 27 Feb 2026 00:07:17 +0100,
> Stuart Henderson <stu@spacehopper.org> wrote:
> >
> > [1 <text/plain; us-ascii (8bit)>]
> > that was intentional, it's in a non standard directory (similar layout
> > to ports/security/openssl, though I've just realised that moving the
> > manpages may be a good idea).
> >
>
> ... and the only way to get it is asking pkgconfig for libepcap
>
> Well, it seems to work, but I still think that name it libepcap everywhere
> is cleaner.
here goes. on the one hand, renaming the library makes it significantly
more hassle to patch ports to use it, on the other it no longer needs to
go in a subdir so no more rpath, and "make port-lib-depends-check" works.
updated version of the libpcap port attached, and diff for wireshark and
a bonus one for nmap (including an update) to use it.
(+CC nmap maintainer, any feedback?).
further notes on the nmap update:
- this takes it into a version using the NPSL; newer versions of the
annotated license have clarified thing that i had an issue with before;
i have concluded that this is no longer a blocker as far as ports goes.
(i see that debian have too, and they're usually as fussy as me ;)
- i switched from a "single multipackage" port to a standard port,
deps need revision bumps (net/librenms net/py-nmap net/p5-Nmap-Scanner
net/p5-Nmap-Parser)
Index: net/wireshark/Makefile
===================================================================
RCS file: /cvs/ports/net/wireshark/Makefile,v
diff -u -p -r1.176 Makefile
--- net/wireshark/Makefile 26 Feb 2026 10:21:38 -0000 1.176
+++ net/wireshark/Makefile 3 Mar 2026 20:41:01 -0000
@@ -4,19 +4,15 @@ COMMENT-main = graphical network protoco
COMMENT-text = network protocol analyzer
DPB_PROPERTIES = parallel
-V = 4.4.14
-PORTROACH = limit:^4\.4\.
-#PORTROACH = limitw:1,even # 4.6 needs newer libpcap
+V = 4.6.4
+PORTROACH = limitw:1,even
DISTNAME = wireshark-$V
PKGNAME-main = wireshark-$V
PKGNAME-text = tshark-$V
-# keep above 7.8-stable
-REVISION = 0
-
-SHARED_LIBS += wsutil 4.0
-SHARED_LIBS += wiretap 4.0
-SHARED_LIBS += wireshark 4.0
+SHARED_LIBS += wsutil 5.0
+SHARED_LIBS += wiretap 5.0
+SHARED_LIBS += wireshark 5.0
CATEGORIES = net security x11
@@ -51,12 +47,12 @@ MODLUA_SA = Yes
MODLUA_RUNDEP = No
MODPY_RUNDEP = No
-cWANTLIB += c gcrypt glib-2.0 m pcap speexdsp
+cWANTLIB += c epcap gcrypt glib-2.0 m speexdsp
WANTLIB-text = ${cWANTLIB} ${MODLUA_WANTLIB}
WANTLIB-text += bcg729 brotlidec cares gmodule-2.0 gnutls lz4 maxminddb
WANTLIB-text += nghttp2 nghttp3 opencore-amrnb opus pcre2-8 smi snappy
-WANTLIB-text += spandsp ssh xml2 z zstd
+WANTLIB-text += spandsp ssh xml2 xxhash z zstd
WANTLIB-main = ${cWANTLIB} ${COMPILER_LIBCXX}
WANTLIB-main += minizip wireshark wiretap wsutil
@@ -92,10 +88,12 @@ LIB_DEPENDS-text = ${MODLUA_LIB_DEPENDS}
devel/pcre2 \
net/libcares \
net/libmaxminddb \
+ net/libpcap \
net/libsmi \
security/gnutls \
security/libgcrypt \
security/libssh \
+ sysutils/xxhash \
telephony/bcg729 \
telephony/spandsp \
textproc/libxml \
Index: net/wireshark/distinfo
===================================================================
RCS file: /cvs/ports/net/wireshark/distinfo,v
diff -u -p -r1.110 distinfo
--- net/wireshark/distinfo 26 Feb 2026 10:21:38 -0000 1.110
+++ net/wireshark/distinfo 3 Mar 2026 20:41:01 -0000
@@ -1,2 +1,2 @@
-SHA256 (wireshark-4.4.14.tar.xz) = yRExML0rN5Gf3PV19xBGnOORlguq/zGRHjKIRp5qjo0=
-SIZE (wireshark-4.4.14.tar.xz) = 46874836
+SHA256 (wireshark-4.6.4.tar.xz) = ++qz2FxsildjyNm3/iC1xpyp+efyuCS+3HMTW9yjMuI=
+SIZE (wireshark-4.6.4.tar.xz) = 50566640
Index: net/wireshark/patches/patch-CMakeLists_txt
===================================================================
RCS file: net/wireshark/patches/patch-CMakeLists_txt
diff -N net/wireshark/patches/patch-CMakeLists_txt
--- net/wireshark/patches/patch-CMakeLists_txt 20 Feb 2025 16:09:51 -0000 1.24
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,16 +0,0 @@
-Avoid the broken libwsutil.so that gets generated with -pie -shared
-(probably following tools/clang/lib/Driver/Tools.cpp r1.13 "push back
--pie to the linker if -pie is specified").
-
-Index: CMakeLists.txt
---- CMakeLists.txt.orig
-+++ CMakeLists.txt
-@@ -1173,7 +1173,7 @@ endif()
-
- include(CheckCLinkerFlag)
-
--if(NOT CMAKE_C_COMPILER_ID MATCHES "MSVC" AND NOT OSS_FUZZ)
-+if(NOT CMAKE_C_COMPILER_ID MATCHES "MSVC" AND NOT OSS_FUZZ AND NOT CMAKE_SYSTEM_NAME STREQUAL OpenBSD)
- #
- # The -pie linker option produces a position-independent executable.
- # Some Linux distributions have this enabled by default in the compiler,
Index: net/wireshark/patches/patch-capture_capture-pcap-util_c
===================================================================
RCS file: /cvs/ports/net/wireshark/patches/patch-capture_capture-pcap-util_c,v
diff -u -p -r1.6 patch-capture_capture-pcap-util_c
--- net/wireshark/patches/patch-capture_capture-pcap-util_c 29 Aug 2024 08:12:27 -0000 1.6
+++ net/wireshark/patches/patch-capture_capture-pcap-util_c 3 Mar 2026 20:41:01 -0000
@@ -1,4 +1,4 @@
-hunks 1/2: ioctl is needed on !linux
+hunks 1/2: ioctl is needed on !linux too
hunk 3: pcap_findalldevs() doesn't include controllers dumpable via
usbpcap, do a separate lookup and add to the list
@@ -17,14 +17,14 @@ Index: capture/capture-pcap-util.c
/*
@@ -44,8 +46,6 @@
*/
- #if defined(HAVE_PCAP_CREATE) && defined(__linux__)
+ #if defined(__linux__)
-#include <sys/ioctl.h>
-
/*
* If we're building for a Linux version that supports bonding,
* HAVE_BONDING will be defined.
-@@ -817,6 +817,23 @@ get_interface_list_findalldevs(int *err, char **err_st
+@@ -816,6 +816,23 @@ get_interface_list_findalldevs(int *err, char **err_st
if_info_ip(if_info, dev);
}
pcap_freealldevs(alldevs);
Index: net/wireshark/patches/patch-cmake_modules_FindPCAP_cmake
===================================================================
RCS file: net/wireshark/patches/patch-cmake_modules_FindPCAP_cmake
diff -N net/wireshark/patches/patch-cmake_modules_FindPCAP_cmake
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ net/wireshark/patches/patch-cmake_modules_FindPCAP_cmake 3 Mar 2026 20:41:01 -0000
@@ -0,0 +1,42 @@
+- use ports libpcap
+
+Index: cmake/modules/FindPCAP.cmake
+--- cmake/modules/FindPCAP.cmake.orig
++++ cmake/modules/FindPCAP.cmake
+@@ -14,7 +14,7 @@ FindWSWinLibs("libpcap-*" "PCAP_HINTS")
+ #
+ if(NOT USE_REPOSITORY)
+ find_package(PkgConfig)
+- pkg_search_module(PC_PCAP libpcap)
++ pkg_search_module(PC_PCAP libepcap)
+ endif()
+
+ if(NOT PC_PCAP_FOUND AND NOT WIN32)
+@@ -135,17 +135,7 @@ if (WIN32 AND (CMAKE_CROSSCOMPILING OR USE_MSYSTEM))
+ #VALIDATOR pcap_include_check
+ )
+ else()
+- find_path(PCAP_INCLUDE_DIR
+- NAMES
+- pcap/pcap.h
+- HINTS
+- ${PC_PCAP_INCLUDE_DIRS}
+- ${PCAP_CONFIG_INCLUDE_DIRS}
+- "${PCAP_HINTS}/Include"
+- PATHS
+- "${CMAKE_SOURCE_DIR}/libpcap"
+- #VALIDATOR pcap_include_check
+- )
++ set(PCAP_INCLUDE_DIR ${PC_PCAP_INCLUDE_DIRS})
+ endif()
+
+ # On Windows we load wpcap.dll explicitly and probe its functions in
+@@ -157,7 +147,7 @@ if(WIN32)
+ else()
+ find_library(PCAP_LIBRARY
+ NAMES
+- pcap
++ epcap
+ HINTS
+ ${PC_PCAP_LIBRARY_DIRS}
+ ${PCAP_CONFIG_LIBRARY_DIRS}
Index: net/wireshark/patches/patch-tools_radiotap-gen_CMakeLists_txt
===================================================================
RCS file: net/wireshark/patches/patch-tools_radiotap-gen_CMakeLists_txt
diff -N net/wireshark/patches/patch-tools_radiotap-gen_CMakeLists_txt
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ net/wireshark/patches/patch-tools_radiotap-gen_CMakeLists_txt 3 Mar 2026 20:41:01 -0000
@@ -0,0 +1,10 @@
+Index: tools/radiotap-gen/CMakeLists.txt
+--- tools/radiotap-gen/CMakeLists.txt.orig
++++ tools/radiotap-gen/CMakeLists.txt
+@@ -4,5 +4,6 @@ if(UNIX)
+ add_executable( radiotap-gen radiotap-gen.c )
+
+ target_link_libraries( radiotap-gen pcap ${GLIB2_LIBRARIES} )
++ target_include_directories( radiotap-gen SYSTEM PRIVATE ${PCAP_INCLUDE_DIRS} )
+
+ endif()
Index: net/wireshark/patches/patch-tools_radiotap-gen_radiotap-gen_c
===================================================================
RCS file: net/wireshark/patches/patch-tools_radiotap-gen_radiotap-gen_c
diff -N net/wireshark/patches/patch-tools_radiotap-gen_radiotap-gen_c
--- net/wireshark/patches/patch-tools_radiotap-gen_radiotap-gen_c 5 Oct 2022 13:58:00 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-Index: tools/radiotap-gen/radiotap-gen.c
---- tools/radiotap-gen/radiotap-gen.c.orig
-+++ tools/radiotap-gen/radiotap-gen.c
-@@ -66,7 +66,7 @@ static void gen_u_sig_pkts(pcap_dumper_t *dumper)
- {
- struct pcap_pkthdr hdr;
- struct complete_pkt pkt;
-- struct timeval ts;
-+ struct bpf_timeval ts;
- /*
- * Create the complete packet.
- *
Index: net/wireshark/pkg/PLIST-text
===================================================================
RCS file: /cvs/ports/net/wireshark/pkg/PLIST-text,v
diff -u -p -r1.21 PLIST-text
--- net/wireshark/pkg/PLIST-text 29 Aug 2024 08:12:27 -0000 1.21
+++ net/wireshark/pkg/PLIST-text 3 Mar 2026 20:41:01 -0000
@@ -7,7 +7,6 @@
@mode
@group
@bin bin/editcap
-@bin bin/idl2wrs
@bin bin/mergecap
@bin bin/mmdbresolve
@bin bin/randpkt
@@ -20,13 +19,6 @@
@lib lib/libwiretap.so.${LIBwiretap_VERSION}
@lib lib/libwsutil.so.${LIBwsutil_VERSION}
lib/wireshark/
-lib/wireshark/extcap/
-@bin lib/wireshark/extcap/androiddump
-@bin lib/wireshark/extcap/ciscodump
-@bin lib/wireshark/extcap/randpktdump
-@bin lib/wireshark/extcap/sshdump
-@bin lib/wireshark/extcap/udpdump
-@bin lib/wireshark/extcap/wifidump
lib/wireshark/plugins/
lib/wireshark/plugins/${WVER}/
lib/wireshark/plugins/${WVER}/codecs/
@@ -53,6 +45,14 @@ lib/wireshark/plugins/${WVER}/epan/
@so lib/wireshark/plugins/${WVER}/epan/wimaxmacphy.so
lib/wireshark/plugins/${WVER}/wiretap/
@so lib/wireshark/plugins/${WVER}/wiretap/usbdump.so
+libexec/wireshark/
+libexec/wireshark/extcap/
+@bin libexec/wireshark/extcap/androiddump
+@bin libexec/wireshark/extcap/ciscodump
+@bin libexec/wireshark/extcap/randpktdump
+@bin libexec/wireshark/extcap/sshdump
+@bin libexec/wireshark/extcap/udpdump
+@bin libexec/wireshark/extcap/wifidump
@man man/man1/androiddump.1
@man man/man1/capinfos.1
@man man/man1/captype.1
@@ -67,7 +67,10 @@ lib/wireshark/plugins/${WVER}/wiretap/
@man man/man1/randpktdump.1
@man man/man1/rawshark.1
@man man/man1/reordercap.1
+@man man/man1/sshdig.1
@man man/man1/sshdump.1
+@man man/man1/strato.1
+@man man/man1/stratoshark.1
@man man/man1/text2pcap.1
@man man/man1/tshark.1
@man man/man1/udpdump.1
@@ -77,6 +80,8 @@ lib/wireshark/plugins/${WVER}/wiretap/
share/doc/wireshark/
share/doc/wireshark/COPYING
share/doc/wireshark/README.xml-output
+share/doc/wireshark/Stratoshark Release Notes.html
+share/doc/wireshark/Wireshark Release Notes.html
share/doc/wireshark/androiddump.html
share/doc/wireshark/capinfos.html
share/doc/wireshark/captype.html
@@ -92,9 +97,11 @@ share/doc/wireshark/pdml2html.xsl
share/doc/wireshark/randpkt.html
share/doc/wireshark/randpktdump.html
share/doc/wireshark/rawshark.html
-share/doc/wireshark/release-notes.html
share/doc/wireshark/reordercap.html
+share/doc/wireshark/sshdig.html
share/doc/wireshark/sshdump.html
+share/doc/wireshark/strato.html
+share/doc/wireshark/stratoshark.html
share/doc/wireshark/text2pcap.html
share/doc/wireshark/tshark.html
share/doc/wireshark/udpdump.html
@@ -110,7 +117,6 @@ share/wireshark/diameter/
share/wireshark/diameter/AlcatelLucent.xml
share/wireshark/diameter/Cisco.xml
share/wireshark/diameter/CiscoSystems.xml
-share/wireshark/diameter/Custom.xml
share/wireshark/diameter/Ericsson.xml
share/wireshark/diameter/HP.xml
share/wireshark/diameter/Huawei.xml
@@ -131,6 +137,7 @@ share/wireshark/diameter/VerizonWireless
share/wireshark/diameter/Vodafone.xml
share/wireshark/diameter/chargecontrol.xml
share/wireshark/diameter/dictionary.dtd
+share/wireshark/diameter/dictionary.ent
share/wireshark/diameter/dictionary.xml
share/wireshark/diameter/eap.xml
share/wireshark/diameter/etsie2e4.xml
@@ -195,6 +202,7 @@ share/wireshark/radius/dictionary.arista
share/wireshark/radius/dictionary.aruba
share/wireshark/radius/dictionary.ascend
share/wireshark/radius/dictionary.ascend.illegal
+share/wireshark/radius/dictionary.ascend.illegal.extended
share/wireshark/radius/dictionary.asn
share/wireshark/radius/dictionary.audiocodes
share/wireshark/radius/dictionary.avaya
@@ -272,6 +280,7 @@ share/wireshark/radius/dictionary.iea
share/wireshark/radius/dictionary.infinera
share/wireshark/radius/dictionary.infoblox
share/wireshark/radius/dictionary.infonet
+share/wireshark/radius/dictionary.ingate
share/wireshark/radius/dictionary.ipunplugged
share/wireshark/radius/dictionary.issanni
share/wireshark/radius/dictionary.itk
Index: net/nmap/Makefile
===================================================================
RCS file: /cvs/ports/net/nmap/Makefile,v
diff -u -p -r1.154 Makefile
--- net/nmap/Makefile 18 Feb 2025 21:30:55 -0000 1.154
+++ net/nmap/Makefile 3 Mar 2026 20:41:01 -0000
@@ -1,67 +1,73 @@
-COMMENT-main= scan ports and fingerprint stack of network hosts
+COMMENT= scan ports and fingerprint stack of network hosts
-MODPY_DISTV= 7.92
-DISTNAME= nmap-${MODPY_DISTV}
-PKGNAME-main= ${DISTNAME}
-REVISION-main= 1
+DISTNAME= nmap-7.98
+
+# "grep version ndiff/pyproject.toml" (used in ndiff-x.yz.dist-info files)
+MODPY_DISTV= 7.96
CATEGORIES= net security
-SITES= ${HOMEPAGE}/dist/
EXTRACT_SUFX= .tgz
HOMEPAGE= https://www.nmap.org/
+SITES= https://www.nmap.org/dist/
MAINTAINER= JR Aquino <tanawts@gmail.com>
# NPSL, https://nmap.org/npsl/npsl-annotated.html
-# For <=7.92, https://nmap.org/misc/nmap-v7.80-license.txt may be used instead
-# XXX license needs checking over before updating beyond 7.92
PERMIT_PACKAGE= Yes
-MULTI_PACKAGES= -main
+WANTLIB= ${COMPILER_LIBCXX} ${MODLUA_WANTLIB} \
+ c crypto epcap m ssl ssh2 pcre2-8 z
+
+DEBUG_PACKAGES= ${BUILD_PACKAGES}
-COMPILER= base-clang ports-gcc base-gcc
+COMPILER= base-clang ports-gcc
USE_GMAKE= Yes
MODLUA_SA= Yes
-MODLUA_VERSION= 5.3
+MODLUA_VERSION= 5.4
MODULES= lang/python \
lang/lua
-DEBUG_PACKAGES= ${BUILD_PACKAGES}
-CONFIGURE_STYLE=autoconf
-AUTOCONF_VERSION=2.69
+CONFIGURE_STYLE= autoconf
+AUTOCONF_VERSION= 2.71
+AUTOCONF_DIR= ${WRKSRC} ${WRKSRC}/ncat ${WRKSRC}/nping ${WRKSRC}/nsock/src
-CONFIGURE_ENV= CFLAGS="${CFLAGS} -I${LOCALBASE}/include" \
- CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include -I${MODLUA_INCL_DIR}" \
+CONFIGURE_ENV= CFLAGS="${CFLAGS}" \
+ CPPFLAGS="-I${LOCALBASE}/include/libpcap -I${LOCALBASE}/include -I${MODLUA_INCL_DIR}" \
CXXFLAGS="${CXXFLAGS} -I${LOCALBASE}/include" \
- LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib ${MODLUA_LIB}" \
+ LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" \
YACC="${LOCALBASE}/bin/bison -y"
-# XXX uses internal copy of libpcap, previous attempts to deal with the
-# bpf_timeval changes in base libpcap have not been entirely successful
-CONFIGURE_ARGS= --with-libpcap=included \
- --with-openssl=/usr \
+CONFIGURE_ARGS= --with-openssl=/usr \
--with-liblua=${LOCALBASE} \
--with-libpcre=${LOCALBASE} \
--with-mandir=${LOCALBASE}/man \
+ --without-ndiff \
--without-nmap-update \
--without-zenmap \
--disable-nls
-WANTLIB-main= ${COMPILER_LIBCXX} ${MODLUA_WANTLIB} \
- c crypto m ssl ssh2 pcre z
-LIB_DEPENDS-main= ${MODLUA_LIB_DEPENDS} \
- devel/pcre \
+BUILD_DEPENDS= devel/bison
+LIB_DEPENDS= ${MODLUA_LIB_DEPENDS} \
+ devel/pcre2 \
+ net/libpcap \
security/libssh2
-BUILD_DEPENDS= devel/bison \
- devel/py-setuptools
-
post-extract:
- @cd ${WRKSRC} && rm -rf liblua/ libpcre/
+ cd ${WRKSRC}; rm -rf liblua libssh2 libpcap libpcre libz
+
+MODPY_PYBUILD= setuptools
+MODPY_BUILD_DIR= ${WRKSRC}/ndiff
-pre-configure:
- @cd ${WRKSRC}/nping ; env PATH=${PORTPATH} \
- AUTOCONF_VERSION=${AUTOCONF_VERSION} autoconf
+post-build:
+ ${MODPY_BUILD_TARGET}
+
+post-install:
+ ${MODPY_INSTALL_TARGET}
+ ${INSTALL_MAN} ${WRKSRC}/ndiff/docs/ndiff.1 ${PREFIX}/man/man1/
.include <bsd.port.mk>
+
+.if defined(DEBUG)
+FAKE_FLAGS= STRIP=:
+.endif
Index: net/nmap/distinfo
===================================================================
RCS file: /cvs/ports/net/nmap/distinfo,v
diff -u -p -r1.42 distinfo
--- net/nmap/distinfo 7 May 2024 15:19:43 -0000 1.42
+++ net/nmap/distinfo 3 Mar 2026 20:41:01 -0000
@@ -1,2 +1,2 @@
-SHA256 (nmap-7.92.tgz) = BkGD6mQtxMErGrO1NYzhzvfS5+Ef+ihJ8W0zn1txcRc=
-SIZE (nmap-7.92.tgz) = 12985468
+SHA256 (nmap-7.98.tgz) = jC8l0RwqKirnZEHL45b/p/CtcY21oUXZlnJp8cqDE3A=
+SIZE (nmap-7.98.tgz) = 14987565
Index: net/nmap/patches/patch-configure_ac
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-configure_ac,v
diff -u -p -r1.2 patch-configure_ac
--- net/nmap/patches/patch-configure_ac 4 Dec 2022 18:18:24 -0000 1.2
+++ net/nmap/patches/patch-configure_ac 3 Mar 2026 20:41:01 -0000
@@ -1,12 +1,42 @@
Index: configure.ac
--- configure.ac.orig
+++ configure.ac
-@@ -241,7 +241,7 @@ NDIFFDIR=ndiff
+@@ -439,7 +439,7 @@ AC_HELP_STRING([--with-libpcap=included], [Always use
+ [ case "$with_libpcap" in
+ yes)
+ AC_CHECK_HEADER(pcap.h,[
+- AC_CHECK_LIB(pcap, pcap_create,
++ AC_CHECK_LIB(epcap, pcap_create,
+ [have_libpcap=yes ])])
+ ;;
+ included)
+@@ -453,9 +453,9 @@ AC_HELP_STRING([--with-libpcap=included], [Always use
+ LDFLAGS="-L$with_libpcap/lib $LDFLAGS"
- # Do they want Ndiff?
- AC_ARG_WITH(ndiff, AC_HELP_STRING([--without-ndiff], [Skip installation of the Ndiff utility]), [], [with_ndiff=check])
--if $HAVE_PYTHON2 ; then : ;
-+if $HAVE_PYTHON ; then : ;
- else
- if test "$with_ndiff" = "check" ; then
- AC_MSG_WARN([Not building Ndiff because Python 2.x with x>=4 was not found])
+ AC_CHECK_HEADER(pcap.h,[
+- AC_CHECK_LIB(pcap, pcap_create,
++ AC_CHECK_LIB(epcap, pcap_create,
+ [have_libpcap=yes
+- LIBPCAP_INC=$with_libpcap/include
++ LIBPCAP_INC=$with_libpcap/include/libpcap
+ LIBPCAP_LIB=$with_libpcap/lib])])
+
+ LDFLAGS=$_ldflags
+@@ -476,7 +476,7 @@ if test $have_libpcap = yes; then
+
+ # link with -lpcap for the purposes of this test
+ LIBS_OLD="$LIBS"
+- LIBS="$LIBS -lpcap"
++ LIBS="$LIBS -lepcap"
+ PCAP_IS_SUITABLE([have_libpcap=yes], [have_libpcap=no], [have_libpcap=yes])
+ LIBS="$LIBS_OLD"
+ fi
+@@ -504,7 +504,7 @@ else
+ LIBS="$LIBS_OLD"
+
+ AC_DEFINE(HAVE_LIBPCAP, 1, [Have libpcap library])
+- LIBPCAP_LIBS="-lpcap"
++ LIBPCAP_LIBS="-lepcap"
+ PCAP_BUILD=""
+ PCAP_CLEAN=""
+ PCAP_DIST_CLEAN=""
Index: net/nmap/patches/patch-ncat_configure_ac
===================================================================
RCS file: net/nmap/patches/patch-ncat_configure_ac
diff -N net/nmap/patches/patch-ncat_configure_ac
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ net/nmap/patches/patch-ncat_configure_ac 3 Mar 2026 20:41:01 -0000
@@ -0,0 +1,39 @@
+Index: ncat/configure.ac
+--- ncat/configure.ac.orig
++++ ncat/configure.ac
+@@ -130,7 +130,7 @@ AC_HELP_STRING([--with-libpcap=included], [Always use
+ [ case "$with_libpcap" in
+ yes)
+ AC_CHECK_HEADER(pcap.h,[
+- AC_CHECK_LIB(pcap, pcap_create,
++ AC_CHECK_LIB(epcap, pcap_create,
+ [have_libpcap=yes ])])
+ ;;
+ included)
+@@ -144,9 +144,9 @@ AC_HELP_STRING([--with-libpcap=included], [Always use
+ LDFLAGS="-L$with_libpcap/lib $LDFLAGS"
+
+ AC_CHECK_HEADER(pcap.h,[
+- AC_CHECK_LIB(pcap, pcap_create,
++ AC_CHECK_LIB(epcap, pcap_create,
+ [have_libpcap=yes
+- LIBPCAP_INC=$with_libpcap/include
++ LIBPCAP_INC=$with_libpcap/include/libpcap
+ LIBPCAP_LIB=$with_libpcap/lib])])
+
+ LDFLAGS=$_ldflags
+@@ -166,12 +166,12 @@ if test $have_libpcap = yes; then
+
+ # link with -lpcap for the purposes of this test
+ LIBS_OLD="$LIBS"
+- LIBS="$LIBS -lpcap"
++ LIBS="$LIBS -lepcap"
+ PCAP_IS_SUITABLE([have_libpcap=yes], [have_libpcap=no], [have_libpcap=yes])
+ LIBS="$LIBS_OLD"
+ fi
+
+-PCAP_LIBS="-lpcap"
++PCAP_LIBS="-lepcap"
+ if test $have_libpcap = yes; then
+ PCAP_DEPENDS=""
+ PCAP_BUILD=""
Index: net/nmap/patches/patch-ndiff_ndiff_py
===================================================================
RCS file: net/nmap/patches/patch-ndiff_ndiff_py
diff -N net/nmap/patches/patch-ndiff_ndiff_py
--- net/nmap/patches/patch-ndiff_ndiff_py 18 Feb 2025 21:30:55 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,1183 +0,0 @@
-apply 2to3 and additional fixes
-
-Index: ndiff/ndiff.py
---- ndiff/ndiff.py.orig
-+++ ndiff/ndiff.py
-@@ -26,12 +26,14 @@ xml.__path__ = [x for x in xml.__path__ if "_xmlplus"
- import xml.sax
- import xml.sax.saxutils
- import xml.dom.minidom
--from StringIO import StringIO
-+from io import StringIO
-
- verbose = False
-
--NDIFF_XML_VERSION = u"1"
-+NDIFF_XML_VERSION = "1"
-
-+def cmp(x, y):
-+ return (x > y) - (x < y)
-
- class OverrideEntityResolver(xml.sax.handler.EntityResolver):
- """This class overrides the default behavior of xml.sax to download
-@@ -75,35 +77,35 @@ class Scan(object):
- def write_nmaprun_open(self, writer):
- attrs = {}
- if self.scanner is not None:
-- attrs[u"scanner"] = self.scanner
-+ attrs["scanner"] = self.scanner
- if self.args is not None:
-- attrs[u"args"] = self.args
-+ attrs["args"] = self.args
- if self.start_date is not None:
-- attrs[u"start"] = "%d" % time.mktime(self.start_date.timetuple())
-- attrs[u"startstr"] = self.start_date.strftime(
-+ attrs["start"] = "%d" % time.mktime(self.start_date.timetuple())
-+ attrs["startstr"] = self.start_date.strftime(
- "%a %b %d %H:%M:%S %Y")
- if self.version is not None:
-- attrs[u"version"] = self.version
-- writer.startElement(u"nmaprun", attrs)
-+ attrs["version"] = self.version
-+ writer.startElement("nmaprun", attrs)
-
- def write_nmaprun_close(self, writer):
-- writer.endElement(u"nmaprun")
-+ writer.endElement("nmaprun")
-
- def nmaprun_to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-- elem = document.createElement(u"nmaprun")
-+ elem = document.createElement("nmaprun")
- if self.scanner is not None:
-- elem.setAttribute(u"scanner", self.scanner)
-+ elem.setAttribute("scanner", self.scanner)
- if self.args is not None:
-- elem.setAttribute(u"args", self.args)
-+ elem.setAttribute("args", self.args)
- if self.start_date is not None:
- elem.setAttribute(
-- u"start", "%d" % time.mktime(self.start_date.timetuple()))
-+ "start", "%d" % time.mktime(self.start_date.timetuple()))
- elem.setAttribute(
-- u"startstr",
-+ "startstr",
- self.start_date.strftime("%a %b %d %H:%M:%S %Y"))
- if self.version is not None:
-- elem.setAttribute(u"version", self.version)
-+ elem.setAttribute("version", self.version)
- frag.appendChild(elem)
- return frag
-
-@@ -133,17 +135,17 @@ class Host(object):
-
- def format_name(self):
- """Return a human-readable identifier for this host."""
-- address_s = u", ".join(a.s for a in sorted(self.addresses))
-- hostname_s = u", ".join(sorted(self.hostnames))
-+ address_s = ", ".join(a.s for a in sorted(self.addresses))
-+ hostname_s = ", ".join(sorted(self.hostnames))
- if len(hostname_s) > 0:
- if len(address_s) > 0:
-- return u"%s (%s)" % (hostname_s, address_s)
-+ return "%s (%s)" % (hostname_s, address_s)
- else:
- return hostname_s
- elif len(address_s) > 0:
- return address_s
- else:
-- return u"<no name>"
-+ return "<no name>"
-
- def add_port(self, port):
- self.ports[port.spec] = port
-@@ -160,46 +162,46 @@ class Host(object):
- return state is None or state in self.extraports
-
- def extraports_string(self):
-- list = [(count, state) for (state, count) in self.extraports.items()]
-+ mylist = [(count, state) for (state, count) in list(self.extraports.items())]
- # Reverse-sort by count.
-- list.sort(reverse=True)
-- return u", ".join(
-- [u"%d %s ports" % (count, state) for (count, state) in list])
-+ mylist.sort(reverse=True)
-+ return ", ".join(
-+ ["%d %s ports" % (count, state) for (count, state) in mylist])
-
- def state_to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
- if self.state is not None:
-- elem = document.createElement(u"status")
-- elem.setAttribute(u"state", self.state)
-+ elem = document.createElement("status")
-+ elem.setAttribute("state", self.state)
- frag.appendChild(elem)
- return frag
-
- def hostname_to_dom_fragment(self, document, hostname):
- frag = document.createDocumentFragment()
-- elem = document.createElement(u"hostname")
-- elem.setAttribute(u"name", hostname)
-+ elem = document.createElement("hostname")
-+ elem.setAttribute("name", hostname)
- frag.appendChild(elem)
- return frag
-
- def extraports_to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-- for state, count in self.extraports.items():
-- elem = document.createElement(u"extraports")
-- elem.setAttribute(u"state", state)
-- elem.setAttribute(u"count", unicode(count))
-+ for state, count in mylist(self.extraports.items()):
-+ elem = document.createElement("extraports")
-+ elem.setAttribute("state", state)
-+ elem.setAttribute("count", str(count))
- frag.appendChild(elem)
- return frag
-
- def os_to_dom_fragment(self, document, os):
- frag = document.createDocumentFragment()
-- elem = document.createElement(u"osmatch")
-- elem.setAttribute(u"name", os)
-+ elem = document.createElement("osmatch")
-+ elem.setAttribute("name", os)
- frag.appendChild(elem)
- return frag
-
- def to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-- elem = document.createElement(u"host")
-+ elem = document.createElement("host")
-
- if self.state is not None:
- elem.appendChild(self.state_to_dom_fragment(document))
-@@ -208,13 +210,13 @@ class Host(object):
- elem.appendChild(addr.to_dom_fragment(document))
-
- if len(self.hostnames) > 0:
-- hostnames_elem = document.createElement(u"hostnames")
-+ hostnames_elem = document.createElement("hostnames")
- for hostname in self.hostnames:
- hostnames_elem.appendChild(
- self.hostname_to_dom_fragment(document, hostname))
- elem.appendChild(hostnames_elem)
-
-- ports_elem = document.createElement(u"ports")
-+ ports_elem = document.createElement("ports")
- ports_elem.appendChild(self.extraports_to_dom_fragment(document))
- for port in sorted(self.ports.values()):
- if not self.is_extraports(port.state):
-@@ -223,13 +225,13 @@ class Host(object):
- elem.appendChild(ports_elem)
-
- if len(self.os) > 0:
-- os_elem = document.createElement(u"os")
-+ os_elem = document.createElement("os")
- for os in self.os:
- os_elem.appendChild(self.os_to_dom_fragment(document, os))
- elem.appendChild(os_elem)
-
- if len(self.script_results) > 0:
-- hostscript_elem = document.createElement(u"hostscript")
-+ hostscript_elem = document.createElement("hostscript")
- for sr in self.script_results:
- hostscript_elem.appendChild(sr.to_dom_fragment(document))
- elem.appendChild(hostscript_elem)
-@@ -261,21 +263,21 @@ class Address(object):
- return self.s
-
- def new(type, s):
-- if type == u"ipv4":
-+ if type == "ipv4":
- return IPv4Address(s)
-- elif type == u"ipv6":
-+ elif type == "ipv6":
- return IPv6Address(s)
-- elif type == u"mac":
-+ elif type == "mac":
- return MACAddress(s)
- else:
-- raise ValueError(u"Unknown address type %s." % type)
-+ raise ValueError("Unknown address type %s." % type)
- new = staticmethod(new)
-
- def to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-- elem = document.createElement(u"address")
-- elem.setAttribute(u"addr", self.s)
-- elem.setAttribute(u"addrtype", self.type)
-+ elem = document.createElement("address")
-+ elem.setAttribute("addr", self.s)
-+ elem.setAttribute("addrtype", self.type)
- frag.appendChild(elem)
- return frag
-
-@@ -284,21 +286,21 @@ class Address(object):
-
-
- class IPv4Address(Address):
-- type = property(lambda self: u"ipv4")
-+ type = property(lambda self: "ipv4")
-
- def sort_key(self):
- return (0, self.s)
-
-
- class IPv6Address(Address):
-- type = property(lambda self: u"ipv6")
-+ type = property(lambda self: "ipv6")
-
- def sort_key(self):
- return (1, self.s)
-
-
- class MACAddress(Address):
-- type = property(lambda self: u"mac")
-+ type = property(lambda self: "mac")
-
- def sort_key(self):
- return (2, self.s)
-@@ -317,12 +319,12 @@ class Port(object):
-
- def state_string(self):
- if self.state is None:
-- return u"unknown"
-+ return "unknown"
- else:
-- return unicode(self.state)
-+ return str(self.state)
-
- def spec_string(self):
-- return u"%d/%s" % self.spec
-+ return "%d/%s" % self.spec
-
- def __hash__(self):
- return hash(self.spec)
-@@ -336,12 +338,12 @@ class Port(object):
-
- def to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-- elem = document.createElement(u"port")
-- elem.setAttribute(u"portid", unicode(self.spec[0]))
-- elem.setAttribute(u"protocol", self.spec[1])
-+ elem = document.createElement("port")
-+ elem.setAttribute("portid", str(self.spec[0]))
-+ elem.setAttribute("protocol", self.spec[1])
- if self.state is not None:
-- state_elem = document.createElement(u"state")
-- state_elem.setAttribute(u"state", self.state)
-+ state_elem = document.createElement("state")
-+ state_elem.setAttribute("state", self.state)
- elem.appendChild(state_elem)
- elem.appendChild(self.service.to_dom_fragment(document))
- for sr in self.script_results:
-@@ -385,7 +387,7 @@ class Service(object):
- if len(parts) == 0:
- return None
- else:
-- return u"/".join(parts)
-+ return "/".join(parts)
-
- def version_string(self):
- """Get a string like in the VERSION column of Nmap output."""
-@@ -395,17 +397,17 @@ class Service(object):
- if self.version is not None:
- parts.append(self.version)
- if self.extrainfo is not None:
-- parts.append(u"(%s)" % self.extrainfo)
-+ parts.append("(%s)" % self.extrainfo)
-
- if len(parts) == 0:
- return None
- else:
-- return u" ".join(parts)
-+ return " ".join(parts)
-
- def to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-- elem = document.createElement(u"service")
-- for attr in (u"name", u"product", u"version", u"extrainfo", u"tunnel"):
-+ elem = document.createElement("service")
-+ for attr in ("name", "product", "version", "extrainfo", "tunnel"):
- v = getattr(self, attr)
- if v is None:
- continue
-@@ -435,53 +437,53 @@ class ScriptResult(object):
- result = []
- lines = self.output.splitlines()
- if len(lines) > 0:
-- lines[0] = self.id + u": " + lines[0]
-+ lines[0] = self.id + ": " + lines[0]
- for line in lines[:-1]:
-- result.append(u"| " + line)
-+ result.append("| " + line)
- if len(lines) > 0:
-- result.append(u"|_ " + lines[-1])
-+ result.append("|_ " + lines[-1])
- return result
-
- def to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-- elem = document.createElement(u"script")
-- elem.setAttribute(u"id", self.id)
-- elem.setAttribute(u"output", self.output)
-+ elem = document.createElement("script")
-+ elem.setAttribute("id", self.id)
-+ elem.setAttribute("output", self.output)
- frag.appendChild(elem)
- return frag
-
-
- def format_banner(scan):
- """Format a startup banner more or less like Nmap does."""
-- scanner = u"Nmap"
-- if scan.scanner is not None and scan.scanner != u"nmap":
-+ scanner = "Nmap"
-+ if scan.scanner is not None and scan.scanner != "nmap":
- scanner = scan.scanner
- parts = [scanner]
- if scan.version is not None:
- parts.append(scan.version)
-- parts.append(u"scan")
-+ parts.append("scan")
- if scan.start_date is not None:
-- parts.append(u"initiated %s" % scan.start_date.strftime(
-+ parts.append("initiated %s" % scan.start_date.strftime(
- "%a %b %d %H:%M:%S %Y"))
- if scan.args is not None:
-- parts.append(u"as: %s" % scan.args)
-- return u" ".join(parts)
-+ parts.append("as: %s" % scan.args)
-+ return " ".join(parts)
-
-
- def print_script_result_diffs_text(title, script_results_a, script_results_b,
- script_result_diffs, f=sys.stdout):
-- table = Table(u"*")
-+ table = Table("*")
- for sr_diff in script_result_diffs:
- sr_diff.append_to_port_table(table)
- if len(table) > 0:
-- print >> f
-+ print(file=f)
- if len(script_results_b) == 0:
-- print >> f, u"-%s:" % title
-+ print("-%s:" % title, file=f)
- elif len(script_results_a) == 0:
-- print >> f, u"+%s:" % title
-+ print("+%s:" % title, file=f)
- else:
-- print >> f, u" %s:" % title
-- print >> f, table
-+ print(" %s:" % title, file=f)
-+ print(table, file=f)
-
-
- def script_result_diffs_to_dom_fragment(elem, script_results_a,
-@@ -489,13 +491,13 @@ def script_result_diffs_to_dom_fragment(elem, script_r
- if len(script_results_a) == 0 and len(script_results_b) == 0:
- return document.createDocumentFragment()
- elif len(script_results_b) == 0:
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- for sr in script_results_a:
- elem.appendChild(sr.to_dom_fragment(document))
- a_elem.appendChild(elem)
- return a_elem
- elif len(script_results_a) == 0:
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- for sr in script_results_b:
- elem.appendChild(sr.to_dom_fragment(document))
- b_elem.appendChild(elem)
-@@ -580,10 +582,10 @@ class ScanDiffText(ScanDiff):
- banner_a = format_banner(self.scan_a)
- banner_b = format_banner(self.scan_b)
- if banner_a != banner_b:
-- print >> self.f, u"-%s" % banner_a
-- print >> self.f, u"+%s" % banner_b
-+ print("-%s" % banner_a, file=self.f)
-+ print("+%s" % banner_b, file=self.f)
- elif verbose:
-- print >> self.f, u" %s" % banner_a
-+ print(" %s" % banner_a, file=self.f)
-
- def output_pre_scripts(self, pre_script_result_diffs):
- print_script_result_diffs_text("Pre-scan script results",
-@@ -596,7 +598,7 @@ class ScanDiffText(ScanDiff):
- post_script_result_diffs, self.f)
-
- def output_host_diff(self, h_diff):
-- print >> self.f
-+ print(file=self.f)
- h_diff.print_text(self.f)
-
- def output_ending(self):
-@@ -621,8 +623,8 @@ class ScanDiffXML(ScanDiff):
-
- def output_beginning(self):
- self.writer.startDocument()
-- self.writer.startElement(u"nmapdiff", {u"version": NDIFF_XML_VERSION})
-- self.writer.startElement(u"scandiff", {})
-+ self.writer.startElement("nmapdiff", {"version": NDIFF_XML_VERSION})
-+ self.writer.startElement("scandiff", {})
-
- if self.nmaprun_differs():
- self.writer.frag_a(
-@@ -635,7 +637,7 @@ class ScanDiffXML(ScanDiff):
-
- def output_pre_scripts(self, pre_script_result_diffs):
- if len(pre_script_result_diffs) > 0 or verbose:
-- prescript_elem = self.document.createElement(u"prescript")
-+ prescript_elem = self.document.createElement("prescript")
- frag = script_result_diffs_to_dom_fragment(
- prescript_elem, self.scan_a.pre_script_results,
- self.scan_b.pre_script_results, pre_script_result_diffs,
-@@ -645,7 +647,7 @@ class ScanDiffXML(ScanDiff):
-
- def output_post_scripts(self, post_script_result_diffs):
- if len(post_script_result_diffs) > 0 or verbose:
-- postscript_elem = self.document.createElement(u"postscript")
-+ postscript_elem = self.document.createElement("postscript")
- frag = script_result_diffs_to_dom_fragment(
- postscript_elem, self.scan_a.post_script_results,
- self.scan_b.post_script_results, post_script_result_diffs,
-@@ -659,8 +661,8 @@ class ScanDiffXML(ScanDiff):
- frag.unlink()
-
- def output_ending(self):
-- self.writer.endElement(u"scandiff")
-- self.writer.endElement(u"nmapdiff")
-+ self.writer.endElement("scandiff")
-+ self.writer.endElement("nmapdiff")
- self.writer.endDocument()
-
-
-@@ -718,9 +720,9 @@ class HostDiff(object):
- self.cost += os_cost
-
- extraports_a = tuple((count, state)
-- for (state, count) in self.host_a.extraports.items())
-+ for (state, count) in list(self.host_a.extraports.items()))
- extraports_b = tuple((count, state)
-- for (state, count) in self.host_b.extraports.items())
-+ for (state, count) in list(self.host_b.extraports.items()))
- if extraports_a != extraports_b:
- self.extraports_changed = True
- self.cost += 1
-@@ -746,69 +748,69 @@ class HostDiff(object):
- # Names and addresses.
- if self.id_changed:
- if host_a.state is not None:
-- print >> f, u"-%s:" % host_a.format_name()
-+ print("-%s:" % host_a.format_name(), file=f)
- if self.host_b.state is not None:
-- print >> f, u"+%s:" % host_b.format_name()
-+ print("+%s:" % host_b.format_name(), file=f)
- else:
-- print >> f, u" %s:" % host_a.format_name()
-+ print(" %s:" % host_a.format_name(), file=f)
-
- # State.
- if self.state_changed:
- if host_a.state is not None:
-- print >> f, u"-Host is %s." % host_a.state
-+ print("-Host is %s." % host_a.state, file=f)
- if host_b.state is not None:
-- print >> f, u"+Host is %s." % host_b.state
-+ print("+Host is %s." % host_b.state, file=f)
- elif verbose:
-- print >> f, u" Host is %s." % host_b.state
-+ print(" Host is %s." % host_b.state, file=f)
-
- # Extraports.
- if self.extraports_changed:
- if len(host_a.extraports) > 0:
-- print >> f, u"-Not shown: %s" % host_a.extraports_string()
-+ print("-Not shown: %s" % host_a.extraports_string(), file=f)
- if len(host_b.extraports) > 0:
-- print >> f, u"+Not shown: %s" % host_b.extraports_string()
-+ print("+Not shown: %s" % host_b.extraports_string(), file=f)
- elif verbose:
- if len(host_a.extraports) > 0:
-- print >> f, u" Not shown: %s" % host_a.extraports_string()
-+ print(" Not shown: %s" % host_a.extraports_string(), file=f)
-
- # Port table.
-- port_table = Table(u"** * * *")
-+ port_table = Table("** * * *")
- if host_a.state is None:
-- mark = u"+"
-+ mark = "+"
- elif host_b.state is None:
-- mark = u"-"
-+ mark = "-"
- else:
-- mark = u" "
-- port_table.append((mark, u"PORT", u"STATE", u"SERVICE", u"VERSION"))
-+ mark = " "
-+ port_table.append((mark, "PORT", "STATE", "SERVICE", "VERSION"))
-
- for port in self.ports:
- port_diff = self.port_diffs[port]
- port_diff.append_to_port_table(port_table, host_a, host_b)
-
- if len(port_table) > 1:
-- print >> f, port_table
-+ print(port_table, file=f)
-
- # OS changes.
- if self.os_changed or verbose:
- if len(host_a.os) > 0:
- if len(host_b.os) > 0:
-- print >> f, u" OS details:"
-+ print(" OS details:", file=f)
- else:
-- print >> f, u"-OS details:"
-+ print("-OS details:", file=f)
- elif len(host_b.os) > 0:
-- print >> f, u"+OS details:"
-+ print("+OS details:", file=f)
- # os_diffs is a list of 5-tuples returned by
- # difflib.SequenceMatcher.
- for op, i1, i2, j1, j2 in self.os_diffs:
- if op == "replace" or op == "delete":
- for i in range(i1, i2):
-- print >> f, "- %s" % host_a.os[i]
-+ print("- %s" % host_a.os[i], file=f)
- if op == "replace" or op == "insert":
- for i in range(j1, j2):
-- print >> f, "+ %s" % host_b.os[i]
-+ print("+ %s" % host_b.os[i], file=f)
- if op == "equal":
- for i in range(i1, i2):
-- print >> f, " %s" % host_a.os[i]
-+ print(" %s" % host_a.os[i], file=f)
-
- print_script_result_diffs_text("Host script results",
- host_a.script_results, host_b.script_results,
-@@ -819,32 +821,32 @@ class HostDiff(object):
- host_b = self.host_b
-
- frag = document.createDocumentFragment()
-- hostdiff_elem = document.createElement(u"hostdiff")
-+ hostdiff_elem = document.createElement("hostdiff")
- frag.appendChild(hostdiff_elem)
-
- if host_a.state is None or host_b.state is None:
- # The host is missing in one scan. Output the whole thing.
- if host_a.state is not None:
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- a_elem.appendChild(host_a.to_dom_fragment(document))
- hostdiff_elem.appendChild(a_elem)
- elif host_b.state is not None:
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- b_elem.appendChild(host_b.to_dom_fragment(document))
- hostdiff_elem.appendChild(b_elem)
- return frag
-
-- host_elem = document.createElement(u"host")
-+ host_elem = document.createElement("host")
-
- # State.
- if host_a.state == host_b.state:
- if verbose:
- host_elem.appendChild(host_a.state_to_dom_fragment(document))
- else:
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- a_elem.appendChild(host_a.state_to_dom_fragment(document))
- host_elem.appendChild(a_elem)
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- b_elem.appendChild(host_b.state_to_dom_fragment(document))
- host_elem.appendChild(b_elem)
-
-@@ -853,31 +855,31 @@ class HostDiff(object):
- addrset_b = set(host_b.addresses)
- for addr in sorted(addrset_a.intersection(addrset_b)):
- host_elem.appendChild(addr.to_dom_fragment(document))
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- for addr in sorted(addrset_a - addrset_b):
- a_elem.appendChild(addr.to_dom_fragment(document))
- if a_elem.hasChildNodes():
- host_elem.appendChild(a_elem)
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- for addr in sorted(addrset_b - addrset_a):
- b_elem.appendChild(addr.to_dom_fragment(document))
- if b_elem.hasChildNodes():
- host_elem.appendChild(b_elem)
-
- # Host names.
-- hostnames_elem = document.createElement(u"hostnames")
-+ hostnames_elem = document.createElement("hostnames")
- hostnameset_a = set(host_a.hostnames)
- hostnameset_b = set(host_b.hostnames)
- for hostname in sorted(hostnameset_a.intersection(hostnameset_b)):
- hostnames_elem.appendChild(
- host_a.hostname_to_dom_fragment(document, hostname))
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- for hostname in sorted(hostnameset_a - hostnameset_b):
- a_elem.appendChild(
- host_a.hostname_to_dom_fragment(document, hostname))
- if a_elem.hasChildNodes():
- hostnames_elem.appendChild(a_elem)
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- for hostname in sorted(hostnameset_b - hostnameset_a):
- b_elem.appendChild(
- host_b.hostname_to_dom_fragment(document, hostname))
-@@ -886,15 +888,15 @@ class HostDiff(object):
- if hostnames_elem.hasChildNodes():
- host_elem.appendChild(hostnames_elem)
-
-- ports_elem = document.createElement(u"ports")
-+ ports_elem = document.createElement("ports")
- # Extraports.
- if host_a.extraports == host_b.extraports:
- ports_elem.appendChild(host_a.extraports_to_dom_fragment(document))
- else:
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- a_elem.appendChild(host_a.extraports_to_dom_fragment(document))
- ports_elem.appendChild(a_elem)
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- b_elem.appendChild(host_b.extraports_to_dom_fragment(document))
- ports_elem.appendChild(b_elem)
- # Port list.
-@@ -910,18 +912,18 @@ class HostDiff(object):
-
- # OS changes.
- if self.os_changed or verbose:
-- os_elem = document.createElement(u"os")
-+ os_elem = document.createElement("os")
- # os_diffs is a list of 5-tuples returned by
- # difflib.SequenceMatcher.
- for op, i1, i2, j1, j2 in self.os_diffs:
- if op == "replace" or op == "delete":
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- for i in range(i1, i2):
- a_elem.appendChild(host_a.os_to_dom_fragment(
- document, host_a.os[i]))
- os_elem.appendChild(a_elem)
- if op == "replace" or op == "insert":
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- for i in range(j1, j2):
- b_elem.appendChild(host_b.os_to_dom_fragment(
- document, host_b.os[i]))
-@@ -935,7 +937,7 @@ class HostDiff(object):
-
- # Host script changes.
- if len(self.script_result_diffs) > 0 or verbose:
-- hostscript_elem = document.createElement(u"hostscript")
-+ hostscript_elem = document.createElement("hostscript")
- host_elem.appendChild(script_result_diffs_to_dom_fragment(
- hostscript_elem, host_a.script_results,
- host_b.script_results, self.script_result_diffs,
-@@ -988,38 +990,38 @@ class PortDiff(object):
- self.port_b.service.version_string()]
- if a_columns == b_columns:
- if verbose or self.script_result_diffs > 0:
-- table.append([u" "] + a_columns)
-+ table.append([" "] + a_columns)
- else:
- if not host_a.is_extraports(self.port_a.state):
-- table.append([u"-"] + a_columns)
-+ table.append(["-"] + a_columns)
- if not host_b.is_extraports(self.port_b.state):
-- table.append([u"+"] + b_columns)
-+ table.append(["+"] + b_columns)
-
- for sr_diff in self.script_result_diffs:
- sr_diff.append_to_port_table(table)
-
- def to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-- portdiff_elem = document.createElement(u"portdiff")
-+ portdiff_elem = document.createElement("portdiff")
- frag.appendChild(portdiff_elem)
- if (self.port_a.spec == self.port_b.spec and
- self.port_a.state == self.port_b.state):
-- port_elem = document.createElement(u"port")
-- port_elem.setAttribute(u"portid", unicode(self.port_a.spec[0]))
-- port_elem.setAttribute(u"protocol", self.port_a.spec[1])
-+ port_elem = document.createElement("port")
-+ port_elem.setAttribute("portid", str(self.port_a.spec[0]))
-+ port_elem.setAttribute("protocol", self.port_a.spec[1])
- if self.port_a.state is not None:
-- state_elem = document.createElement(u"state")
-- state_elem.setAttribute(u"state", self.port_a.state)
-+ state_elem = document.createElement("state")
-+ state_elem.setAttribute("state", self.port_a.state)
- port_elem.appendChild(state_elem)
- if self.port_a.service == self.port_b.service:
- port_elem.appendChild(
- self.port_a.service.to_dom_fragment(document))
- else:
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- a_elem.appendChild(
- self.port_a.service.to_dom_fragment(document))
- port_elem.appendChild(a_elem)
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- b_elem.appendChild(
- self.port_b.service.to_dom_fragment(document))
- port_elem.appendChild(b_elem)
-@@ -1027,10 +1029,10 @@ class PortDiff(object):
- port_elem.appendChild(sr_diff.to_dom_fragment(document))
- portdiff_elem.appendChild(port_elem)
- else:
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- a_elem.appendChild(self.port_a.to_dom_fragment(document))
- portdiff_elem.appendChild(a_elem)
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- b_elem.appendChild(self.port_b.to_dom_fragment(document))
- portdiff_elem.appendChild(b_elem)
-
-@@ -1085,13 +1087,13 @@ class ScriptResultDiff(object):
- for op, i1, i2, j1, j2 in diffs.get_opcodes():
- if op == "replace" or op == "delete":
- for k in range(i1, i2):
-- table.append_raw(u"-" + a_lines[k])
-+ table.append_raw("-" + a_lines[k])
- if op == "replace" or op == "insert":
- for k in range(j1, j2):
-- table.append_raw(u"+" + b_lines[k])
-+ table.append_raw("+" + b_lines[k])
- if op == "equal":
- for k in range(i1, i2):
-- table.append_raw(u" " + a_lines[k])
-+ table.append_raw(" " + a_lines[k])
-
- def to_dom_fragment(self, document):
- frag = document.createDocumentFragment()
-@@ -1101,11 +1103,11 @@ class ScriptResultDiff(object):
- frag.appendChild(self.sr_a.to_dom_fragment(document))
- else:
- if self.sr_a is not None:
-- a_elem = document.createElement(u"a")
-+ a_elem = document.createElement("a")
- a_elem.appendChild(self.sr_a.to_dom_fragment(document))
- frag.appendChild(a_elem)
- if self.sr_b is not None:
-- b_elem = document.createElement(u"b")
-+ b_elem = document.createElement("b")
- b_elem.appendChild(self.sr_b.to_dom_fragment(document))
- frag.appendChild(b_elem)
- return frag
-@@ -1119,7 +1121,7 @@ class Table(object):
- copied to the output."""
- self.widths = []
- self.rows = []
-- self.prefix = u""
-+ self.prefix = ""
- self.padding = []
- j = 0
- while j < len(template) and template[j] != "*":
-@@ -1144,7 +1146,7 @@ class Table(object):
-
- for i in range(len(row)):
- if row[i] is None:
-- s = u""
-+ s = ""
- else:
- s = str(row[i])
- if i == len(self.widths):
-@@ -1166,7 +1168,7 @@ class Table(object):
- for row in self.rows:
- parts = [self.prefix]
- i = 0
-- if isinstance(row, basestring):
-+ if isinstance(row, str):
- # A raw string.
- lines.append(row)
- else:
-@@ -1175,13 +1177,13 @@ class Table(object):
- if i < len(self.padding):
- parts.append(self.padding[i])
- i += 1
-- lines.append(u"".join(parts).rstrip())
-- return u"\n".join(lines)
-+ lines.append("".join(parts).rstrip())
-+ return "\n".join(lines)
-
-
- def warn(str):
- """Print a warning to stderr."""
-- print >> sys.stderr, str
-+ print(str, file=sys.stderr)
-
-
- class NmapContentHandler(xml.sax.handler.ContentHandler):
-@@ -1201,24 +1203,24 @@ class NmapContentHandler(xml.sax.handler.ContentHandle
- self.skip_over = False
-
- self._start_elem_handlers = {
-- u"nmaprun": self._start_nmaprun,
-- u"host": self._start_host,
-- u"hosthint": self._start_hosthint,
-- u"status": self._start_status,
-- u"address": self._start_address,
-- u"hostname": self._start_hostname,
-- u"extraports": self._start_extraports,
-- u"port": self._start_port,
-- u"state": self._start_state,
-- u"service": self._start_service,
-- u"script": self._start_script,
-- u"osmatch": self._start_osmatch,
-- u"finished": self._start_finished,
-+ "nmaprun": self._start_nmaprun,
-+ "host": self._start_host,
-+ "hosthint": self._start_hosthint,
-+ "status": self._start_status,
-+ "address": self._start_address,
-+ "hostname": self._start_hostname,
-+ "extraports": self._start_extraports,
-+ "port": self._start_port,
-+ "state": self._start_state,
-+ "service": self._start_service,
-+ "script": self._start_script,
-+ "osmatch": self._start_osmatch,
-+ "finished": self._start_finished,
- }
- self._end_elem_handlers = {
-- u'host': self._end_host,
-- u"hosthint": self._end_hosthint,
-- u'port': self._end_port,
-+ 'host': self._end_host,
-+ "hosthint": self._end_hosthint,
-+ 'port': self._end_port,
- }
-
- def parent_element(self):
-@@ -1248,72 +1250,72 @@ class NmapContentHandler(xml.sax.handler.ContentHandle
- def _start_nmaprun(self, name, attrs):
- assert self.parent_element() is None
- if "start" in attrs:
-- start_timestamp = int(attrs.get(u"start"))
-+ start_timestamp = int(attrs.get("start"))
- self.scan.start_date = datetime.datetime.fromtimestamp(
- start_timestamp)
-- self.scan.scanner = attrs.get(u"scanner")
-- self.scan.args = attrs.get(u"args")
-- self.scan.version = attrs.get(u"version")
-+ self.scan.scanner = attrs.get("scanner")
-+ self.scan.args = attrs.get("args")
-+ self.scan.version = attrs.get("version")
-
- def _start_host(self, name, attrs):
-- assert self.parent_element() == u"nmaprun"
-+ assert self.parent_element() == "nmaprun"
- self.current_host = Host()
- self.scan.hosts.append(self.current_host)
-
- def _start_hosthint(self, name, attrs):
-- assert self.parent_element() == u"nmaprun"
-+ assert self.parent_element() == "nmaprun"
- self.skip_over = True
-
- def _start_status(self, name, attrs):
-- assert self.parent_element() == u"host"
-+ assert self.parent_element() == "host"
- assert self.current_host is not None
-- state = attrs.get(u"state")
-+ state = attrs.get("state")
- if state is None:
-- warn(u'%s element of host %s is missing the "state" attribute; '
-- 'assuming \unknown\.' % (
-+ warn('%s element of host %s is missing the "state" attribute; '
-+ 'assuming \\unknown\.' % (
- name, self.current_host.format_name()))
- return
- self.current_host.state = state
-
- def _start_address(self, name, attrs):
-- assert self.parent_element() == u"host"
-+ assert self.parent_element() == "host"
- assert self.current_host is not None
-- addr = attrs.get(u"addr")
-+ addr = attrs.get("addr")
- if addr is None:
-- warn(u'%s element of host %s is missing the "addr" '
-+ warn('%s element of host %s is missing the "addr" '
- 'attribute; skipping.' % (
- name, self.current_host.format_name()))
- return
-- addrtype = attrs.get(u"addrtype", u"ipv4")
-+ addrtype = attrs.get("addrtype", "ipv4")
- self.current_host.add_address(Address.new(addrtype, addr))
-
- def _start_hostname(self, name, attrs):
-- assert self.parent_element() == u"hostnames"
-+ assert self.parent_element() == "hostnames"
- assert self.current_host is not None
-- hostname = attrs.get(u"name")
-+ hostname = attrs.get("name")
- if hostname is None:
-- warn(u'%s element of host %s is missing the "name" '
-+ warn('%s element of host %s is missing the "name" '
- 'attribute; skipping.' % (
- name, self.current_host.format_name()))
- return
- self.current_host.add_hostname(hostname)
-
- def _start_extraports(self, name, attrs):
-- assert self.parent_element() == u"ports"
-+ assert self.parent_element() == "ports"
- assert self.current_host is not None
-- state = attrs.get(u"state")
-+ state = attrs.get("state")
- if state is None:
-- warn(u'%s element of host %s is missing the "state" '
-+ warn('%s element of host %s is missing the "state" '
- 'attribute; assuming "unknown".' % (
- name, self.current_host.format_name()))
- state = None
- if state in self.current_host.extraports:
-- warn(u'Duplicate extraports state "%s" in host %s.' % (
-+ warn('Duplicate extraports state "%s" in host %s.' % (
- state, self.current_host.format_name()))
-
-- count = attrs.get(u"count")
-+ count = attrs.get("count")
- if count is None:
-- warn(u'%s element of host %s is missing the "count" '
-+ warn('%s element of host %s is missing the "count" '
- 'attribute; assuming 0.' % (
- name, self.current_host.format_name()))
- count = 0
-@@ -1321,99 +1323,99 @@ class NmapContentHandler(xml.sax.handler.ContentHandle
- try:
- count = int(count)
- except ValueError:
-- warn(u"Can't convert extraports count \"%s\" "
-+ warn("Can't convert extraports count \"%s\" "
- "to an integer in host %s; assuming 0." % (
-- attrs[u"count"], self.current_host.format_name()))
-+ attrs["count"], self.current_host.format_name()))
- count = 0
- self.current_host.extraports[state] = count
-
- def _start_port(self, name, attrs):
-- assert self.parent_element() == u"ports"
-+ assert self.parent_element() == "ports"
- assert self.current_host is not None
-- portid_str = attrs.get(u"portid")
-+ portid_str = attrs.get("portid")
- if portid_str is None:
-- warn(u'%s element of host %s missing the "portid" '
-+ warn('%s element of host %s missing the "portid" '
- 'attribute; skipping.' % (
- name, self.current_host.format_name()))
- return
- try:
- portid = int(portid_str)
- except ValueError:
-- warn(u"Can't convert portid \"%s\" to an integer "
-+ warn("Can't convert portid \"%s\" to an integer "
- "in host %s; skipping port." % (
- portid_str, self.current_host.format_name()))
- return
-- protocol = attrs.get(u"protocol")
-+ protocol = attrs.get("protocol")
- if protocol is None:
-- warn(u'%s element of host %s missing the "protocol" '
-+ warn('%s element of host %s missing the "protocol" '
- 'attribute; skipping.' % (
- name, self.current_host.format_name()))
- return
- self.current_port = Port((portid, protocol))
-
- def _start_state(self, name, attrs):
-- assert self.parent_element() == u"port"
-+ assert self.parent_element() == "port"
- assert self.current_host is not None
- if self.current_port is None:
- return
- if "state" not in attrs:
-- warn(u'%s element of port %s is missing the "state" '
-+ warn('%s element of port %s is missing the "state" '
- 'attribute; assuming "unknown".' % (
- name, self.current_port.spec_string()))
- return
-- self.current_port.state = attrs[u"state"]
-+ self.current_port.state = attrs["state"]
- self.current_host.add_port(self.current_port)
-
- def _start_service(self, name, attrs):
-- assert self.parent_element() == u"port"
-+ assert self.parent_element() == "port"
- assert self.current_host is not None
- if self.current_port is None:
- return
-- self.current_port.service.name = attrs.get(u"name")
-- self.current_port.service.product = attrs.get(u"product")
-- self.current_port.service.version = attrs.get(u"version")
-- self.current_port.service.extrainfo = attrs.get(u"extrainfo")
-- self.current_port.service.tunnel = attrs.get(u"tunnel")
-+ self.current_port.service.name = attrs.get("name")
-+ self.current_port.service.product = attrs.get("product")
-+ self.current_port.service.version = attrs.get("version")
-+ self.current_port.service.extrainfo = attrs.get("extrainfo")
-+ self.current_port.service.tunnel = attrs.get("tunnel")
-
- def _start_script(self, name, attrs):
- result = ScriptResult()
-- result.id = attrs.get(u"id")
-+ result.id = attrs.get("id")
- if result.id is None:
-- warn(u'%s element missing the "id" attribute; skipping.' % name)
-+ warn('%s element missing the "id" attribute; skipping.' % name)
- return
-
-- result.output = attrs.get(u"output")
-+ result.output = attrs.get("output")
- if result.output is None:
-- warn(u'%s element missing the "output" attribute; skipping.'
-+ warn('%s element missing the "output" attribute; skipping.'
- % name)
- return
-- if self.parent_element() == u"prescript":
-+ if self.parent_element() == "prescript":
- self.scan.pre_script_results.append(result)
-- elif self.parent_element() == u"postscript":
-+ elif self.parent_element() == "postscript":
- self.scan.post_script_results.append(result)
-- elif self.parent_element() == u"hostscript":
-+ elif self.parent_element() == "hostscript":
- self.current_host.script_results.append(result)
-- elif self.parent_element() == u"port":
-+ elif self.parent_element() == "port":
- self.current_port.script_results.append(result)
- else:
-- warn(u"%s element not inside prescript, postscript, hostscript, "
-+ warn("%s element not inside prescript, postscript, hostscript, "
- "or port element; ignoring." % name)
- return
-
- def _start_osmatch(self, name, attrs):
-- assert self.parent_element() == u"os"
-+ assert self.parent_element() == "os"
- assert self.current_host is not None
- if "name" not in attrs:
-- warn(u'%s element of host %s is missing the "name" '
-+ warn('%s element of host %s is missing the "name" '
- 'attribute; skipping.' % (
- name, self.current_host.format_name()))
- return
-- self.current_host.os.append(attrs[u"name"])
-+ self.current_host.os.append(attrs["name"])
-
- def _start_finished(self, name, attrs):
-- assert self.parent_element() == u"runstats"
-+ assert self.parent_element() == "runstats"
- if "time" in attrs:
-- end_timestamp = int(attrs.get(u"time"))
-+ end_timestamp = int(attrs.get("time"))
- self.scan.end_date = datetime.datetime.fromtimestamp(end_timestamp)
-
- def _end_host(self, name):
-@@ -1435,23 +1437,23 @@ class XMLWriter (xml.sax.saxutils.XMLGenerator):
-
- def frag(self, frag):
- for node in frag.childNodes:
-- node.writexml(self.f, newl=u"\n")
-+ node.writexml(self.f, newl="\n")
-
- def frag_a(self, frag):
-- self.startElement(u"a", {})
-+ self.startElement("a", {})
- for node in frag.childNodes:
-- node.writexml(self.f, newl=u"\n")
-- self.endElement(u"a")
-+ node.writexml(self.f, newl="\n")
-+ self.endElement("a")
-
- def frag_b(self, frag):
-- self.startElement(u"b", {})
-+ self.startElement("b", {})
- for node in frag.childNodes:
-- node.writexml(self.f, newl=u"\n")
-- self.endElement(u"b")
-+ node.writexml(self.f, newl="\n")
-+ self.endElement("b")
-
-
- def usage():
-- print u"""\
-+ print("""\
- Usage: %s [option] FILE1 FILE2
- Compare two Nmap XML files and display a list of their differences.
- Differences include host state changes, port state changes, and changes to
-@@ -1461,7 +1463,7 @@ service and OS detection.
- -v, --verbose also show hosts and ports that haven't changed.
- --text display output in text format (default)
- --xml display output in XML format\
--""" % sys.argv[0]
-+""" % sys.argv[0])
-
- EXIT_EQUAL = 0
- EXIT_DIFFERENT = 1
-@@ -1469,8 +1471,8 @@ EXIT_ERROR = 2
-
-
- def usage_error(msg):
-- print >> sys.stderr, u"%s: %s" % (sys.argv[0], msg)
-- print >> sys.stderr, u"Try '%s -h' for help." % sys.argv[0]
-+ print("%s: %s" % (sys.argv[0], msg), file=sys.stderr)
-+ print("Try '%s -h' for help." % sys.argv[0], file=sys.stderr)
- sys.exit(EXIT_ERROR)
-
-
-@@ -1481,7 +1483,7 @@ def main():
- try:
- opts, input_filenames = getopt.gnu_getopt(
- sys.argv[1:], "hv", ["help", "text", "verbose", "xml"])
-- except getopt.GetoptError, e:
-+ except getopt.GetoptError as e:
- usage_error(e.msg)
- for o, a in opts:
- if o == "-h" or o == "--help":
-@@ -1491,15 +1493,15 @@ def main():
- verbose = True
- elif o == "--text":
- if output_format is not None and output_format != "text":
-- usage_error(u"contradictory output format options.")
-+ usage_error("contradictory output format options.")
- output_format = "text"
- elif o == "--xml":
- if output_format is not None and output_format != "xml":
-- usage_error(u"contradictory output format options.")
-+ usage_error("contradictory output format options.")
- output_format = "xml"
-
- if len(input_filenames) != 2:
-- usage_error(u"need exactly two input filenames.")
-+ usage_error("need exactly two input filenames.")
-
- if output_format is None:
- output_format = "text"
-@@ -1512,8 +1514,8 @@ def main():
- scan_a.load_from_file(filename_a)
- scan_b = Scan()
- scan_b.load_from_file(filename_b)
-- except IOError, e:
-- print >> sys.stderr, u"Can't open file: %s" % str(e)
-+ except IOError as e:
-+ print("Can't open file: %s" % str(e), file=sys.stderr)
- sys.exit(EXIT_ERROR)
-
- if output_format == "text":
Index: net/nmap/patches/patch-ndiff_ndifftest_py
===================================================================
RCS file: net/nmap/patches/patch-ndiff_ndifftest_py
diff -N net/nmap/patches/patch-ndiff_ndifftest_py
--- net/nmap/patches/patch-ndiff_ndifftest_py 18 Feb 2025 21:30:55 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,207 +0,0 @@
-apply 2to3
-
-Index: ndiff/ndifftest.py
---- ndiff/ndifftest.py.orig
-+++ ndiff/ndifftest.py
-@@ -22,7 +22,7 @@ for x in dir(ndiff):
- sys.dont_write_bytecode = dont_write_bytecode
- del dont_write_bytecode
-
--import StringIO
-+import io
-
-
- class scan_test(unittest.TestCase):
-@@ -52,7 +52,7 @@ class scan_test(unittest.TestCase):
- scan.load_from_file("test-scans/single.xml")
- host = scan.hosts[0]
- self.assertEqual(len(host.ports), 5)
-- self.assertEqual(host.extraports.items(), [("filtered", 95)])
-+ self.assertEqual(list(host.extraports.items()), [("filtered", 95)])
-
- def test_extraports_multi(self):
- """Test that the correct number of known ports is returned when there
-@@ -68,9 +68,9 @@ class scan_test(unittest.TestCase):
- """Test that nmaprun information is recorded."""
- scan = Scan()
- scan.load_from_file("test-scans/empty.xml")
-- self.assertEqual(scan.scanner, u"nmap")
-- self.assertEqual(scan.version, u"4.90RC2")
-- self.assertEqual(scan.args, u"nmap -oX empty.xml -p 1-100")
-+ self.assertEqual(scan.scanner, "nmap")
-+ self.assertEqual(scan.version, "4.90RC2")
-+ self.assertEqual(scan.args, "nmap -oX empty.xml -p 1-100")
-
- def test_addresses(self):
- """Test that addresses are recorded."""
-@@ -84,7 +84,7 @@ class scan_test(unittest.TestCase):
- scan = Scan()
- scan.load_from_file("test-scans/simple.xml")
- host = scan.hosts[0]
-- self.assertEqual(host.hostnames, [u"scanme.nmap.org"])
-+ self.assertEqual(host.hostnames, ["scanme.nmap.org"])
-
- def test_os(self):
- """Test that OS information is recorded."""
-@@ -99,7 +99,7 @@ class scan_test(unittest.TestCase):
- scan.load_from_file("test-scans/complex.xml")
- host = scan.hosts[0]
- self.assertTrue(len(host.script_results) > 0)
-- self.assertTrue(len(host.ports[(22, u"tcp")].script_results) > 0)
-+ self.assertTrue(len(host.ports[(22, "tcp")].script_results) > 0)
-
- # This test is commented out because Nmap XML doesn't store any information
- # about down hosts, not even the fact that they are down. Recovering the list
-@@ -128,16 +128,16 @@ class host_test(unittest.TestCase):
-
- def test_format_name(self):
- h = Host()
-- self.assertTrue(isinstance(h.format_name(), basestring))
-- h.add_address(IPv4Address(u"127.0.0.1"))
-- self.assertTrue(u"127.0.0.1" in h.format_name())
-+ self.assertTrue(isinstance(h.format_name(), str))
-+ h.add_address(IPv4Address("127.0.0.1"))
-+ self.assertTrue("127.0.0.1" in h.format_name())
- h.add_address(IPv6Address("::1"))
-- self.assertTrue(u"127.0.0.1" in h.format_name())
-- self.assertTrue(u"::1" in h.format_name())
-- h.add_hostname(u"localhost")
-- self.assertTrue(u"127.0.0.1" in h.format_name())
-- self.assertTrue(u"::1" in h.format_name())
-- self.assertTrue(u"localhost" in h.format_name())
-+ self.assertTrue("127.0.0.1" in h.format_name())
-+ self.assertTrue("::1" in h.format_name())
-+ h.add_hostname("localhost")
-+ self.assertTrue("127.0.0.1" in h.format_name())
-+ self.assertTrue("::1" in h.format_name())
-+ self.assertTrue("localhost" in h.format_name())
-
- def test_empty_get_port(self):
- h = Host()
-@@ -197,8 +197,8 @@ class host_test(unittest.TestCase):
- h = s.hosts[0]
- self.assertEqual(len(h.ports), 5)
- self.assertEqual(len(h.extraports), 1)
-- self.assertEqual(h.extraports.keys()[0], u"filtered")
-- self.assertEqual(h.extraports.values()[0], 95)
-+ self.assertEqual(list(h.extraports.keys())[0], "filtered")
-+ self.assertEqual(list(h.extraports.values())[0], 95)
- self.assertEqual(h.state, "up")
-
-
-@@ -241,13 +241,13 @@ class port_test(unittest.TestCase):
- """Test the Port class."""
- def test_spec_string(self):
- p = Port((10, "tcp"))
-- self.assertEqual(p.spec_string(), u"10/tcp")
-+ self.assertEqual(p.spec_string(), "10/tcp")
- p = Port((100, "ip"))
-- self.assertEqual(p.spec_string(), u"100/ip")
-+ self.assertEqual(p.spec_string(), "100/ip")
-
- def test_state_string(self):
- p = Port((10, "tcp"))
-- self.assertEqual(p.state_string(), u"unknown")
-+ self.assertEqual(p.state_string(), "unknown")
-
-
- class service_test(unittest.TestCase):
-@@ -255,47 +255,47 @@ class service_test(unittest.TestCase):
- def test_compare(self):
- """Test that services with the same contents compare equal."""
- a = Service()
-- a.name = u"ftp"
-- a.product = u"FooBar FTP"
-- a.version = u"1.1.1"
-- a.tunnel = u"ssl"
-+ a.name = "ftp"
-+ a.product = "FooBar FTP"
-+ a.version = "1.1.1"
-+ a.tunnel = "ssl"
- self.assertEqual(a, a)
- b = Service()
-- b.name = u"ftp"
-- b.product = u"FooBar FTP"
-- b.version = u"1.1.1"
-- b.tunnel = u"ssl"
-+ b.name = "ftp"
-+ b.product = "FooBar FTP"
-+ b.version = "1.1.1"
-+ b.tunnel = "ssl"
- self.assertEqual(a, b)
-- b.name = u"http"
-+ b.name = "http"
- self.assertNotEqual(a, b)
- c = Service()
- self.assertNotEqual(a, c)
-
- def test_tunnel(self):
- serv = Service()
-- serv.name = u"http"
-- serv.tunnel = u"ssl"
-- self.assertEqual(serv.name_string(), u"ssl/http")
-+ serv.name = "http"
-+ serv.tunnel = "ssl"
-+ self.assertEqual(serv.name_string(), "ssl/http")
-
- def test_version_string(self):
- serv = Service()
-- serv.product = u"FooBar"
-+ serv.product = "FooBar"
- self.assertTrue(len(serv.version_string()) > 0)
- serv = Service()
-- serv.version = u"1.2.3"
-+ serv.version = "1.2.3"
- self.assertTrue(len(serv.version_string()) > 0)
- serv = Service()
-- serv.extrainfo = u"misconfigured"
-+ serv.extrainfo = "misconfigured"
- self.assertTrue(len(serv.version_string()) > 0)
- serv = Service()
-- serv.product = u"FooBar"
-- serv.version = u"1.2.3"
-+ serv.product = "FooBar"
-+ serv.version = "1.2.3"
- # Must match Nmap output.
- self.assertEqual(serv.version_string(),
-- u"%s %s" % (serv.product, serv.version))
-- serv.extrainfo = u"misconfigured"
-+ "%s %s" % (serv.product, serv.version))
-+ serv.extrainfo = "misconfigured"
- self.assertEqual(serv.version_string(),
-- u"%s %s (%s)" % (serv.product, serv.version, serv.extrainfo))
-+ "%s %s (%s)" % (serv.product, serv.version, serv.extrainfo))
-
-
- class ScanDiffSub(ScanDiff):
-@@ -703,7 +703,7 @@ class scan_diff_xml_test(unittest.TestCase):
- a.load_from_file("test-scans/empty.xml")
- b = Scan()
- b.load_from_file("test-scans/simple.xml")
-- f = StringIO.StringIO()
-+ f = io.StringIO()
- self.scan_diff = ScanDiffXML(a, b, f)
- self.scan_diff.output()
- self.xml = f.getvalue()
-@@ -712,8 +712,8 @@ class scan_diff_xml_test(unittest.TestCase):
- def test_well_formed(self):
- try:
- document = xml.dom.minidom.parseString(self.xml)
-- except Exception, e:
-- self.fail(u"Parsing XML diff output caused the exception: %s"
-+ except Exception as e:
-+ self.fail("Parsing XML diff output caused the exception: %s"
- % str(e))
-
-
-@@ -739,8 +739,8 @@ def host_apply_diff(host, diff):
- host.os = diff.host_b.os[:]
-
- if diff.extraports_changed:
-- for state in host.extraports.keys():
-- for port in host.ports.values():
-+ for state in list(host.extraports.keys()):
-+ for port in list(host.ports.values()):
- if port.state == state:
- del host.ports[port.spec]
- host.extraports = diff.host_b.extraports.copy()
Index: net/nmap/patches/patch-ndiff_scripts_ndiff
===================================================================
RCS file: net/nmap/patches/patch-ndiff_scripts_ndiff
diff -N net/nmap/patches/patch-ndiff_scripts_ndiff
--- net/nmap/patches/patch-ndiff_scripts_ndiff 18 Feb 2025 21:30:55 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,27 +0,0 @@
-apply 2to3
-
-Index: ndiff/scripts/ndiff
---- ndiff/scripts/ndiff.orig
-+++ ndiff/scripts/ndiff
-@@ -67,15 +67,15 @@ if INSTALL_LIB is not None and is_secure_dir(INSTALL_L
-
- try:
- import ndiff
--except ImportError, e:
-- print >> sys.stderr, """\
-+except ImportError as e:
-+ print("""\
- Could not import the ndiff module: %s.
--I checked in these directories:""" % repr(e.message)
-+I checked in these directories:""" % repr(e.message), file=sys.stderr)
- for dir in sys.path:
-- print >> sys.stderr, " %s" % dir
-- print >> sys.stderr, """\
-+ print(" %s" % dir, file=sys.stderr)
-+ print("""\
- If you installed Ndiff in another directory, you may have to add the
--modules directory to the PYTHONPATH environment variable."""
-+modules directory to the PYTHONPATH environment variable.""", file=sys.stderr)
- sys.exit(1)
-
- import ndiff
Index: net/nmap/patches/patch-ndiff_setup_py
===================================================================
RCS file: net/nmap/patches/patch-ndiff_setup_py
diff -N net/nmap/patches/patch-ndiff_setup_py
--- net/nmap/patches/patch-ndiff_setup_py 18 Feb 2025 21:30:55 -0000 1.8
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,71 +0,0 @@
-apply 2to3 and additional fixes
-
-Index: ndiff/setup.py
---- ndiff/setup.py.orig
-+++ ndiff/setup.py
-@@ -94,7 +94,7 @@ class checked_install(distutils.command.install.instal
- self.saved_prefix = sys.prefix
- try:
- distutils.command.install.install.finalize_options(self)
-- except distutils.errors.DistutilsPlatformError, e:
-+ except distutils.errors.DistutilsPlatformError as e:
- raise distutils.errors.DistutilsPlatformError(str(e) + """
- Installing your distribution's python-dev package may solve this problem.""")
-
-@@ -227,7 +227,7 @@ for dir in dirs:
- uninstaller_file.close()
-
- # Set exec bit for uninstaller
-- mode = ((os.stat(uninstaller_filename)[ST_MODE]) | 0555) & 07777
-+ mode = ((os.stat(uninstaller_filename)[ST_MODE]) | 0o555) & 0o7777
- os.chmod(uninstaller_filename, mode)
-
- def write_installed_files(self):
-@@ -241,7 +241,7 @@ for dir in dirs:
- with open(INSTALLED_FILES_NAME, "w") as f:
- for output in self.get_installed_files():
- assert "\n" not in output
-- print >> f, output
-+ print(output, file=f)
-
-
- class my_uninstall(distutils.cmd.Command):
-@@ -263,7 +263,7 @@ class my_uninstall(distutils.cmd.Command):
- # Read the list of installed files.
- try:
- f = open(INSTALLED_FILES_NAME, "r")
-- except IOError, e:
-+ except IOError as e:
- if e.errno == errno.ENOENT:
- log.error("Couldn't open the installation record '%s'. "
- "Have you installed yet?" % INSTALLED_FILES_NAME)
-@@ -286,7 +286,7 @@ class my_uninstall(distutils.cmd.Command):
- try:
- if not self.dry_run:
- os.remove(file)
-- except OSError, e:
-+ except OSError as e:
- log.error(str(e))
- # Delete the directories. First reverse-sort the normalized paths by
- # length so that child directories are deleted before their parents.
-@@ -297,16 +297,16 @@ class my_uninstall(distutils.cmd.Command):
- log.info("Removing the directory '%s'." % dir)
- if not self.dry_run:
- os.rmdir(dir)
-- except OSError, e:
-+ except OSError as e:
- if e.errno == errno.ENOTEMPTY:
- log.info("Directory '%s' not empty; not removing." % dir)
- else:
- log.error(str(e))
-
-
--distutils.core.setup(name=u"ndiff", scripts=[u"scripts/ndiff"],
-- py_modules=[u"ndiff"],
-- data_files=[(u"share/man/man1", [u"docs/ndiff.1"])],
-+distutils.core.setup(name="ndiff", scripts=["scripts/ndiff"],
-+ py_modules=["ndiff"],
-+ data_files=[("man/man1", ["docs/ndiff.1"])],
- cmdclass={
- "install_egg_info": null_command,
- "install": checked_install,
Index: net/nmap/patches/patch-nmap_dns_cc
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-nmap_dns_cc,v
diff -u -p -r1.3 patch-nmap_dns_cc
--- net/nmap/patches/patch-nmap_dns_cc 7 May 2024 15:19:43 -0000 1.3
+++ net/nmap/patches/patch-nmap_dns_cc 3 Mar 2026 20:41:01 -0000
@@ -5,7 +5,7 @@ https://github.com/nmap/nmap/commit/3ada
Index: nmap_dns.cc
--- nmap_dns.cc.orig
+++ nmap_dns.cc
-@@ -1352,7 +1352,7 @@ bool DNS::Factory::ptrToIp(const std::string &ptr, soc
+@@ -1671,7 +1671,7 @@ bool DNS::Factory::ptrToIp(const std::string &ptr, soc
memset(&ip, 0, sizeof(sockaddr_storage));
// Check whether the name ends with the IPv4 PTR domain
@@ -14,7 +14,7 @@ Index: nmap_dns.cc
{
struct sockaddr_in *ip4 = (struct sockaddr_in *)&ip;
static const u8 place_value[] = {1, 10, 100};
-@@ -1387,7 +1387,7 @@ bool DNS::Factory::ptrToIp(const std::string &ptr, soc
+@@ -1706,7 +1706,7 @@ bool DNS::Factory::ptrToIp(const std::string &ptr, soc
ip.ss_family = AF_INET;
}
// If not, check IPv6
Index: net/nmap/patches/patch-nping_Crypto_cc
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-nping_Crypto_cc,v
diff -u -p -r1.2 patch-nping_Crypto_cc
--- net/nmap/patches/patch-nping_Crypto_cc 11 Mar 2022 19:46:31 -0000 1.2
+++ net/nmap/patches/patch-nping_Crypto_cc 3 Mar 2026 20:41:01 -0000
@@ -1,12 +1,12 @@
Index: nping/Crypto.cc
--- nping/Crypto.cc.orig
+++ nping/Crypto.cc
-@@ -70,7 +70,7 @@
+@@ -69,7 +69,7 @@
#include <openssl/evp.h>
#include <openssl/err.h>
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined LIBRESSL_VERSION_NUMBER
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
#define HAVE_OPAQUE_EVP_PKEY 1
- #define FUNC_EVP_MD_CTX_init EVP_MD_CTX_reset
- #define FUNC_EVP_MD_CTX_cleanup EVP_MD_CTX_reset
+ #else
+ #define EVP_MD_CTX_new EVP_MD_CTX_create
Index: net/nmap/patches/patch-nping_EchoServer_cc
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-nping_EchoServer_cc,v
diff -u -p -r1.7 patch-nping_EchoServer_cc
--- net/nmap/patches/patch-nping_EchoServer_cc 11 Mar 2022 19:46:31 -0000 1.7
+++ net/nmap/patches/patch-nping_EchoServer_cc 3 Mar 2026 20:41:01 -0000
@@ -3,7 +3,7 @@ Ambiguous bind(2) call.
Index: nping/EchoServer.cc
--- nping/EchoServer.cc.orig
+++ nping/EchoServer.cc
-@@ -213,12 +213,12 @@ int EchoServer::nep_listen_socket(){
+@@ -212,12 +212,12 @@ int EchoServer::nep_listen_socket(){
server_addr6.sin6_len = sizeof(struct sockaddr_in6);
#endif
/* Bind to local address and the specified port */
@@ -18,7 +18,7 @@ Index: nping/EchoServer.cc
nping_fatal(QT_3, "Could not bind to port %d (%s).", port, strerror(errno));
}else{
nping_print(VB_1, "Server bound to port %d", port);
-@@ -251,12 +251,12 @@ int EchoServer::nep_listen_socket(){
+@@ -250,12 +250,12 @@ int EchoServer::nep_listen_socket(){
#endif
/* Bind to local address and the specified port */
Index: net/nmap/patches/patch-nping_configure_ac
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-nping_configure_ac,v
diff -u -p -r1.3 patch-nping_configure_ac
--- net/nmap/patches/patch-nping_configure_ac 11 Mar 2022 19:46:31 -0000 1.3
+++ net/nmap/patches/patch-nping_configure_ac 3 Mar 2026 20:41:01 -0000
@@ -1,6 +1,45 @@
Index: nping/configure.ac
--- nping/configure.ac.orig
+++ nping/configure.ac
+@@ -196,7 +196,7 @@ AC_HELP_STRING([--with-libpcap=included], [Always use
+ [ case "$with_libpcap" in
+ yes)
+ AC_CHECK_HEADER(pcap.h,[
+- AC_CHECK_LIB(pcap, pcap_create,
++ AC_CHECK_LIB(epcap, pcap_create,
+ [have_libpcap=yes ])])
+ ;;
+ included)
+@@ -210,9 +210,9 @@ AC_HELP_STRING([--with-libpcap=included], [Always use
+ LDFLAGS="-L$with_libpcap/lib $LDFLAGS"
+
+ AC_CHECK_HEADER(pcap.h,[
+- AC_CHECK_LIB(pcap, pcap_create,
++ AC_CHECK_LIB(epcap, pcap_create,
+ [have_libpcap=yes
+- LIBPCAP_INC=$with_libpcap/include
++ LIBPCAP_INC=$with_libpcap/include/libpcap
+ LIBPCAP_LIB=$with_libpcap/lib])])
+
+ LDFLAGS=$_ldflags
+@@ -233,7 +233,7 @@ if test $have_libpcap = yes; then
+
+ # link with -lpcap for the purposes of this test
+ LIBS_OLD="$LIBS"
+- LIBS="$LIBS -lpcap"
++ LIBS="$LIBS -lepcap"
+ PCAP_IS_SUITABLE([have_libpcap=yes], [have_libpcap=no], [have_libpcap=yes])
+ LIBS="$LIBS_OLD"
+ fi
+@@ -253,7 +253,7 @@ if test $have_libpcap != yes; then
+ PCAP_DIST_CLEAN="distclean-pcap"
+ else
+ AC_DEFINE(HAVE_LIBPCAP, 1, [Have libpcap library])
+- LIBPCAP_LIBS="-lpcap"
++ LIBPCAP_LIBS="-lepcap"
+ PCAP_DEPENDS=""
+ PCAP_BUILD=""
+ PCAP_CLEAN=""
@@ -444,16 +444,13 @@ AC_CACHE_CHECK(if function signal is accessible, ac_cv
AC_TRY_COMPILE(
[
Index: net/nmap/patches/patch-nse_openssl_cc
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-nse_openssl_cc,v
diff -u -p -r1.5 patch-nse_openssl_cc
--- net/nmap/patches/patch-nse_openssl_cc 27 Jul 2023 07:13:16 -0000 1.5
+++ net/nmap/patches/patch-nse_openssl_cc 3 Mar 2026 20:41:01 -0000
@@ -3,21 +3,12 @@ Fake amd64 RC4_options() output to avoid
Index: nse_openssl.cc
--- nse_openssl.cc.orig
+++ nse_openssl.cc
-@@ -21,7 +21,7 @@
- #include <openssl/ripemd.h>
- #include <openssl/sha.h>
+@@ -13,7 +13,7 @@
+ #include <openssl/hmac.h>
+ #include <openssl/rand.h>
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined LIBRESSL_VERSION_NUMBER
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
#define HAVE_OPAQUE_STRUCTS 1
- #define FUNC_EVP_MD_CTX_init EVP_MD_CTX_reset
- #define FUNC_EVP_MD_CTX_cleanup EVP_MD_CTX_reset
-@@ -545,7 +545,7 @@ static int l_DES_string_to_key(lua_State *L) /** DES_s
- #ifndef OPENSSL_NO_RC4
- static int l_rc4_options (lua_State *L)
- {
-- lua_pushstring(L, RC4_options());
-+ lua_pushstring(L, "rc4(16x,int)");
- return 1;
- }
-
+ #if OPENSSL_VERSION_NUMBER >= 0x30000000L
+ # include <openssl/provider.h>
Index: net/nmap/patches/patch-nse_ssl_cert_cc
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-nse_ssl_cert_cc,v
diff -u -p -r1.2 patch-nse_ssl_cert_cc
--- net/nmap/patches/patch-nse_ssl_cert_cc 11 Mar 2022 19:46:31 -0000 1.2
+++ net/nmap/patches/patch-nse_ssl_cert_cc 3 Mar 2026 20:41:01 -0000
@@ -1,7 +1,7 @@
Index: nse_ssl_cert.cc
--- nse_ssl_cert.cc.orig
+++ nse_ssl_cert.cc
-@@ -81,7 +81,7 @@
+@@ -79,7 +79,7 @@
#include <openssl/evp.h>
#include <openssl/err.h>
@@ -10,3 +10,21 @@ Index: nse_ssl_cert.cc
/* Technically some of these things were added in 0x10100006
* but that was pre-release. */
#define HAVE_OPAQUE_STRUCTS 1
+@@ -488,6 +488,9 @@ int lua_push_ecdhparams(lua_State *L, EVP_PKEY *pubkey
+ lua_setfield(L, -2, "ec_curve_type");
+ }
+ else {
++#if defined(LIBRESSL_VERSION_NUMBER)
++ lua_pushstring(L, "explicit_prime");
++#else
+ /* According to RFC 5480 section 2.1.1, explicit curves must not be used with
+ X.509. This may change in the future, but for now it doesn't seem worth it
+ to add in code to extract the extra parameters. */
+@@ -502,6 +505,7 @@ int lua_push_ecdhparams(lua_State *L, EVP_PKEY *pubkey
+ /* Something weird happened. */
+ lua_pushstring(L, "UNKNOWN");
+ }
++#endif
+ lua_setfield(L, -2, "ec_curve_type");
+ }
+ lua_setfield(L, -2, "curve_params");
Index: net/nmap/patches/patch-nsock_src_configure_ac
===================================================================
RCS file: net/nmap/patches/patch-nsock_src_configure_ac
diff -N net/nmap/patches/patch-nsock_src_configure_ac
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ net/nmap/patches/patch-nsock_src_configure_ac 3 Mar 2026 20:41:01 -0000
@@ -0,0 +1,26 @@
+Index: nsock/src/configure.ac
+--- nsock/src/configure.ac.orig
++++ nsock/src/configure.ac
+@@ -144,10 +144,10 @@ AC_HELP_STRING([--without-libpcap], [Disable pcap func
+ LDFLAGS="-L$with_libpcap/lib $LDFLAGS"
+
+ AC_CHECK_HEADER(pcap.h,[
+- AC_CHECK_LIB(pcap, pcap_create,
++ AC_CHECK_LIB(epcap, pcap_create,
+ [have_libpcap=yes
+- LIBPCAP_LIBS=-lpcap
+- LIBPCAP_INC=$with_libpcap/include
++ LIBPCAP_LIBS=-lepcap
++ LIBPCAP_INC=$with_libpcap/include/libpcap
+ LIBPCAP_LIB=$with_libpcap/lib])])
+
+ LDFLAGS=$_ldflags
+@@ -165,7 +165,7 @@ if test "$with_libpcap" != "no" -a "$have_libpcap" = "
+ else
+ # link with -lpcap for the purposes of this test
+ LIBS_OLD="$LIBS"
+- LIBS="$LIBS -lpcap"
++ LIBS="$LIBS -lepcap"
+ AC_CHECK_FUNCS([pcap_set_immediate_mode])
+ # Restore libs
+ LIBS="$LIBS_OLD"
Index: net/nmap/patches/patch-scan-engine_cc
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-scan-engine_cc,v
diff -u -p -r1.15 patch-scan-engine_cc
--- net/nmap/patches/patch-scan-engine_cc 7 May 2024 15:19:43 -0000 1.15
+++ net/nmap/patches/patch-scan-engine_cc 3 Mar 2026 20:41:01 -0000
@@ -3,7 +3,7 @@ Fix for 64-bit time_t on 32-bit archs
Index: scan_engine.cc
--- scan_engine.cc.orig
+++ scan_engine.cc
-@@ -2061,7 +2061,7 @@ void ultrascan_host_probe_update(UltraScanInfo *USI, H
+@@ -2030,7 +2030,7 @@ void ultrascan_host_probe_update(UltraScanInfo *USI, H
struct timeval tv;
gettimeofday(&tv, NULL);
Index: net/nmap/patches/patch-timing_cc
===================================================================
RCS file: /cvs/ports/net/nmap/patches/patch-timing_cc,v
diff -u -p -r1.11 patch-timing_cc
--- net/nmap/patches/patch-timing_cc 11 Mar 2022 19:46:31 -0000 1.11
+++ net/nmap/patches/patch-timing_cc 3 Mar 2026 20:41:01 -0000
@@ -1,7 +1,7 @@
Index: timing.cc
--- timing.cc.orig
+++ timing.cc
-@@ -66,4 +66,6 @@
+@@ -65,4 +65,6 @@
+#include <limits>
+
Index: net/nmap/pkg/DESCR
===================================================================
RCS file: net/nmap/pkg/DESCR
diff -N net/nmap/pkg/DESCR
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ net/nmap/pkg/DESCR 3 Mar 2026 20:41:01 -0000
@@ -0,0 +1,29 @@
+Nmap is a utility for port scanning large networks, although it works
+fine for single hosts. The guiding philosophy for the creation of nmap
+was TMTOWTDI (There's More Than One Way To Do It). This is the Perl
+slogan, but it is equally applicable to scanners. Sometimes you need
+speed, other times you may need stealth. In some cases, bypassing
+firewalls may be required. Not to mention the fact that you may want to
+scan different protocols (UDP, TCP, ICMP, etc.). You just can't do all
+this with one scanning mode. And you don't want to have 10 different
+scanners around, all with different interfaces and capabilities. Thus I
+incorporated virtually every scanning technique I know into nmap.
+Specifically, nmap supports:
+
+ Vanilla TCP connect() scanning,
+ TCP SYN (half open) scanning,
+ TCP FIN, Xmas, or NULL (stealth) scanning,
+ TCP ftp proxy (bounce attack) scanning,
+ SYN/FIN scanning using IP fragments (bypasses packet filters),
+ UDP raw ICMP port unreachable scanning,
+ ICMP scanning (ping-sweep),
+ TCP Ping scanning,
+ Remote OS Identification by TCP/IP Fingerprinting, and
+ Reverse-ident scanning.
+
+Nmap also supports a number of performance and reliability features such
+as dynamic delay time calculations, packet timeout and retransmission,
+parallel port scanning, detection of down hosts via parallel pings.
+Nmap also offers flexible target and port specification, decoy scanning,
+determination of TCP sequence predictability characteristics, and output
+to machine parseable or human readable log files.
Index: net/nmap/pkg/DESCR-main
===================================================================
RCS file: net/nmap/pkg/DESCR-main
diff -N net/nmap/pkg/DESCR-main
--- net/nmap/pkg/DESCR-main 9 Aug 2017 20:43:53 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,29 +0,0 @@
-Nmap is a utility for port scanning large networks, although it works
-fine for single hosts. The guiding philosophy for the creation of nmap
-was TMTOWTDI (There's More Than One Way To Do It). This is the Perl
-slogan, but it is equally applicable to scanners. Sometimes you need
-speed, other times you may need stealth. In some cases, bypassing
-firewalls may be required. Not to mention the fact that you may want to
-scan different protocols (UDP, TCP, ICMP, etc.). You just can't do all
-this with one scanning mode. And you don't want to have 10 different
-scanners around, all with different interfaces and capabilities. Thus I
-incorporated virtually every scanning technique I know into nmap.
-Specifically, nmap supports:
-
- Vanilla TCP connect() scanning,
- TCP SYN (half open) scanning,
- TCP FIN, Xmas, or NULL (stealth) scanning,
- TCP ftp proxy (bounce attack) scanning,
- SYN/FIN scanning using IP fragments (bypasses packet filters),
- UDP raw ICMP port unreachable scanning,
- ICMP scanning (ping-sweep),
- TCP Ping scanning,
- Remote OS Identification by TCP/IP Fingerprinting, and
- Reverse-ident scanning.
-
-Nmap also supports a number of performance and reliability features such
-as dynamic delay time calculations, packet timeout and retransmission,
-parallel port scanning, detection of down hosts via parallel pings.
-Nmap also offers flexible target and port specification, decoy scanning,
-determination of TCP sequence predictability characteristics, and output
-to machine parseable or human readable log files.
Index: net/nmap/pkg/PLIST
===================================================================
RCS file: net/nmap/pkg/PLIST
diff -N net/nmap/pkg/PLIST
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ net/nmap/pkg/PLIST 3 Mar 2026 20:41:01 -0000
@@ -0,0 +1,837 @@
+@bin bin/ncat
+bin/ndiff
+@bin bin/nmap
+@bin bin/nping
+@comment bin/uninstall_ndiff
+lib/python${MODPY_VERSION}/site-packages/${MODPY_PYCACHE}/
+lib/python${MODPY_VERSION}/site-packages/${MODPY_PYCACHE}ndiff.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/${MODPY_PYCACHE}ndiff.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/ndiff-${MODPY_DISTV}.dist-info/
+lib/python${MODPY_VERSION}/site-packages/ndiff-${MODPY_DISTV}.dist-info/METADATA
+lib/python${MODPY_VERSION}/site-packages/ndiff-${MODPY_DISTV}.dist-info/RECORD
+lib/python${MODPY_VERSION}/site-packages/ndiff-${MODPY_DISTV}.dist-info/WHEEL
+lib/python${MODPY_VERSION}/site-packages/ndiff-${MODPY_DISTV}.dist-info/entry_points.txt
+lib/python${MODPY_VERSION}/site-packages/ndiff-${MODPY_DISTV}.dist-info/licenses/
+lib/python${MODPY_VERSION}/site-packages/ndiff-${MODPY_DISTV}.dist-info/licenses/LICENSE
+lib/python${MODPY_VERSION}/site-packages/ndiff-${MODPY_DISTV}.dist-info/top_level.txt
+lib/python${MODPY_VERSION}/site-packages/ndiff.py
+@man man/man1/ncat.1
+@man man/man1/ndiff.1
+@man man/man1/nmap.1
+@man man/man1/nping.1
+share/ncat/
+share/ncat/ca-bundle.crt
+share/nmap/
+share/nmap/nmap-mac-prefixes
+share/nmap/nmap-os-db
+share/nmap/nmap-protocols
+share/nmap/nmap-rpc
+share/nmap/nmap-service-probes
+share/nmap/nmap-services
+share/nmap/nmap.dtd
+share/nmap/nmap.xsl
+share/nmap/nse_main.lua
+share/nmap/nselib/
+share/nmap/nselib/afp.lua
+share/nmap/nselib/ajp.lua
+share/nmap/nselib/amqp.lua
+share/nmap/nselib/anyconnect.lua
+share/nmap/nselib/asn1.lua
+share/nmap/nselib/base32.lua
+share/nmap/nselib/base64.lua
+share/nmap/nselib/bin.lua
+share/nmap/nselib/bitcoin.lua
+share/nmap/nselib/bits.lua
+share/nmap/nselib/bittorrent.lua
+share/nmap/nselib/bjnp.lua
+share/nmap/nselib/brute.lua
+share/nmap/nselib/cassandra.lua
+share/nmap/nselib/citrixxml.lua
+share/nmap/nselib/coap.lua
+share/nmap/nselib/comm.lua
+share/nmap/nselib/creds.lua
+share/nmap/nselib/cvs.lua
+share/nmap/nselib/data/
+share/nmap/nselib/data/dns-srv-names
+share/nmap/nselib/data/drupal-modules.lst
+share/nmap/nselib/data/drupal-themes.lst
+share/nmap/nselib/data/enterprise_numbers.txt
+share/nmap/nselib/data/favicon-db
+share/nmap/nselib/data/http-default-accounts-fingerprints.lua
+share/nmap/nselib/data/http-devframework-fingerprints.lua
+share/nmap/nselib/data/http-fingerprints.lua
+share/nmap/nselib/data/http-folders.txt
+share/nmap/nselib/data/http-sql-errors.lst
+share/nmap/nselib/data/http-web-files-extensions.lst
+share/nmap/nselib/data/idnaMappings.lua
+share/nmap/nselib/data/ike-fingerprints.lua
+share/nmap/nselib/data/jdwp-class/
+share/nmap/nselib/data/jdwp-class/JDWPExecCmd.class
+share/nmap/nselib/data/jdwp-class/JDWPExecCmd.java
+share/nmap/nselib/data/jdwp-class/JDWPSystemInfo.class
+share/nmap/nselib/data/jdwp-class/JDWPSystemInfo.java
+share/nmap/nselib/data/jdwp-class/README.txt
+share/nmap/nselib/data/mgroupnames.db
+share/nmap/nselib/data/mysql-cis.audit
+share/nmap/nselib/data/oracle-default-accounts.lst
+share/nmap/nselib/data/oracle-sids
+share/nmap/nselib/data/packetdecoders.lua
+share/nmap/nselib/data/passwords.lst
+share/nmap/nselib/data/pixel.gif
+share/nmap/nselib/data/psexec/
+share/nmap/nselib/data/psexec/README
+share/nmap/nselib/data/psexec/backdoor.lua
+share/nmap/nselib/data/psexec/default.lua
+share/nmap/nselib/data/psexec/drives.lua
+share/nmap/nselib/data/psexec/examples.lua
+share/nmap/nselib/data/psexec/experimental.lua
+share/nmap/nselib/data/psexec/network.lua
+share/nmap/nselib/data/psexec/nmap_service.c
+share/nmap/nselib/data/psexec/nmap_service.vcproj
+share/nmap/nselib/data/psexec/pwdump.lua
+share/nmap/nselib/data/publickeydb
+share/nmap/nselib/data/rtsp-urls.txt
+share/nmap/nselib/data/snmpcommunities.lst
+share/nmap/nselib/data/ssl-fingerprints
+share/nmap/nselib/data/targets-ipv6-wordlist
+share/nmap/nselib/data/tftp-fingerprints.lua
+share/nmap/nselib/data/tftplist.txt
+share/nmap/nselib/data/usernames.lst
+share/nmap/nselib/data/vhosts-default.lst
+share/nmap/nselib/data/vhosts-full.lst
+share/nmap/nselib/data/wp-plugins.lst
+share/nmap/nselib/data/wp-themes.lst
+share/nmap/nselib/datafiles.lua
+share/nmap/nselib/datetime.lua
+share/nmap/nselib/dhcp.lua
+share/nmap/nselib/dhcp6.lua
+share/nmap/nselib/dicom.lua
+share/nmap/nselib/dns.lua
+share/nmap/nselib/dnsbl.lua
+share/nmap/nselib/dnssd.lua
+share/nmap/nselib/drda.lua
+share/nmap/nselib/eap.lua
+share/nmap/nselib/eigrp.lua
+share/nmap/nselib/formulas.lua
+share/nmap/nselib/ftp.lua
+share/nmap/nselib/geoip.lua
+share/nmap/nselib/giop.lua
+share/nmap/nselib/gps.lua
+share/nmap/nselib/http.lua
+share/nmap/nselib/httpspider.lua
+share/nmap/nselib/iax2.lua
+share/nmap/nselib/idna.lua
+share/nmap/nselib/iec61850mms.lua
+share/nmap/nselib/ike.lua
+share/nmap/nselib/imap.lua
+share/nmap/nselib/informix.lua
+share/nmap/nselib/ipOps.lua
+share/nmap/nselib/ipmi.lua
+share/nmap/nselib/ipp.lua
+share/nmap/nselib/irc.lua
+share/nmap/nselib/iscsi.lua
+share/nmap/nselib/isns.lua
+share/nmap/nselib/jdwp.lua
+share/nmap/nselib/json.lua
+share/nmap/nselib/knx.lua
+share/nmap/nselib/ldap.lua
+share/nmap/nselib/lfs.luadoc
+share/nmap/nselib/libssh2-utility.lua
+share/nmap/nselib/libssh2.luadoc
+share/nmap/nselib/listop.lua
+share/nmap/nselib/lpeg-utility.lua
+share/nmap/nselib/lpeg.luadoc
+share/nmap/nselib/ls.lua
+share/nmap/nselib/match.lua
+share/nmap/nselib/membase.lua
+share/nmap/nselib/mobileme.lua
+share/nmap/nselib/mongodb.lua
+share/nmap/nselib/mqtt.lua
+share/nmap/nselib/msrpc.lua
+share/nmap/nselib/msrpcperformance.lua
+share/nmap/nselib/msrpctypes.lua
+share/nmap/nselib/mssql.lua
+share/nmap/nselib/multicast.lua
+share/nmap/nselib/mysql.lua
+share/nmap/nselib/natpmp.lua
+share/nmap/nselib/nbd.lua
+share/nmap/nselib/ncp.lua
+share/nmap/nselib/ndmp.lua
+share/nmap/nselib/netbios.lua
+share/nmap/nselib/nmap.luadoc
+share/nmap/nselib/nrpc.lua
+share/nmap/nselib/nsedebug.lua
+share/nmap/nselib/omp2.lua
+share/nmap/nselib/oops.lua
+share/nmap/nselib/openssl.luadoc
+share/nmap/nselib/ospf.lua
+share/nmap/nselib/outlib.lua
+share/nmap/nselib/packet.lua
+share/nmap/nselib/pgsql.lua
+share/nmap/nselib/pop3.lua
+share/nmap/nselib/pppoe.lua
+share/nmap/nselib/proxy.lua
+share/nmap/nselib/punycode.lua
+share/nmap/nselib/rand.lua
+share/nmap/nselib/rdp.lua
+share/nmap/nselib/re.lua
+share/nmap/nselib/redis.lua
+share/nmap/nselib/rmi.lua
+share/nmap/nselib/rpc.lua
+share/nmap/nselib/rpcap.lua
+share/nmap/nselib/rsync.lua
+share/nmap/nselib/rtsp.lua
+share/nmap/nselib/sasl.lua
+share/nmap/nselib/shortport.lua
+share/nmap/nselib/sip.lua
+share/nmap/nselib/slaxml.lua
+share/nmap/nselib/smb.lua
+share/nmap/nselib/smb2.lua
+share/nmap/nselib/smbauth.lua
+share/nmap/nselib/smtp.lua
+share/nmap/nselib/snmp.lua
+share/nmap/nselib/socks.lua
+share/nmap/nselib/srvloc.lua
+share/nmap/nselib/ssh1.lua
+share/nmap/nselib/ssh2.lua
+share/nmap/nselib/sslcert.lua
+share/nmap/nselib/sslv2.lua
+share/nmap/nselib/stdnse.lua
+share/nmap/nselib/strbuf.lua
+share/nmap/nselib/strict.lua
+share/nmap/nselib/stringaux.lua
+share/nmap/nselib/stun.lua
+share/nmap/nselib/tab.lua
+share/nmap/nselib/tableaux.lua
+share/nmap/nselib/target.lua
+share/nmap/nselib/tftp.lua
+share/nmap/nselib/tls.lua
+share/nmap/nselib/tn3270.lua
+share/nmap/nselib/tns.lua
+share/nmap/nselib/unicode.lua
+share/nmap/nselib/unittest.lua
+share/nmap/nselib/unpwdb.lua
+share/nmap/nselib/upnp.lua
+share/nmap/nselib/url.lua
+share/nmap/nselib/versant.lua
+share/nmap/nselib/vnc.lua
+share/nmap/nselib/vulns.lua
+share/nmap/nselib/vuzedht.lua
+share/nmap/nselib/wsdd.lua
+share/nmap/nselib/xdmcp.lua
+share/nmap/nselib/xmpp.lua
+share/nmap/nselib/zlib.luadoc
+share/nmap/scripts/
+share/nmap/scripts/acarsd-info.nse
+share/nmap/scripts/address-info.nse
+share/nmap/scripts/afp-brute.nse
+share/nmap/scripts/afp-ls.nse
+share/nmap/scripts/afp-path-vuln.nse
+share/nmap/scripts/afp-serverinfo.nse
+share/nmap/scripts/afp-showmount.nse
+share/nmap/scripts/ajp-auth.nse
+share/nmap/scripts/ajp-brute.nse
+share/nmap/scripts/ajp-headers.nse
+share/nmap/scripts/ajp-methods.nse
+share/nmap/scripts/ajp-request.nse
+share/nmap/scripts/allseeingeye-info.nse
+share/nmap/scripts/amqp-info.nse
+share/nmap/scripts/asn-query.nse
+share/nmap/scripts/auth-owners.nse
+share/nmap/scripts/auth-spoof.nse
+share/nmap/scripts/backorifice-brute.nse
+share/nmap/scripts/backorifice-info.nse
+share/nmap/scripts/bacnet-info.nse
+share/nmap/scripts/banner.nse
+share/nmap/scripts/bitcoin-getaddr.nse
+share/nmap/scripts/bitcoin-info.nse
+share/nmap/scripts/bitcoinrpc-info.nse
+share/nmap/scripts/bittorrent-discovery.nse
+share/nmap/scripts/bjnp-discover.nse
+share/nmap/scripts/broadcast-ataoe-discover.nse
+share/nmap/scripts/broadcast-avahi-dos.nse
+share/nmap/scripts/broadcast-bjnp-discover.nse
+share/nmap/scripts/broadcast-db2-discover.nse
+share/nmap/scripts/broadcast-dhcp-discover.nse
+share/nmap/scripts/broadcast-dhcp6-discover.nse
+share/nmap/scripts/broadcast-dns-service-discovery.nse
+share/nmap/scripts/broadcast-dropbox-listener.nse
+share/nmap/scripts/broadcast-eigrp-discovery.nse
+share/nmap/scripts/broadcast-hid-discoveryd.nse
+share/nmap/scripts/broadcast-igmp-discovery.nse
+share/nmap/scripts/broadcast-jenkins-discover.nse
+share/nmap/scripts/broadcast-listener.nse
+share/nmap/scripts/broadcast-ms-sql-discover.nse
+share/nmap/scripts/broadcast-netbios-master-browser.nse
+share/nmap/scripts/broadcast-networker-discover.nse
+share/nmap/scripts/broadcast-novell-locate.nse
+share/nmap/scripts/broadcast-ospf2-discover.nse
+share/nmap/scripts/broadcast-pc-anywhere.nse
+share/nmap/scripts/broadcast-pc-duo.nse
+share/nmap/scripts/broadcast-pim-discovery.nse
+share/nmap/scripts/broadcast-ping.nse
+share/nmap/scripts/broadcast-pppoe-discover.nse
+share/nmap/scripts/broadcast-rip-discover.nse
+share/nmap/scripts/broadcast-ripng-discover.nse
+share/nmap/scripts/broadcast-sonicwall-discover.nse
+share/nmap/scripts/broadcast-sybase-asa-discover.nse
+share/nmap/scripts/broadcast-tellstick-discover.nse
+share/nmap/scripts/broadcast-upnp-info.nse
+share/nmap/scripts/broadcast-versant-locate.nse
+share/nmap/scripts/broadcast-wake-on-lan.nse
+share/nmap/scripts/broadcast-wpad-discover.nse
+share/nmap/scripts/broadcast-wsdd-discover.nse
+share/nmap/scripts/broadcast-xdmcp-discover.nse
+share/nmap/scripts/cassandra-brute.nse
+share/nmap/scripts/cassandra-info.nse
+share/nmap/scripts/cccam-version.nse
+share/nmap/scripts/cics-enum.nse
+share/nmap/scripts/cics-info.nse
+share/nmap/scripts/cics-user-brute.nse
+share/nmap/scripts/cics-user-enum.nse
+share/nmap/scripts/citrix-brute-xml.nse
+share/nmap/scripts/citrix-enum-apps-xml.nse
+share/nmap/scripts/citrix-enum-apps.nse
+share/nmap/scripts/citrix-enum-servers-xml.nse
+share/nmap/scripts/citrix-enum-servers.nse
+share/nmap/scripts/clamav-exec.nse
+share/nmap/scripts/clock-skew.nse
+share/nmap/scripts/coap-resources.nse
+share/nmap/scripts/couchdb-databases.nse
+share/nmap/scripts/couchdb-stats.nse
+share/nmap/scripts/creds-summary.nse
+share/nmap/scripts/cups-info.nse
+share/nmap/scripts/cups-queue-info.nse
+share/nmap/scripts/cvs-brute-repository.nse
+share/nmap/scripts/cvs-brute.nse
+share/nmap/scripts/daap-get-library.nse
+share/nmap/scripts/daytime.nse
+share/nmap/scripts/db2-das-info.nse
+share/nmap/scripts/deluge-rpc-brute.nse
+share/nmap/scripts/dhcp-discover.nse
+share/nmap/scripts/dicom-brute.nse
+share/nmap/scripts/dicom-ping.nse
+share/nmap/scripts/dict-info.nse
+share/nmap/scripts/distcc-cve2004-2687.nse
+share/nmap/scripts/dns-blacklist.nse
+share/nmap/scripts/dns-brute.nse
+share/nmap/scripts/dns-cache-snoop.nse
+share/nmap/scripts/dns-check-zone.nse
+share/nmap/scripts/dns-client-subnet-scan.nse
+share/nmap/scripts/dns-fuzz.nse
+share/nmap/scripts/dns-ip6-arpa-scan.nse
+share/nmap/scripts/dns-nsec-enum.nse
+share/nmap/scripts/dns-nsec3-enum.nse
+share/nmap/scripts/dns-nsid.nse
+share/nmap/scripts/dns-random-srcport.nse
+share/nmap/scripts/dns-random-txid.nse
+share/nmap/scripts/dns-recursion.nse
+share/nmap/scripts/dns-service-discovery.nse
+share/nmap/scripts/dns-srv-enum.nse
+share/nmap/scripts/dns-update.nse
+share/nmap/scripts/dns-zeustracker.nse
+share/nmap/scripts/dns-zone-transfer.nse
+share/nmap/scripts/docker-version.nse
+share/nmap/scripts/domcon-brute.nse
+share/nmap/scripts/domcon-cmd.nse
+share/nmap/scripts/domino-enum-users.nse
+share/nmap/scripts/dpap-brute.nse
+share/nmap/scripts/drda-brute.nse
+share/nmap/scripts/drda-info.nse
+share/nmap/scripts/duplicates.nse
+share/nmap/scripts/eap-info.nse
+share/nmap/scripts/enip-info.nse
+share/nmap/scripts/epmd-info.nse
+share/nmap/scripts/eppc-enum-processes.nse
+share/nmap/scripts/fcrdns.nse
+share/nmap/scripts/finger.nse
+share/nmap/scripts/fingerprint-strings.nse
+share/nmap/scripts/firewalk.nse
+share/nmap/scripts/firewall-bypass.nse
+share/nmap/scripts/flume-master-info.nse
+share/nmap/scripts/fox-info.nse
+share/nmap/scripts/freelancer-info.nse
+share/nmap/scripts/ftp-anon.nse
+share/nmap/scripts/ftp-bounce.nse
+share/nmap/scripts/ftp-brute.nse
+share/nmap/scripts/ftp-libopie.nse
+share/nmap/scripts/ftp-proftpd-backdoor.nse
+share/nmap/scripts/ftp-syst.nse
+share/nmap/scripts/ftp-vsftpd-backdoor.nse
+share/nmap/scripts/ftp-vuln-cve2010-4221.nse
+share/nmap/scripts/ganglia-info.nse
+share/nmap/scripts/giop-info.nse
+share/nmap/scripts/gkrellm-info.nse
+share/nmap/scripts/gopher-ls.nse
+share/nmap/scripts/gpsd-info.nse
+share/nmap/scripts/hadoop-datanode-info.nse
+share/nmap/scripts/hadoop-jobtracker-info.nse
+share/nmap/scripts/hadoop-namenode-info.nse
+share/nmap/scripts/hadoop-secondary-namenode-info.nse
+share/nmap/scripts/hadoop-tasktracker-info.nse
+share/nmap/scripts/hartip-info.nse
+share/nmap/scripts/hbase-master-info.nse
+share/nmap/scripts/hbase-region-info.nse
+share/nmap/scripts/hddtemp-info.nse
+share/nmap/scripts/hnap-info.nse
+share/nmap/scripts/hostmap-bfk.nse
+share/nmap/scripts/hostmap-crtsh.nse
+share/nmap/scripts/hostmap-robtex.nse
+share/nmap/scripts/http-adobe-coldfusion-apsa1301.nse
+share/nmap/scripts/http-affiliate-id.nse
+share/nmap/scripts/http-apache-negotiation.nse
+share/nmap/scripts/http-apache-server-status.nse
+share/nmap/scripts/http-aspnet-debug.nse
+share/nmap/scripts/http-auth-finder.nse
+share/nmap/scripts/http-auth.nse
+share/nmap/scripts/http-avaya-ipoffice-users.nse
+share/nmap/scripts/http-awstatstotals-exec.nse
+share/nmap/scripts/http-axis2-dir-traversal.nse
+share/nmap/scripts/http-backup-finder.nse
+share/nmap/scripts/http-barracuda-dir-traversal.nse
+share/nmap/scripts/http-bigip-cookie.nse
+share/nmap/scripts/http-brute.nse
+share/nmap/scripts/http-cakephp-version.nse
+share/nmap/scripts/http-chrono.nse
+share/nmap/scripts/http-cisco-anyconnect.nse
+share/nmap/scripts/http-coldfusion-subzero.nse
+share/nmap/scripts/http-comments-displayer.nse
+share/nmap/scripts/http-config-backup.nse
+share/nmap/scripts/http-cookie-flags.nse
+share/nmap/scripts/http-cors.nse
+share/nmap/scripts/http-cross-domain-policy.nse
+share/nmap/scripts/http-csrf.nse
+share/nmap/scripts/http-date.nse
+share/nmap/scripts/http-default-accounts.nse
+share/nmap/scripts/http-devframework.nse
+share/nmap/scripts/http-dlink-backdoor.nse
+share/nmap/scripts/http-dombased-xss.nse
+share/nmap/scripts/http-domino-enum-passwords.nse
+share/nmap/scripts/http-drupal-enum-users.nse
+share/nmap/scripts/http-drupal-enum.nse
+share/nmap/scripts/http-enum.nse
+share/nmap/scripts/http-errors.nse
+share/nmap/scripts/http-exif-spider.nse
+share/nmap/scripts/http-favicon.nse
+share/nmap/scripts/http-feed.nse
+share/nmap/scripts/http-fetch.nse
+share/nmap/scripts/http-fileupload-exploiter.nse
+share/nmap/scripts/http-form-brute.nse
+share/nmap/scripts/http-form-fuzzer.nse
+share/nmap/scripts/http-frontpage-login.nse
+share/nmap/scripts/http-generator.nse
+share/nmap/scripts/http-git.nse
+share/nmap/scripts/http-gitweb-projects-enum.nse
+share/nmap/scripts/http-google-malware.nse
+share/nmap/scripts/http-grep.nse
+share/nmap/scripts/http-headers.nse
+share/nmap/scripts/http-hp-ilo-info.nse
+share/nmap/scripts/http-huawei-hg5xx-vuln.nse
+share/nmap/scripts/http-icloud-findmyiphone.nse
+share/nmap/scripts/http-icloud-sendmsg.nse
+share/nmap/scripts/http-iis-short-name-brute.nse
+share/nmap/scripts/http-iis-webdav-vuln.nse
+share/nmap/scripts/http-internal-ip-disclosure.nse
+share/nmap/scripts/http-joomla-brute.nse
+share/nmap/scripts/http-jsonp-detection.nse
+share/nmap/scripts/http-litespeed-sourcecode-download.nse
+share/nmap/scripts/http-ls.nse
+share/nmap/scripts/http-majordomo2-dir-traversal.nse
+share/nmap/scripts/http-malware-host.nse
+share/nmap/scripts/http-mcmp.nse
+share/nmap/scripts/http-method-tamper.nse
+share/nmap/scripts/http-methods.nse
+share/nmap/scripts/http-mobileversion-checker.nse
+share/nmap/scripts/http-ntlm-info.nse
+share/nmap/scripts/http-open-proxy.nse
+share/nmap/scripts/http-open-redirect.nse
+share/nmap/scripts/http-passwd.nse
+share/nmap/scripts/http-php-version.nse
+share/nmap/scripts/http-phpmyadmin-dir-traversal.nse
+share/nmap/scripts/http-phpself-xss.nse
+share/nmap/scripts/http-proxy-brute.nse
+share/nmap/scripts/http-put.nse
+share/nmap/scripts/http-qnap-nas-info.nse
+share/nmap/scripts/http-referer-checker.nse
+share/nmap/scripts/http-rfi-spider.nse
+share/nmap/scripts/http-robots.txt.nse
+share/nmap/scripts/http-robtex-reverse-ip.nse
+share/nmap/scripts/http-robtex-shared-ns.nse
+share/nmap/scripts/http-sap-netweaver-leak.nse
+share/nmap/scripts/http-security-headers.nse
+share/nmap/scripts/http-server-header.nse
+share/nmap/scripts/http-shellshock.nse
+share/nmap/scripts/http-sitemap-generator.nse
+share/nmap/scripts/http-slowloris-check.nse
+share/nmap/scripts/http-slowloris.nse
+share/nmap/scripts/http-sql-injection.nse
+share/nmap/scripts/http-stored-xss.nse
+share/nmap/scripts/http-svn-enum.nse
+share/nmap/scripts/http-svn-info.nse
+share/nmap/scripts/http-title.nse
+share/nmap/scripts/http-tplink-dir-traversal.nse
+share/nmap/scripts/http-trace.nse
+share/nmap/scripts/http-traceroute.nse
+share/nmap/scripts/http-trane-info.nse
+share/nmap/scripts/http-unsafe-output-escaping.nse
+share/nmap/scripts/http-useragent-tester.nse
+share/nmap/scripts/http-userdir-enum.nse
+share/nmap/scripts/http-vhosts.nse
+share/nmap/scripts/http-virustotal.nse
+share/nmap/scripts/http-vlcstreamer-ls.nse
+share/nmap/scripts/http-vmware-path-vuln.nse
+share/nmap/scripts/http-vuln-cve2006-3392.nse
+share/nmap/scripts/http-vuln-cve2009-3960.nse
+share/nmap/scripts/http-vuln-cve2010-0738.nse
+share/nmap/scripts/http-vuln-cve2010-2861.nse
+share/nmap/scripts/http-vuln-cve2011-3192.nse
+share/nmap/scripts/http-vuln-cve2011-3368.nse
+share/nmap/scripts/http-vuln-cve2012-1823.nse
+share/nmap/scripts/http-vuln-cve2013-0156.nse
+share/nmap/scripts/http-vuln-cve2013-6786.nse
+share/nmap/scripts/http-vuln-cve2013-7091.nse
+share/nmap/scripts/http-vuln-cve2014-2126.nse
+share/nmap/scripts/http-vuln-cve2014-2127.nse
+share/nmap/scripts/http-vuln-cve2014-2128.nse
+share/nmap/scripts/http-vuln-cve2014-2129.nse
+share/nmap/scripts/http-vuln-cve2014-3704.nse
+share/nmap/scripts/http-vuln-cve2014-8877.nse
+share/nmap/scripts/http-vuln-cve2015-1427.nse
+share/nmap/scripts/http-vuln-cve2015-1635.nse
+share/nmap/scripts/http-vuln-cve2017-1001000.nse
+share/nmap/scripts/http-vuln-cve2017-5638.nse
+share/nmap/scripts/http-vuln-cve2017-5689.nse
+share/nmap/scripts/http-vuln-cve2017-8917.nse
+share/nmap/scripts/http-vuln-misfortune-cookie.nse
+share/nmap/scripts/http-vuln-wnr1000-creds.nse
+share/nmap/scripts/http-waf-detect.nse
+share/nmap/scripts/http-waf-fingerprint.nse
+share/nmap/scripts/http-webdav-scan.nse
+share/nmap/scripts/http-wordpress-brute.nse
+share/nmap/scripts/http-wordpress-enum.nse
+share/nmap/scripts/http-wordpress-users.nse
+share/nmap/scripts/http-xssed.nse
+share/nmap/scripts/https-redirect.nse
+share/nmap/scripts/iax2-brute.nse
+share/nmap/scripts/iax2-version.nse
+share/nmap/scripts/icap-info.nse
+share/nmap/scripts/iec-identify.nse
+share/nmap/scripts/iec61850-mms.nse
+share/nmap/scripts/ike-version.nse
+share/nmap/scripts/imap-brute.nse
+share/nmap/scripts/imap-capabilities.nse
+share/nmap/scripts/imap-ntlm-info.nse
+share/nmap/scripts/impress-remote-discover.nse
+share/nmap/scripts/informix-brute.nse
+share/nmap/scripts/informix-query.nse
+share/nmap/scripts/informix-tables.nse
+share/nmap/scripts/ip-forwarding.nse
+share/nmap/scripts/ip-geolocation-geoplugin.nse
+share/nmap/scripts/ip-geolocation-ipinfodb.nse
+share/nmap/scripts/ip-geolocation-map-bing.nse
+share/nmap/scripts/ip-geolocation-map-google.nse
+share/nmap/scripts/ip-geolocation-map-kml.nse
+share/nmap/scripts/ip-geolocation-maxmind.nse
+share/nmap/scripts/ip-https-discover.nse
+share/nmap/scripts/ipidseq.nse
+share/nmap/scripts/ipmi-brute.nse
+share/nmap/scripts/ipmi-cipher-zero.nse
+share/nmap/scripts/ipmi-version.nse
+share/nmap/scripts/ipv6-multicast-mld-list.nse
+share/nmap/scripts/ipv6-node-info.nse
+share/nmap/scripts/ipv6-ra-flood.nse
+share/nmap/scripts/irc-botnet-channels.nse
+share/nmap/scripts/irc-brute.nse
+share/nmap/scripts/irc-info.nse
+share/nmap/scripts/irc-sasl-brute.nse
+share/nmap/scripts/irc-unrealircd-backdoor.nse
+share/nmap/scripts/iscsi-brute.nse
+share/nmap/scripts/iscsi-info.nse
+share/nmap/scripts/isns-info.nse
+share/nmap/scripts/jdwp-exec.nse
+share/nmap/scripts/jdwp-info.nse
+share/nmap/scripts/jdwp-inject.nse
+share/nmap/scripts/jdwp-version.nse
+share/nmap/scripts/knx-gateway-discover.nse
+share/nmap/scripts/knx-gateway-info.nse
+share/nmap/scripts/krb5-enum-users.nse
+share/nmap/scripts/ldap-brute.nse
+share/nmap/scripts/ldap-novell-getpass.nse
+share/nmap/scripts/ldap-rootdse.nse
+share/nmap/scripts/ldap-search.nse
+share/nmap/scripts/lexmark-config.nse
+share/nmap/scripts/llmnr-resolve.nse
+share/nmap/scripts/lltd-discovery.nse
+share/nmap/scripts/lu-enum.nse
+share/nmap/scripts/maxdb-info.nse
+share/nmap/scripts/mcafee-epo-agent.nse
+share/nmap/scripts/membase-brute.nse
+share/nmap/scripts/membase-http-info.nse
+share/nmap/scripts/memcached-info.nse
+share/nmap/scripts/metasploit-info.nse
+share/nmap/scripts/metasploit-msgrpc-brute.nse
+share/nmap/scripts/metasploit-xmlrpc-brute.nse
+share/nmap/scripts/mikrotik-routeros-brute.nse
+share/nmap/scripts/mikrotik-routeros-username-brute.nse
+share/nmap/scripts/mikrotik-routeros-version.nse
+share/nmap/scripts/mmouse-brute.nse
+share/nmap/scripts/mmouse-exec.nse
+share/nmap/scripts/modbus-discover.nse
+share/nmap/scripts/mongodb-brute.nse
+share/nmap/scripts/mongodb-databases.nse
+share/nmap/scripts/mongodb-info.nse
+share/nmap/scripts/mqtt-subscribe.nse
+share/nmap/scripts/mrinfo.nse
+share/nmap/scripts/ms-sql-brute.nse
+share/nmap/scripts/ms-sql-config.nse
+share/nmap/scripts/ms-sql-dac.nse
+share/nmap/scripts/ms-sql-dump-hashes.nse
+share/nmap/scripts/ms-sql-empty-password.nse
+share/nmap/scripts/ms-sql-hasdbaccess.nse
+share/nmap/scripts/ms-sql-info.nse
+share/nmap/scripts/ms-sql-ntlm-info.nse
+share/nmap/scripts/ms-sql-query.nse
+share/nmap/scripts/ms-sql-tables.nse
+share/nmap/scripts/ms-sql-xp-cmdshell.nse
+share/nmap/scripts/msrpc-enum.nse
+share/nmap/scripts/mtrace.nse
+share/nmap/scripts/multicast-profinet-discovery.nse
+share/nmap/scripts/murmur-version.nse
+share/nmap/scripts/mysql-audit.nse
+share/nmap/scripts/mysql-brute.nse
+share/nmap/scripts/mysql-databases.nse
+share/nmap/scripts/mysql-dump-hashes.nse
+share/nmap/scripts/mysql-empty-password.nse
+share/nmap/scripts/mysql-enum.nse
+share/nmap/scripts/mysql-info.nse
+share/nmap/scripts/mysql-query.nse
+share/nmap/scripts/mysql-users.nse
+share/nmap/scripts/mysql-variables.nse
+share/nmap/scripts/mysql-vuln-cve2012-2122.nse
+share/nmap/scripts/nat-pmp-info.nse
+share/nmap/scripts/nat-pmp-mapport.nse
+share/nmap/scripts/nbd-info.nse
+share/nmap/scripts/nbns-interfaces.nse
+share/nmap/scripts/nbstat.nse
+share/nmap/scripts/ncp-enum-users.nse
+share/nmap/scripts/ncp-serverinfo.nse
+share/nmap/scripts/ndmp-fs-info.nse
+share/nmap/scripts/ndmp-version.nse
+share/nmap/scripts/nessus-brute.nse
+share/nmap/scripts/nessus-xmlrpc-brute.nse
+share/nmap/scripts/netbus-auth-bypass.nse
+share/nmap/scripts/netbus-brute.nse
+share/nmap/scripts/netbus-info.nse
+share/nmap/scripts/netbus-version.nse
+share/nmap/scripts/nexpose-brute.nse
+share/nmap/scripts/nfs-ls.nse
+share/nmap/scripts/nfs-showmount.nse
+share/nmap/scripts/nfs-statfs.nse
+share/nmap/scripts/nje-node-brute.nse
+share/nmap/scripts/nje-pass-brute.nse
+share/nmap/scripts/nntp-ntlm-info.nse
+share/nmap/scripts/nping-brute.nse
+share/nmap/scripts/nrpe-enum.nse
+share/nmap/scripts/ntp-info.nse
+share/nmap/scripts/ntp-monlist.nse
+share/nmap/scripts/omp2-brute.nse
+share/nmap/scripts/omp2-enum-targets.nse
+share/nmap/scripts/omron-info.nse
+share/nmap/scripts/openflow-info.nse
+share/nmap/scripts/openlookup-info.nse
+share/nmap/scripts/openvas-otp-brute.nse
+share/nmap/scripts/openwebnet-discovery.nse
+share/nmap/scripts/oracle-brute-stealth.nse
+share/nmap/scripts/oracle-brute.nse
+share/nmap/scripts/oracle-enum-users.nse
+share/nmap/scripts/oracle-sid-brute.nse
+share/nmap/scripts/oracle-tns-version.nse
+share/nmap/scripts/ovs-agent-version.nse
+share/nmap/scripts/p2p-conficker.nse
+share/nmap/scripts/path-mtu.nse
+share/nmap/scripts/pcanywhere-brute.nse
+share/nmap/scripts/pcworx-info.nse
+share/nmap/scripts/pgsql-brute.nse
+share/nmap/scripts/pjl-ready-message.nse
+share/nmap/scripts/pop3-brute.nse
+share/nmap/scripts/pop3-capabilities.nse
+share/nmap/scripts/pop3-ntlm-info.nse
+share/nmap/scripts/port-states.nse
+share/nmap/scripts/pptp-version.nse
+share/nmap/scripts/profinet-cm-lookup.nse
+share/nmap/scripts/puppet-naivesigning.nse
+share/nmap/scripts/qconn-exec.nse
+share/nmap/scripts/qscan.nse
+share/nmap/scripts/quake1-info.nse
+share/nmap/scripts/quake3-info.nse
+share/nmap/scripts/quake3-master-getservers.nse
+share/nmap/scripts/rdp-enum-encryption.nse
+share/nmap/scripts/rdp-ntlm-info.nse
+share/nmap/scripts/rdp-vuln-ms12-020.nse
+share/nmap/scripts/realvnc-auth-bypass.nse
+share/nmap/scripts/redis-brute.nse
+share/nmap/scripts/redis-info.nse
+share/nmap/scripts/resolveall.nse
+share/nmap/scripts/reverse-index.nse
+share/nmap/scripts/rexec-brute.nse
+share/nmap/scripts/rfc868-time.nse
+share/nmap/scripts/riak-http-info.nse
+share/nmap/scripts/rlogin-brute.nse
+share/nmap/scripts/rmi-dumpregistry.nse
+share/nmap/scripts/rmi-vuln-classloader.nse
+share/nmap/scripts/rpc-grind.nse
+share/nmap/scripts/rpcap-brute.nse
+share/nmap/scripts/rpcap-info.nse
+share/nmap/scripts/rpcinfo.nse
+share/nmap/scripts/rsa-vuln-roca.nse
+share/nmap/scripts/rsync-brute.nse
+share/nmap/scripts/rsync-list-modules.nse
+share/nmap/scripts/rtsp-methods.nse
+share/nmap/scripts/rtsp-url-brute.nse
+share/nmap/scripts/rusers.nse
+share/nmap/scripts/s7-info.nse
+share/nmap/scripts/samba-vuln-cve-2012-1182.nse
+share/nmap/scripts/script.db
+share/nmap/scripts/servicetags.nse
+share/nmap/scripts/shodan-api.nse
+share/nmap/scripts/sip-brute.nse
+share/nmap/scripts/sip-call-spoof.nse
+share/nmap/scripts/sip-enum-users.nse
+share/nmap/scripts/sip-methods.nse
+share/nmap/scripts/skypev2-version.nse
+share/nmap/scripts/smb-brute.nse
+share/nmap/scripts/smb-double-pulsar-backdoor.nse
+share/nmap/scripts/smb-enum-domains.nse
+share/nmap/scripts/smb-enum-groups.nse
+share/nmap/scripts/smb-enum-processes.nse
+share/nmap/scripts/smb-enum-services.nse
+share/nmap/scripts/smb-enum-sessions.nse
+share/nmap/scripts/smb-enum-shares.nse
+share/nmap/scripts/smb-enum-users.nse
+share/nmap/scripts/smb-flood.nse
+share/nmap/scripts/smb-ls.nse
+share/nmap/scripts/smb-mbenum.nse
+share/nmap/scripts/smb-os-discovery.nse
+share/nmap/scripts/smb-print-text.nse
+share/nmap/scripts/smb-protocols.nse
+share/nmap/scripts/smb-psexec.nse
+share/nmap/scripts/smb-security-mode.nse
+share/nmap/scripts/smb-server-stats.nse
+share/nmap/scripts/smb-system-info.nse
+share/nmap/scripts/smb-vuln-conficker.nse
+share/nmap/scripts/smb-vuln-cve-2017-7494.nse
+share/nmap/scripts/smb-vuln-cve2009-3103.nse
+share/nmap/scripts/smb-vuln-ms06-025.nse
+share/nmap/scripts/smb-vuln-ms07-029.nse
+share/nmap/scripts/smb-vuln-ms08-067.nse
+share/nmap/scripts/smb-vuln-ms10-054.nse
+share/nmap/scripts/smb-vuln-ms10-061.nse
+share/nmap/scripts/smb-vuln-ms17-010.nse
+share/nmap/scripts/smb-vuln-regsvc-dos.nse
+share/nmap/scripts/smb-vuln-webexec.nse
+share/nmap/scripts/smb-webexec-exploit.nse
+share/nmap/scripts/smb2-capabilities.nse
+share/nmap/scripts/smb2-security-mode.nse
+share/nmap/scripts/smb2-time.nse
+share/nmap/scripts/smb2-vuln-uptime.nse
+share/nmap/scripts/smtp-brute.nse
+share/nmap/scripts/smtp-commands.nse
+share/nmap/scripts/smtp-enum-users.nse
+share/nmap/scripts/smtp-ntlm-info.nse
+share/nmap/scripts/smtp-open-relay.nse
+share/nmap/scripts/smtp-strangeport.nse
+share/nmap/scripts/smtp-vuln-cve2010-4344.nse
+share/nmap/scripts/smtp-vuln-cve2011-1720.nse
+share/nmap/scripts/smtp-vuln-cve2011-1764.nse
+share/nmap/scripts/sniffer-detect.nse
+share/nmap/scripts/snmp-brute.nse
+share/nmap/scripts/snmp-hh3c-logins.nse
+share/nmap/scripts/snmp-info.nse
+share/nmap/scripts/snmp-interfaces.nse
+share/nmap/scripts/snmp-ios-config.nse
+share/nmap/scripts/snmp-netstat.nse
+share/nmap/scripts/snmp-processes.nse
+share/nmap/scripts/snmp-sysdescr.nse
+share/nmap/scripts/snmp-win32-services.nse
+share/nmap/scripts/snmp-win32-shares.nse
+share/nmap/scripts/snmp-win32-software.nse
+share/nmap/scripts/snmp-win32-users.nse
+share/nmap/scripts/socks-auth-info.nse
+share/nmap/scripts/socks-brute.nse
+share/nmap/scripts/socks-open-proxy.nse
+share/nmap/scripts/ssh-auth-methods.nse
+share/nmap/scripts/ssh-brute.nse
+share/nmap/scripts/ssh-hostkey.nse
+share/nmap/scripts/ssh-publickey-acceptance.nse
+share/nmap/scripts/ssh-run.nse
+share/nmap/scripts/ssh2-enum-algos.nse
+share/nmap/scripts/sshv1.nse
+share/nmap/scripts/ssl-ccs-injection.nse
+share/nmap/scripts/ssl-cert-intaddr.nse
+share/nmap/scripts/ssl-cert.nse
+share/nmap/scripts/ssl-date.nse
+share/nmap/scripts/ssl-dh-params.nse
+share/nmap/scripts/ssl-enum-ciphers.nse
+share/nmap/scripts/ssl-heartbleed.nse
+share/nmap/scripts/ssl-known-key.nse
+share/nmap/scripts/ssl-poodle.nse
+share/nmap/scripts/sslv2-drown.nse
+share/nmap/scripts/sslv2.nse
+share/nmap/scripts/sstp-discover.nse
+share/nmap/scripts/stun-info.nse
+share/nmap/scripts/stun-version.nse
+share/nmap/scripts/stuxnet-detect.nse
+share/nmap/scripts/supermicro-ipmi-conf.nse
+share/nmap/scripts/svn-brute.nse
+share/nmap/scripts/targets-asn.nse
+share/nmap/scripts/targets-ipv6-eui64.nse
+share/nmap/scripts/targets-ipv6-map4to6.nse
+share/nmap/scripts/targets-ipv6-multicast-echo.nse
+share/nmap/scripts/targets-ipv6-multicast-invalid-dst.nse
+share/nmap/scripts/targets-ipv6-multicast-mld.nse
+share/nmap/scripts/targets-ipv6-multicast-slaac.nse
+share/nmap/scripts/targets-ipv6-wordlist.nse
+share/nmap/scripts/targets-sniffer.nse
+share/nmap/scripts/targets-traceroute.nse
+share/nmap/scripts/targets-xml.nse
+share/nmap/scripts/teamspeak2-version.nse
+share/nmap/scripts/telnet-brute.nse
+share/nmap/scripts/telnet-encryption.nse
+share/nmap/scripts/telnet-ntlm-info.nse
+share/nmap/scripts/tftp-enum.nse
+share/nmap/scripts/tftp-version.nse
+share/nmap/scripts/tls-alpn.nse
+share/nmap/scripts/tls-nextprotoneg.nse
+share/nmap/scripts/tls-ticketbleed.nse
+share/nmap/scripts/tn3270-screen.nse
+share/nmap/scripts/tor-consensus-checker.nse
+share/nmap/scripts/traceroute-geolocation.nse
+share/nmap/scripts/tso-brute.nse
+share/nmap/scripts/tso-enum.nse
+share/nmap/scripts/ubiquiti-discovery.nse
+share/nmap/scripts/unittest.nse
+share/nmap/scripts/unusual-port.nse
+share/nmap/scripts/upnp-info.nse
+share/nmap/scripts/uptime-agent-info.nse
+share/nmap/scripts/url-snarf.nse
+share/nmap/scripts/ventrilo-info.nse
+share/nmap/scripts/versant-info.nse
+share/nmap/scripts/vmauthd-brute.nse
+share/nmap/scripts/vmware-version.nse
+share/nmap/scripts/vnc-brute.nse
+share/nmap/scripts/vnc-info.nse
+share/nmap/scripts/vnc-title.nse
+share/nmap/scripts/voldemort-info.nse
+share/nmap/scripts/vtam-enum.nse
+share/nmap/scripts/vulners.nse
+share/nmap/scripts/vuze-dht-info.nse
+share/nmap/scripts/wdb-version.nse
+share/nmap/scripts/weblogic-t3-info.nse
+share/nmap/scripts/whois-domain.nse
+share/nmap/scripts/whois-ip.nse
+share/nmap/scripts/wsdd-discover.nse
+share/nmap/scripts/x11-access.nse
+share/nmap/scripts/xdmcp-discover.nse
+share/nmap/scripts/xmlrpc-methods.nse
+share/nmap/scripts/xmpp-brute.nse
+share/nmap/scripts/xmpp-info.nse
Index: net/nmap/pkg/PLIST-main
===================================================================
RCS file: net/nmap/pkg/PLIST-main
diff -N net/nmap/pkg/PLIST-main
--- net/nmap/pkg/PLIST-main 23 Oct 2025 13:20:07 -0000 1.21
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,825 +0,0 @@
-@conflict ndiff-*
-@pkgpath net/ndiff
-@pkgpath net/nmap
-@pkgpath net/nmap,no_x11
-@bin bin/ncat
-bin/ndiff
-@bin bin/nmap
-@bin bin/nping
-@comment bin/uninstall_ndiff
-lib/python${MODPY_VERSION}/site-packages/${MODPY_PYCACHE}/
-lib/python${MODPY_VERSION}/site-packages/${MODPY_PYCACHE}ndiff.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/ndiff.py
-@man man/man1/ncat.1
-@man man/man1/ndiff.1
-@man man/man1/nmap.1
-@man man/man1/nping.1
-@comment share/applications/
-share/ncat/
-share/ncat/ca-bundle.crt
-share/nmap/
-share/nmap/nmap-mac-prefixes
-share/nmap/nmap-os-db
-share/nmap/nmap-payloads
-share/nmap/nmap-protocols
-share/nmap/nmap-rpc
-share/nmap/nmap-service-probes
-share/nmap/nmap-services
-share/nmap/nmap.dtd
-share/nmap/nmap.xsl
-share/nmap/nse_main.lua
-share/nmap/nselib/
-share/nmap/nselib/afp.lua
-share/nmap/nselib/ajp.lua
-share/nmap/nselib/amqp.lua
-share/nmap/nselib/anyconnect.lua
-share/nmap/nselib/asn1.lua
-share/nmap/nselib/base32.lua
-share/nmap/nselib/base64.lua
-share/nmap/nselib/bin.lua
-share/nmap/nselib/bitcoin.lua
-share/nmap/nselib/bits.lua
-share/nmap/nselib/bittorrent.lua
-share/nmap/nselib/bjnp.lua
-share/nmap/nselib/brute.lua
-share/nmap/nselib/cassandra.lua
-share/nmap/nselib/citrixxml.lua
-share/nmap/nselib/coap.lua
-share/nmap/nselib/comm.lua
-share/nmap/nselib/creds.lua
-share/nmap/nselib/cvs.lua
-share/nmap/nselib/data/
-share/nmap/nselib/data/dns-srv-names
-share/nmap/nselib/data/drupal-modules.lst
-share/nmap/nselib/data/drupal-themes.lst
-share/nmap/nselib/data/enterprise_numbers.txt
-share/nmap/nselib/data/favicon-db
-share/nmap/nselib/data/http-default-accounts-fingerprints.lua
-share/nmap/nselib/data/http-devframework-fingerprints.lua
-share/nmap/nselib/data/http-fingerprints.lua
-share/nmap/nselib/data/http-folders.txt
-share/nmap/nselib/data/http-sql-errors.lst
-share/nmap/nselib/data/http-web-files-extensions.lst
-share/nmap/nselib/data/idnaMappings.lua
-share/nmap/nselib/data/ike-fingerprints.lua
-share/nmap/nselib/data/jdwp-class/
-share/nmap/nselib/data/jdwp-class/JDWPExecCmd.class
-share/nmap/nselib/data/jdwp-class/JDWPExecCmd.java
-share/nmap/nselib/data/jdwp-class/JDWPSystemInfo.class
-share/nmap/nselib/data/jdwp-class/JDWPSystemInfo.java
-share/nmap/nselib/data/jdwp-class/README.txt
-share/nmap/nselib/data/mgroupnames.db
-share/nmap/nselib/data/mysql-cis.audit
-share/nmap/nselib/data/oracle-default-accounts.lst
-share/nmap/nselib/data/oracle-sids
-share/nmap/nselib/data/packetdecoders.lua
-share/nmap/nselib/data/passwords.lst
-share/nmap/nselib/data/pixel.gif
-share/nmap/nselib/data/psexec/
-share/nmap/nselib/data/psexec/README
-share/nmap/nselib/data/psexec/backdoor.lua
-share/nmap/nselib/data/psexec/default.lua
-share/nmap/nselib/data/psexec/drives.lua
-share/nmap/nselib/data/psexec/examples.lua
-share/nmap/nselib/data/psexec/experimental.lua
-share/nmap/nselib/data/psexec/network.lua
-share/nmap/nselib/data/psexec/nmap_service.c
-share/nmap/nselib/data/psexec/nmap_service.vcproj
-share/nmap/nselib/data/psexec/pwdump.lua
-share/nmap/nselib/data/publickeydb
-share/nmap/nselib/data/rtsp-urls.txt
-share/nmap/nselib/data/snmpcommunities.lst
-share/nmap/nselib/data/ssl-fingerprints
-share/nmap/nselib/data/targets-ipv6-wordlist
-share/nmap/nselib/data/tftplist.txt
-share/nmap/nselib/data/usernames.lst
-share/nmap/nselib/data/vhosts-default.lst
-share/nmap/nselib/data/vhosts-full.lst
-share/nmap/nselib/data/wp-plugins.lst
-share/nmap/nselib/data/wp-themes.lst
-share/nmap/nselib/datafiles.lua
-share/nmap/nselib/datetime.lua
-share/nmap/nselib/dhcp.lua
-share/nmap/nselib/dhcp6.lua
-share/nmap/nselib/dicom.lua
-share/nmap/nselib/dns.lua
-share/nmap/nselib/dnsbl.lua
-share/nmap/nselib/dnssd.lua
-share/nmap/nselib/drda.lua
-share/nmap/nselib/eap.lua
-share/nmap/nselib/eigrp.lua
-share/nmap/nselib/formulas.lua
-share/nmap/nselib/ftp.lua
-share/nmap/nselib/geoip.lua
-share/nmap/nselib/giop.lua
-share/nmap/nselib/gps.lua
-share/nmap/nselib/http.lua
-share/nmap/nselib/httpspider.lua
-share/nmap/nselib/iax2.lua
-share/nmap/nselib/idna.lua
-share/nmap/nselib/ike.lua
-share/nmap/nselib/imap.lua
-share/nmap/nselib/informix.lua
-share/nmap/nselib/ipOps.lua
-share/nmap/nselib/ipmi.lua
-share/nmap/nselib/ipp.lua
-share/nmap/nselib/irc.lua
-share/nmap/nselib/iscsi.lua
-share/nmap/nselib/isns.lua
-share/nmap/nselib/jdwp.lua
-share/nmap/nselib/json.lua
-share/nmap/nselib/knx.lua
-share/nmap/nselib/ldap.lua
-share/nmap/nselib/lfs.luadoc
-share/nmap/nselib/libssh2-utility.lua
-share/nmap/nselib/libssh2.luadoc
-share/nmap/nselib/listop.lua
-share/nmap/nselib/lpeg-utility.lua
-share/nmap/nselib/lpeg.luadoc
-share/nmap/nselib/ls.lua
-share/nmap/nselib/match.lua
-share/nmap/nselib/membase.lua
-share/nmap/nselib/mobileme.lua
-share/nmap/nselib/mongodb.lua
-share/nmap/nselib/mqtt.lua
-share/nmap/nselib/msrpc.lua
-share/nmap/nselib/msrpcperformance.lua
-share/nmap/nselib/msrpctypes.lua
-share/nmap/nselib/mssql.lua
-share/nmap/nselib/multicast.lua
-share/nmap/nselib/mysql.lua
-share/nmap/nselib/natpmp.lua
-share/nmap/nselib/nbd.lua
-share/nmap/nselib/ncp.lua
-share/nmap/nselib/ndmp.lua
-share/nmap/nselib/netbios.lua
-share/nmap/nselib/nmap.luadoc
-share/nmap/nselib/nrpc.lua
-share/nmap/nselib/nsedebug.lua
-share/nmap/nselib/omp2.lua
-share/nmap/nselib/oops.lua
-share/nmap/nselib/openssl.luadoc
-share/nmap/nselib/ospf.lua
-share/nmap/nselib/outlib.lua
-share/nmap/nselib/packet.lua
-share/nmap/nselib/pcre.luadoc
-share/nmap/nselib/pgsql.lua
-share/nmap/nselib/pop3.lua
-share/nmap/nselib/pppoe.lua
-share/nmap/nselib/proxy.lua
-share/nmap/nselib/punycode.lua
-share/nmap/nselib/rand.lua
-share/nmap/nselib/rdp.lua
-share/nmap/nselib/re.lua
-share/nmap/nselib/redis.lua
-share/nmap/nselib/rmi.lua
-share/nmap/nselib/rpc.lua
-share/nmap/nselib/rpcap.lua
-share/nmap/nselib/rsync.lua
-share/nmap/nselib/rtsp.lua
-share/nmap/nselib/sasl.lua
-share/nmap/nselib/shortport.lua
-share/nmap/nselib/sip.lua
-share/nmap/nselib/slaxml.lua
-share/nmap/nselib/smb.lua
-share/nmap/nselib/smb2.lua
-share/nmap/nselib/smbauth.lua
-share/nmap/nselib/smtp.lua
-share/nmap/nselib/snmp.lua
-share/nmap/nselib/socks.lua
-share/nmap/nselib/srvloc.lua
-share/nmap/nselib/ssh1.lua
-share/nmap/nselib/ssh2.lua
-share/nmap/nselib/sslcert.lua
-share/nmap/nselib/sslv2.lua
-share/nmap/nselib/stdnse.lua
-share/nmap/nselib/strbuf.lua
-share/nmap/nselib/strict.lua
-share/nmap/nselib/stringaux.lua
-share/nmap/nselib/stun.lua
-share/nmap/nselib/tab.lua
-share/nmap/nselib/tableaux.lua
-share/nmap/nselib/target.lua
-share/nmap/nselib/tftp.lua
-share/nmap/nselib/tls.lua
-share/nmap/nselib/tn3270.lua
-share/nmap/nselib/tns.lua
-share/nmap/nselib/unicode.lua
-share/nmap/nselib/unittest.lua
-share/nmap/nselib/unpwdb.lua
-share/nmap/nselib/upnp.lua
-share/nmap/nselib/url.lua
-share/nmap/nselib/versant.lua
-share/nmap/nselib/vnc.lua
-share/nmap/nselib/vulns.lua
-share/nmap/nselib/vuzedht.lua
-share/nmap/nselib/wsdd.lua
-share/nmap/nselib/xdmcp.lua
-share/nmap/nselib/xmpp.lua
-share/nmap/nselib/zlib.luadoc
-share/nmap/scripts/
-share/nmap/scripts/acarsd-info.nse
-share/nmap/scripts/address-info.nse
-share/nmap/scripts/afp-brute.nse
-share/nmap/scripts/afp-ls.nse
-share/nmap/scripts/afp-path-vuln.nse
-share/nmap/scripts/afp-serverinfo.nse
-share/nmap/scripts/afp-showmount.nse
-share/nmap/scripts/ajp-auth.nse
-share/nmap/scripts/ajp-brute.nse
-share/nmap/scripts/ajp-headers.nse
-share/nmap/scripts/ajp-methods.nse
-share/nmap/scripts/ajp-request.nse
-share/nmap/scripts/allseeingeye-info.nse
-share/nmap/scripts/amqp-info.nse
-share/nmap/scripts/asn-query.nse
-share/nmap/scripts/auth-owners.nse
-share/nmap/scripts/auth-spoof.nse
-share/nmap/scripts/backorifice-brute.nse
-share/nmap/scripts/backorifice-info.nse
-share/nmap/scripts/bacnet-info.nse
-share/nmap/scripts/banner.nse
-share/nmap/scripts/bitcoin-getaddr.nse
-share/nmap/scripts/bitcoin-info.nse
-share/nmap/scripts/bitcoinrpc-info.nse
-share/nmap/scripts/bittorrent-discovery.nse
-share/nmap/scripts/bjnp-discover.nse
-share/nmap/scripts/broadcast-ataoe-discover.nse
-share/nmap/scripts/broadcast-avahi-dos.nse
-share/nmap/scripts/broadcast-bjnp-discover.nse
-share/nmap/scripts/broadcast-db2-discover.nse
-share/nmap/scripts/broadcast-dhcp-discover.nse
-share/nmap/scripts/broadcast-dhcp6-discover.nse
-share/nmap/scripts/broadcast-dns-service-discovery.nse
-share/nmap/scripts/broadcast-dropbox-listener.nse
-share/nmap/scripts/broadcast-eigrp-discovery.nse
-share/nmap/scripts/broadcast-hid-discoveryd.nse
-share/nmap/scripts/broadcast-igmp-discovery.nse
-share/nmap/scripts/broadcast-jenkins-discover.nse
-share/nmap/scripts/broadcast-listener.nse
-share/nmap/scripts/broadcast-ms-sql-discover.nse
-share/nmap/scripts/broadcast-netbios-master-browser.nse
-share/nmap/scripts/broadcast-networker-discover.nse
-share/nmap/scripts/broadcast-novell-locate.nse
-share/nmap/scripts/broadcast-ospf2-discover.nse
-share/nmap/scripts/broadcast-pc-anywhere.nse
-share/nmap/scripts/broadcast-pc-duo.nse
-share/nmap/scripts/broadcast-pim-discovery.nse
-share/nmap/scripts/broadcast-ping.nse
-share/nmap/scripts/broadcast-pppoe-discover.nse
-share/nmap/scripts/broadcast-rip-discover.nse
-share/nmap/scripts/broadcast-ripng-discover.nse
-share/nmap/scripts/broadcast-sonicwall-discover.nse
-share/nmap/scripts/broadcast-sybase-asa-discover.nse
-share/nmap/scripts/broadcast-tellstick-discover.nse
-share/nmap/scripts/broadcast-upnp-info.nse
-share/nmap/scripts/broadcast-versant-locate.nse
-share/nmap/scripts/broadcast-wake-on-lan.nse
-share/nmap/scripts/broadcast-wpad-discover.nse
-share/nmap/scripts/broadcast-wsdd-discover.nse
-share/nmap/scripts/broadcast-xdmcp-discover.nse
-share/nmap/scripts/cassandra-brute.nse
-share/nmap/scripts/cassandra-info.nse
-share/nmap/scripts/cccam-version.nse
-share/nmap/scripts/cics-enum.nse
-share/nmap/scripts/cics-info.nse
-share/nmap/scripts/cics-user-brute.nse
-share/nmap/scripts/cics-user-enum.nse
-share/nmap/scripts/citrix-brute-xml.nse
-share/nmap/scripts/citrix-enum-apps-xml.nse
-share/nmap/scripts/citrix-enum-apps.nse
-share/nmap/scripts/citrix-enum-servers-xml.nse
-share/nmap/scripts/citrix-enum-servers.nse
-share/nmap/scripts/clamav-exec.nse
-share/nmap/scripts/clock-skew.nse
-share/nmap/scripts/coap-resources.nse
-share/nmap/scripts/couchdb-databases.nse
-share/nmap/scripts/couchdb-stats.nse
-share/nmap/scripts/creds-summary.nse
-share/nmap/scripts/cups-info.nse
-share/nmap/scripts/cups-queue-info.nse
-share/nmap/scripts/cvs-brute-repository.nse
-share/nmap/scripts/cvs-brute.nse
-share/nmap/scripts/daap-get-library.nse
-share/nmap/scripts/daytime.nse
-share/nmap/scripts/db2-das-info.nse
-share/nmap/scripts/deluge-rpc-brute.nse
-share/nmap/scripts/dhcp-discover.nse
-share/nmap/scripts/dicom-brute.nse
-share/nmap/scripts/dicom-ping.nse
-share/nmap/scripts/dict-info.nse
-share/nmap/scripts/distcc-cve2004-2687.nse
-share/nmap/scripts/dns-blacklist.nse
-share/nmap/scripts/dns-brute.nse
-share/nmap/scripts/dns-cache-snoop.nse
-share/nmap/scripts/dns-check-zone.nse
-share/nmap/scripts/dns-client-subnet-scan.nse
-share/nmap/scripts/dns-fuzz.nse
-share/nmap/scripts/dns-ip6-arpa-scan.nse
-share/nmap/scripts/dns-nsec-enum.nse
-share/nmap/scripts/dns-nsec3-enum.nse
-share/nmap/scripts/dns-nsid.nse
-share/nmap/scripts/dns-random-srcport.nse
-share/nmap/scripts/dns-random-txid.nse
-share/nmap/scripts/dns-recursion.nse
-share/nmap/scripts/dns-service-discovery.nse
-share/nmap/scripts/dns-srv-enum.nse
-share/nmap/scripts/dns-update.nse
-share/nmap/scripts/dns-zeustracker.nse
-share/nmap/scripts/dns-zone-transfer.nse
-share/nmap/scripts/docker-version.nse
-share/nmap/scripts/domcon-brute.nse
-share/nmap/scripts/domcon-cmd.nse
-share/nmap/scripts/domino-enum-users.nse
-share/nmap/scripts/dpap-brute.nse
-share/nmap/scripts/drda-brute.nse
-share/nmap/scripts/drda-info.nse
-share/nmap/scripts/duplicates.nse
-share/nmap/scripts/eap-info.nse
-share/nmap/scripts/enip-info.nse
-share/nmap/scripts/epmd-info.nse
-share/nmap/scripts/eppc-enum-processes.nse
-share/nmap/scripts/fcrdns.nse
-share/nmap/scripts/finger.nse
-share/nmap/scripts/fingerprint-strings.nse
-share/nmap/scripts/firewalk.nse
-share/nmap/scripts/firewall-bypass.nse
-share/nmap/scripts/flume-master-info.nse
-share/nmap/scripts/fox-info.nse
-share/nmap/scripts/freelancer-info.nse
-share/nmap/scripts/ftp-anon.nse
-share/nmap/scripts/ftp-bounce.nse
-share/nmap/scripts/ftp-brute.nse
-share/nmap/scripts/ftp-libopie.nse
-share/nmap/scripts/ftp-proftpd-backdoor.nse
-share/nmap/scripts/ftp-syst.nse
-share/nmap/scripts/ftp-vsftpd-backdoor.nse
-share/nmap/scripts/ftp-vuln-cve2010-4221.nse
-share/nmap/scripts/ganglia-info.nse
-share/nmap/scripts/giop-info.nse
-share/nmap/scripts/gkrellm-info.nse
-share/nmap/scripts/gopher-ls.nse
-share/nmap/scripts/gpsd-info.nse
-share/nmap/scripts/hadoop-datanode-info.nse
-share/nmap/scripts/hadoop-jobtracker-info.nse
-share/nmap/scripts/hadoop-namenode-info.nse
-share/nmap/scripts/hadoop-secondary-namenode-info.nse
-share/nmap/scripts/hadoop-tasktracker-info.nse
-share/nmap/scripts/hbase-master-info.nse
-share/nmap/scripts/hbase-region-info.nse
-share/nmap/scripts/hddtemp-info.nse
-share/nmap/scripts/hnap-info.nse
-share/nmap/scripts/hostmap-bfk.nse
-share/nmap/scripts/hostmap-crtsh.nse
-share/nmap/scripts/hostmap-robtex.nse
-share/nmap/scripts/http-adobe-coldfusion-apsa1301.nse
-share/nmap/scripts/http-affiliate-id.nse
-share/nmap/scripts/http-apache-negotiation.nse
-share/nmap/scripts/http-apache-server-status.nse
-share/nmap/scripts/http-aspnet-debug.nse
-share/nmap/scripts/http-auth-finder.nse
-share/nmap/scripts/http-auth.nse
-share/nmap/scripts/http-avaya-ipoffice-users.nse
-share/nmap/scripts/http-awstatstotals-exec.nse
-share/nmap/scripts/http-axis2-dir-traversal.nse
-share/nmap/scripts/http-backup-finder.nse
-share/nmap/scripts/http-barracuda-dir-traversal.nse
-share/nmap/scripts/http-bigip-cookie.nse
-share/nmap/scripts/http-brute.nse
-share/nmap/scripts/http-cakephp-version.nse
-share/nmap/scripts/http-chrono.nse
-share/nmap/scripts/http-cisco-anyconnect.nse
-share/nmap/scripts/http-coldfusion-subzero.nse
-share/nmap/scripts/http-comments-displayer.nse
-share/nmap/scripts/http-config-backup.nse
-share/nmap/scripts/http-cookie-flags.nse
-share/nmap/scripts/http-cors.nse
-share/nmap/scripts/http-cross-domain-policy.nse
-share/nmap/scripts/http-csrf.nse
-share/nmap/scripts/http-date.nse
-share/nmap/scripts/http-default-accounts.nse
-share/nmap/scripts/http-devframework.nse
-share/nmap/scripts/http-dlink-backdoor.nse
-share/nmap/scripts/http-dombased-xss.nse
-share/nmap/scripts/http-domino-enum-passwords.nse
-share/nmap/scripts/http-drupal-enum-users.nse
-share/nmap/scripts/http-drupal-enum.nse
-share/nmap/scripts/http-enum.nse
-share/nmap/scripts/http-errors.nse
-share/nmap/scripts/http-exif-spider.nse
-share/nmap/scripts/http-favicon.nse
-share/nmap/scripts/http-feed.nse
-share/nmap/scripts/http-fetch.nse
-share/nmap/scripts/http-fileupload-exploiter.nse
-share/nmap/scripts/http-form-brute.nse
-share/nmap/scripts/http-form-fuzzer.nse
-share/nmap/scripts/http-frontpage-login.nse
-share/nmap/scripts/http-generator.nse
-share/nmap/scripts/http-git.nse
-share/nmap/scripts/http-gitweb-projects-enum.nse
-share/nmap/scripts/http-google-malware.nse
-share/nmap/scripts/http-grep.nse
-share/nmap/scripts/http-headers.nse
-share/nmap/scripts/http-hp-ilo-info.nse
-share/nmap/scripts/http-huawei-hg5xx-vuln.nse
-share/nmap/scripts/http-icloud-findmyiphone.nse
-share/nmap/scripts/http-icloud-sendmsg.nse
-share/nmap/scripts/http-iis-short-name-brute.nse
-share/nmap/scripts/http-iis-webdav-vuln.nse
-share/nmap/scripts/http-internal-ip-disclosure.nse
-share/nmap/scripts/http-joomla-brute.nse
-share/nmap/scripts/http-jsonp-detection.nse
-share/nmap/scripts/http-litespeed-sourcecode-download.nse
-share/nmap/scripts/http-ls.nse
-share/nmap/scripts/http-majordomo2-dir-traversal.nse
-share/nmap/scripts/http-malware-host.nse
-share/nmap/scripts/http-mcmp.nse
-share/nmap/scripts/http-method-tamper.nse
-share/nmap/scripts/http-methods.nse
-share/nmap/scripts/http-mobileversion-checker.nse
-share/nmap/scripts/http-ntlm-info.nse
-share/nmap/scripts/http-open-proxy.nse
-share/nmap/scripts/http-open-redirect.nse
-share/nmap/scripts/http-passwd.nse
-share/nmap/scripts/http-php-version.nse
-share/nmap/scripts/http-phpmyadmin-dir-traversal.nse
-share/nmap/scripts/http-phpself-xss.nse
-share/nmap/scripts/http-proxy-brute.nse
-share/nmap/scripts/http-put.nse
-share/nmap/scripts/http-qnap-nas-info.nse
-share/nmap/scripts/http-referer-checker.nse
-share/nmap/scripts/http-rfi-spider.nse
-share/nmap/scripts/http-robots.txt.nse
-share/nmap/scripts/http-robtex-reverse-ip.nse
-share/nmap/scripts/http-robtex-shared-ns.nse
-share/nmap/scripts/http-sap-netweaver-leak.nse
-share/nmap/scripts/http-security-headers.nse
-share/nmap/scripts/http-server-header.nse
-share/nmap/scripts/http-shellshock.nse
-share/nmap/scripts/http-sitemap-generator.nse
-share/nmap/scripts/http-slowloris-check.nse
-share/nmap/scripts/http-slowloris.nse
-share/nmap/scripts/http-sql-injection.nse
-share/nmap/scripts/http-stored-xss.nse
-share/nmap/scripts/http-svn-enum.nse
-share/nmap/scripts/http-svn-info.nse
-share/nmap/scripts/http-title.nse
-share/nmap/scripts/http-tplink-dir-traversal.nse
-share/nmap/scripts/http-trace.nse
-share/nmap/scripts/http-traceroute.nse
-share/nmap/scripts/http-trane-info.nse
-share/nmap/scripts/http-unsafe-output-escaping.nse
-share/nmap/scripts/http-useragent-tester.nse
-share/nmap/scripts/http-userdir-enum.nse
-share/nmap/scripts/http-vhosts.nse
-share/nmap/scripts/http-virustotal.nse
-share/nmap/scripts/http-vlcstreamer-ls.nse
-share/nmap/scripts/http-vmware-path-vuln.nse
-share/nmap/scripts/http-vuln-cve2006-3392.nse
-share/nmap/scripts/http-vuln-cve2009-3960.nse
-share/nmap/scripts/http-vuln-cve2010-0738.nse
-share/nmap/scripts/http-vuln-cve2010-2861.nse
-share/nmap/scripts/http-vuln-cve2011-3192.nse
-share/nmap/scripts/http-vuln-cve2011-3368.nse
-share/nmap/scripts/http-vuln-cve2012-1823.nse
-share/nmap/scripts/http-vuln-cve2013-0156.nse
-share/nmap/scripts/http-vuln-cve2013-6786.nse
-share/nmap/scripts/http-vuln-cve2013-7091.nse
-share/nmap/scripts/http-vuln-cve2014-2126.nse
-share/nmap/scripts/http-vuln-cve2014-2127.nse
-share/nmap/scripts/http-vuln-cve2014-2128.nse
-share/nmap/scripts/http-vuln-cve2014-2129.nse
-share/nmap/scripts/http-vuln-cve2014-3704.nse
-share/nmap/scripts/http-vuln-cve2014-8877.nse
-share/nmap/scripts/http-vuln-cve2015-1427.nse
-share/nmap/scripts/http-vuln-cve2015-1635.nse
-share/nmap/scripts/http-vuln-cve2017-1001000.nse
-share/nmap/scripts/http-vuln-cve2017-5638.nse
-share/nmap/scripts/http-vuln-cve2017-5689.nse
-share/nmap/scripts/http-vuln-cve2017-8917.nse
-share/nmap/scripts/http-vuln-misfortune-cookie.nse
-share/nmap/scripts/http-vuln-wnr1000-creds.nse
-share/nmap/scripts/http-waf-detect.nse
-share/nmap/scripts/http-waf-fingerprint.nse
-share/nmap/scripts/http-webdav-scan.nse
-share/nmap/scripts/http-wordpress-brute.nse
-share/nmap/scripts/http-wordpress-enum.nse
-share/nmap/scripts/http-wordpress-users.nse
-share/nmap/scripts/http-xssed.nse
-share/nmap/scripts/https-redirect.nse
-share/nmap/scripts/iax2-brute.nse
-share/nmap/scripts/iax2-version.nse
-share/nmap/scripts/icap-info.nse
-share/nmap/scripts/iec-identify.nse
-share/nmap/scripts/ike-version.nse
-share/nmap/scripts/imap-brute.nse
-share/nmap/scripts/imap-capabilities.nse
-share/nmap/scripts/imap-ntlm-info.nse
-share/nmap/scripts/impress-remote-discover.nse
-share/nmap/scripts/informix-brute.nse
-share/nmap/scripts/informix-query.nse
-share/nmap/scripts/informix-tables.nse
-share/nmap/scripts/ip-forwarding.nse
-share/nmap/scripts/ip-geolocation-geoplugin.nse
-share/nmap/scripts/ip-geolocation-ipinfodb.nse
-share/nmap/scripts/ip-geolocation-map-bing.nse
-share/nmap/scripts/ip-geolocation-map-google.nse
-share/nmap/scripts/ip-geolocation-map-kml.nse
-share/nmap/scripts/ip-geolocation-maxmind.nse
-share/nmap/scripts/ip-https-discover.nse
-share/nmap/scripts/ipidseq.nse
-share/nmap/scripts/ipmi-brute.nse
-share/nmap/scripts/ipmi-cipher-zero.nse
-share/nmap/scripts/ipmi-version.nse
-share/nmap/scripts/ipv6-multicast-mld-list.nse
-share/nmap/scripts/ipv6-node-info.nse
-share/nmap/scripts/ipv6-ra-flood.nse
-share/nmap/scripts/irc-botnet-channels.nse
-share/nmap/scripts/irc-brute.nse
-share/nmap/scripts/irc-info.nse
-share/nmap/scripts/irc-sasl-brute.nse
-share/nmap/scripts/irc-unrealircd-backdoor.nse
-share/nmap/scripts/iscsi-brute.nse
-share/nmap/scripts/iscsi-info.nse
-share/nmap/scripts/isns-info.nse
-share/nmap/scripts/jdwp-exec.nse
-share/nmap/scripts/jdwp-info.nse
-share/nmap/scripts/jdwp-inject.nse
-share/nmap/scripts/jdwp-version.nse
-share/nmap/scripts/knx-gateway-discover.nse
-share/nmap/scripts/knx-gateway-info.nse
-share/nmap/scripts/krb5-enum-users.nse
-share/nmap/scripts/ldap-brute.nse
-share/nmap/scripts/ldap-novell-getpass.nse
-share/nmap/scripts/ldap-rootdse.nse
-share/nmap/scripts/ldap-search.nse
-share/nmap/scripts/lexmark-config.nse
-share/nmap/scripts/llmnr-resolve.nse
-share/nmap/scripts/lltd-discovery.nse
-share/nmap/scripts/lu-enum.nse
-share/nmap/scripts/maxdb-info.nse
-share/nmap/scripts/mcafee-epo-agent.nse
-share/nmap/scripts/membase-brute.nse
-share/nmap/scripts/membase-http-info.nse
-share/nmap/scripts/memcached-info.nse
-share/nmap/scripts/metasploit-info.nse
-share/nmap/scripts/metasploit-msgrpc-brute.nse
-share/nmap/scripts/metasploit-xmlrpc-brute.nse
-share/nmap/scripts/mikrotik-routeros-brute.nse
-share/nmap/scripts/mmouse-brute.nse
-share/nmap/scripts/mmouse-exec.nse
-share/nmap/scripts/modbus-discover.nse
-share/nmap/scripts/mongodb-brute.nse
-share/nmap/scripts/mongodb-databases.nse
-share/nmap/scripts/mongodb-info.nse
-share/nmap/scripts/mqtt-subscribe.nse
-share/nmap/scripts/mrinfo.nse
-share/nmap/scripts/ms-sql-brute.nse
-share/nmap/scripts/ms-sql-config.nse
-share/nmap/scripts/ms-sql-dac.nse
-share/nmap/scripts/ms-sql-dump-hashes.nse
-share/nmap/scripts/ms-sql-empty-password.nse
-share/nmap/scripts/ms-sql-hasdbaccess.nse
-share/nmap/scripts/ms-sql-info.nse
-share/nmap/scripts/ms-sql-ntlm-info.nse
-share/nmap/scripts/ms-sql-query.nse
-share/nmap/scripts/ms-sql-tables.nse
-share/nmap/scripts/ms-sql-xp-cmdshell.nse
-share/nmap/scripts/msrpc-enum.nse
-share/nmap/scripts/mtrace.nse
-share/nmap/scripts/murmur-version.nse
-share/nmap/scripts/mysql-audit.nse
-share/nmap/scripts/mysql-brute.nse
-share/nmap/scripts/mysql-databases.nse
-share/nmap/scripts/mysql-dump-hashes.nse
-share/nmap/scripts/mysql-empty-password.nse
-share/nmap/scripts/mysql-enum.nse
-share/nmap/scripts/mysql-info.nse
-share/nmap/scripts/mysql-query.nse
-share/nmap/scripts/mysql-users.nse
-share/nmap/scripts/mysql-variables.nse
-share/nmap/scripts/mysql-vuln-cve2012-2122.nse
-share/nmap/scripts/nat-pmp-info.nse
-share/nmap/scripts/nat-pmp-mapport.nse
-share/nmap/scripts/nbd-info.nse
-share/nmap/scripts/nbns-interfaces.nse
-share/nmap/scripts/nbstat.nse
-share/nmap/scripts/ncp-enum-users.nse
-share/nmap/scripts/ncp-serverinfo.nse
-share/nmap/scripts/ndmp-fs-info.nse
-share/nmap/scripts/ndmp-version.nse
-share/nmap/scripts/nessus-brute.nse
-share/nmap/scripts/nessus-xmlrpc-brute.nse
-share/nmap/scripts/netbus-auth-bypass.nse
-share/nmap/scripts/netbus-brute.nse
-share/nmap/scripts/netbus-info.nse
-share/nmap/scripts/netbus-version.nse
-share/nmap/scripts/nexpose-brute.nse
-share/nmap/scripts/nfs-ls.nse
-share/nmap/scripts/nfs-showmount.nse
-share/nmap/scripts/nfs-statfs.nse
-share/nmap/scripts/nje-node-brute.nse
-share/nmap/scripts/nje-pass-brute.nse
-share/nmap/scripts/nntp-ntlm-info.nse
-share/nmap/scripts/nping-brute.nse
-share/nmap/scripts/nrpe-enum.nse
-share/nmap/scripts/ntp-info.nse
-share/nmap/scripts/ntp-monlist.nse
-share/nmap/scripts/omp2-brute.nse
-share/nmap/scripts/omp2-enum-targets.nse
-share/nmap/scripts/omron-info.nse
-share/nmap/scripts/openflow-info.nse
-share/nmap/scripts/openlookup-info.nse
-share/nmap/scripts/openvas-otp-brute.nse
-share/nmap/scripts/openwebnet-discovery.nse
-share/nmap/scripts/oracle-brute-stealth.nse
-share/nmap/scripts/oracle-brute.nse
-share/nmap/scripts/oracle-enum-users.nse
-share/nmap/scripts/oracle-sid-brute.nse
-share/nmap/scripts/oracle-tns-version.nse
-share/nmap/scripts/ovs-agent-version.nse
-share/nmap/scripts/p2p-conficker.nse
-share/nmap/scripts/path-mtu.nse
-share/nmap/scripts/pcanywhere-brute.nse
-share/nmap/scripts/pcworx-info.nse
-share/nmap/scripts/pgsql-brute.nse
-share/nmap/scripts/pjl-ready-message.nse
-share/nmap/scripts/pop3-brute.nse
-share/nmap/scripts/pop3-capabilities.nse
-share/nmap/scripts/pop3-ntlm-info.nse
-share/nmap/scripts/port-states.nse
-share/nmap/scripts/pptp-version.nse
-share/nmap/scripts/puppet-naivesigning.nse
-share/nmap/scripts/qconn-exec.nse
-share/nmap/scripts/qscan.nse
-share/nmap/scripts/quake1-info.nse
-share/nmap/scripts/quake3-info.nse
-share/nmap/scripts/quake3-master-getservers.nse
-share/nmap/scripts/rdp-enum-encryption.nse
-share/nmap/scripts/rdp-ntlm-info.nse
-share/nmap/scripts/rdp-vuln-ms12-020.nse
-share/nmap/scripts/realvnc-auth-bypass.nse
-share/nmap/scripts/redis-brute.nse
-share/nmap/scripts/redis-info.nse
-share/nmap/scripts/resolveall.nse
-share/nmap/scripts/reverse-index.nse
-share/nmap/scripts/rexec-brute.nse
-share/nmap/scripts/rfc868-time.nse
-share/nmap/scripts/riak-http-info.nse
-share/nmap/scripts/rlogin-brute.nse
-share/nmap/scripts/rmi-dumpregistry.nse
-share/nmap/scripts/rmi-vuln-classloader.nse
-share/nmap/scripts/rpc-grind.nse
-share/nmap/scripts/rpcap-brute.nse
-share/nmap/scripts/rpcap-info.nse
-share/nmap/scripts/rpcinfo.nse
-share/nmap/scripts/rsa-vuln-roca.nse
-share/nmap/scripts/rsync-brute.nse
-share/nmap/scripts/rsync-list-modules.nse
-share/nmap/scripts/rtsp-methods.nse
-share/nmap/scripts/rtsp-url-brute.nse
-share/nmap/scripts/rusers.nse
-share/nmap/scripts/s7-info.nse
-share/nmap/scripts/samba-vuln-cve-2012-1182.nse
-share/nmap/scripts/script.db
-share/nmap/scripts/servicetags.nse
-share/nmap/scripts/shodan-api.nse
-share/nmap/scripts/sip-brute.nse
-share/nmap/scripts/sip-call-spoof.nse
-share/nmap/scripts/sip-enum-users.nse
-share/nmap/scripts/sip-methods.nse
-share/nmap/scripts/skypev2-version.nse
-share/nmap/scripts/smb-brute.nse
-share/nmap/scripts/smb-double-pulsar-backdoor.nse
-share/nmap/scripts/smb-enum-domains.nse
-share/nmap/scripts/smb-enum-groups.nse
-share/nmap/scripts/smb-enum-processes.nse
-share/nmap/scripts/smb-enum-services.nse
-share/nmap/scripts/smb-enum-sessions.nse
-share/nmap/scripts/smb-enum-shares.nse
-share/nmap/scripts/smb-enum-users.nse
-share/nmap/scripts/smb-flood.nse
-share/nmap/scripts/smb-ls.nse
-share/nmap/scripts/smb-mbenum.nse
-share/nmap/scripts/smb-os-discovery.nse
-share/nmap/scripts/smb-print-text.nse
-share/nmap/scripts/smb-protocols.nse
-share/nmap/scripts/smb-psexec.nse
-share/nmap/scripts/smb-security-mode.nse
-share/nmap/scripts/smb-server-stats.nse
-share/nmap/scripts/smb-system-info.nse
-share/nmap/scripts/smb-vuln-conficker.nse
-share/nmap/scripts/smb-vuln-cve-2017-7494.nse
-share/nmap/scripts/smb-vuln-cve2009-3103.nse
-share/nmap/scripts/smb-vuln-ms06-025.nse
-share/nmap/scripts/smb-vuln-ms07-029.nse
-share/nmap/scripts/smb-vuln-ms08-067.nse
-share/nmap/scripts/smb-vuln-ms10-054.nse
-share/nmap/scripts/smb-vuln-ms10-061.nse
-share/nmap/scripts/smb-vuln-ms17-010.nse
-share/nmap/scripts/smb-vuln-regsvc-dos.nse
-share/nmap/scripts/smb-vuln-webexec.nse
-share/nmap/scripts/smb-webexec-exploit.nse
-share/nmap/scripts/smb2-capabilities.nse
-share/nmap/scripts/smb2-security-mode.nse
-share/nmap/scripts/smb2-time.nse
-share/nmap/scripts/smb2-vuln-uptime.nse
-share/nmap/scripts/smtp-brute.nse
-share/nmap/scripts/smtp-commands.nse
-share/nmap/scripts/smtp-enum-users.nse
-share/nmap/scripts/smtp-ntlm-info.nse
-share/nmap/scripts/smtp-open-relay.nse
-share/nmap/scripts/smtp-strangeport.nse
-share/nmap/scripts/smtp-vuln-cve2010-4344.nse
-share/nmap/scripts/smtp-vuln-cve2011-1720.nse
-share/nmap/scripts/smtp-vuln-cve2011-1764.nse
-share/nmap/scripts/sniffer-detect.nse
-share/nmap/scripts/snmp-brute.nse
-share/nmap/scripts/snmp-hh3c-logins.nse
-share/nmap/scripts/snmp-info.nse
-share/nmap/scripts/snmp-interfaces.nse
-share/nmap/scripts/snmp-ios-config.nse
-share/nmap/scripts/snmp-netstat.nse
-share/nmap/scripts/snmp-processes.nse
-share/nmap/scripts/snmp-sysdescr.nse
-share/nmap/scripts/snmp-win32-services.nse
-share/nmap/scripts/snmp-win32-shares.nse
-share/nmap/scripts/snmp-win32-software.nse
-share/nmap/scripts/snmp-win32-users.nse
-share/nmap/scripts/socks-auth-info.nse
-share/nmap/scripts/socks-brute.nse
-share/nmap/scripts/socks-open-proxy.nse
-share/nmap/scripts/ssh-auth-methods.nse
-share/nmap/scripts/ssh-brute.nse
-share/nmap/scripts/ssh-hostkey.nse
-share/nmap/scripts/ssh-publickey-acceptance.nse
-share/nmap/scripts/ssh-run.nse
-share/nmap/scripts/ssh2-enum-algos.nse
-share/nmap/scripts/sshv1.nse
-share/nmap/scripts/ssl-ccs-injection.nse
-share/nmap/scripts/ssl-cert-intaddr.nse
-share/nmap/scripts/ssl-cert.nse
-share/nmap/scripts/ssl-date.nse
-share/nmap/scripts/ssl-dh-params.nse
-share/nmap/scripts/ssl-enum-ciphers.nse
-share/nmap/scripts/ssl-heartbleed.nse
-share/nmap/scripts/ssl-known-key.nse
-share/nmap/scripts/ssl-poodle.nse
-share/nmap/scripts/sslv2-drown.nse
-share/nmap/scripts/sslv2.nse
-share/nmap/scripts/sstp-discover.nse
-share/nmap/scripts/stun-info.nse
-share/nmap/scripts/stun-version.nse
-share/nmap/scripts/stuxnet-detect.nse
-share/nmap/scripts/supermicro-ipmi-conf.nse
-share/nmap/scripts/svn-brute.nse
-share/nmap/scripts/targets-asn.nse
-share/nmap/scripts/targets-ipv6-map4to6.nse
-share/nmap/scripts/targets-ipv6-multicast-echo.nse
-share/nmap/scripts/targets-ipv6-multicast-invalid-dst.nse
-share/nmap/scripts/targets-ipv6-multicast-mld.nse
-share/nmap/scripts/targets-ipv6-multicast-slaac.nse
-share/nmap/scripts/targets-ipv6-wordlist.nse
-share/nmap/scripts/targets-sniffer.nse
-share/nmap/scripts/targets-traceroute.nse
-share/nmap/scripts/targets-xml.nse
-share/nmap/scripts/teamspeak2-version.nse
-share/nmap/scripts/telnet-brute.nse
-share/nmap/scripts/telnet-encryption.nse
-share/nmap/scripts/telnet-ntlm-info.nse
-share/nmap/scripts/tftp-enum.nse
-share/nmap/scripts/tls-alpn.nse
-share/nmap/scripts/tls-nextprotoneg.nse
-share/nmap/scripts/tls-ticketbleed.nse
-share/nmap/scripts/tn3270-screen.nse
-share/nmap/scripts/tor-consensus-checker.nse
-share/nmap/scripts/traceroute-geolocation.nse
-share/nmap/scripts/tso-brute.nse
-share/nmap/scripts/tso-enum.nse
-share/nmap/scripts/ubiquiti-discovery.nse
-share/nmap/scripts/unittest.nse
-share/nmap/scripts/unusual-port.nse
-share/nmap/scripts/upnp-info.nse
-share/nmap/scripts/uptime-agent-info.nse
-share/nmap/scripts/url-snarf.nse
-share/nmap/scripts/ventrilo-info.nse
-share/nmap/scripts/versant-info.nse
-share/nmap/scripts/vmauthd-brute.nse
-share/nmap/scripts/vmware-version.nse
-share/nmap/scripts/vnc-brute.nse
-share/nmap/scripts/vnc-info.nse
-share/nmap/scripts/vnc-title.nse
-share/nmap/scripts/voldemort-info.nse
-share/nmap/scripts/vtam-enum.nse
-share/nmap/scripts/vulners.nse
-share/nmap/scripts/vuze-dht-info.nse
-share/nmap/scripts/wdb-version.nse
-share/nmap/scripts/weblogic-t3-info.nse
-share/nmap/scripts/whois-domain.nse
-share/nmap/scripts/whois-ip.nse
-share/nmap/scripts/wsdd-discover.nse
-share/nmap/scripts/x11-access.nse
-share/nmap/scripts/xdmcp-discover.nse
-share/nmap/scripts/xmlrpc-methods.nse
-share/nmap/scripts/xmpp-brute.nse
-share/nmap/scripts/xmpp-info.nse
ports libpcap?