git: 33a1d3492cfb - main - net-mgmt/nfdump: update 1.6.20 -> 1.7.3

From: Kurt Jaeger <pi_at_FreeBSD.org>
Date: Sat, 28 Oct 2023 19:39:10 UTC
The branch main has been updated by pi:

URL: https://cgit.FreeBSD.org/ports/commit/?id=33a1d3492cfb451e39017911d919bcc8215a76ff

commit 33a1d3492cfb451e39017911d919bcc8215a76ff
Author:     geoffroy desvernay <dgeo@centrale-med.fr>
AuthorDate: 2023-10-28 19:36:18 +0000
Commit:     Kurt Jaeger <pi@FreeBSD.org>
CommitDate: 2023-10-28 19:36:18 +0000

    net-mgmt/nfdump: update 1.6.20 -> 1.7.3
    
    - Check UPDATING for compat with older 1.6.x
    
    PR:             271429
    Reviewed by:    chadf@triularity.org
    Changes:        https://github.com/phaag/nfdump/releases
---
 UPDATING                                 | 18 +++++++++
 net-mgmt/nfdump/Makefile                 | 53 ++++++++----------------
 net-mgmt/nfdump/distinfo                 |  6 +--
 net-mgmt/nfdump/files/patch-bin_ipfrag.c | 10 -----
 net-mgmt/nfdump/files/patch-configure.ac | 69 ++++++++++++++++++++++++++++++++
 5 files changed, 107 insertions(+), 49 deletions(-)

diff --git a/UPDATING b/UPDATING
index c625d3b5619c..13908a1c7a7f 100644
--- a/UPDATING
+++ b/UPDATING
@@ -5,6 +5,24 @@ they are unavoidable.
 You should get into the habit of checking this file for changes each time
 you update your ports collection, before attempting any port upgrades.
 
+20231028:
+  AFFECTS: users of net-mgmt/nfdump
+
+  nfdump-1.7.x is compatible to nfdump-1.6.18, which means it can
+  read files created with nfdump-1.6.18 or newer. Flow files created
+  with earlier nfdump versions may not contain all flow elements.
+  If you have older files, it is recommended to use nfdump-1.6.17
+  to update the records.
+
+  nfdump 1.7.x provides the same set of programs as 1.6.x and can
+  be used almost as a drop-in replacement. This may change in future
+  and older legacy programs may be removed. You can convert any old
+  files from nfdump-1.6 to nfdump-1.7 format by reading/writing
+  files: ./nfdump -r old-flowfile -y -w new-flowfile
+
+  Please note, that only nfdump may read older flow files. All other
+  programs relay on the new file format.
+
 20231027:
   AFFECTS: users of net-mgmt/librenms
   AUTHOR: dvl@FreeBSD.org
diff --git a/net-mgmt/nfdump/Makefile b/net-mgmt/nfdump/Makefile
index 5b6c4e02378b..f373dea030f9 100644
--- a/net-mgmt/nfdump/Makefile
+++ b/net-mgmt/nfdump/Makefile
@@ -1,7 +1,6 @@
 PORTNAME=	nfdump
-PORTVERSION=	1.6.20
+PORTVERSION=	1.7.3
 DISTVERSIONPREFIX=v
-PORTREVISION=	1
 CATEGORIES=	net-mgmt
 
 MAINTAINER=	pi@FreeBSD.org
@@ -20,18 +19,19 @@ USE_LDCONFIG=	yes
 
 GNU_CONFIGURE=	yes
 
-MAKE_JOBS_UNSAFE=	yes
-
+INSTALL_TARGET=	install-strip
 PLIST_FILES=	bin/nfanon bin/nfcapd bin/nfdump bin/nfexpire bin/nfreplay \
-		lib/libnfdump-${PORTVERSION}.so \
+		lib/libnfdump-${PORTVERSION}.so lib/libnfdump.so \
+		lib/libnfdump.a \
 		man/man1/nfanon.1.gz man/man1/nfcapd.1.gz man/man1/nfdump.1.gz \
-		man/man1/nfexpire.1.gz man/man1/nfreplay.1.gz
+		man/man1/nfexpire.1.gz man/man1/nfreplay.1.gz \
+		etc/nfdump.conf.sample
 PORTDOCS=	AUTHORS ChangeLog INSTALL NEWS README
 
 #flow-tools support
 OPTIONS_DEFINE=		DOCS FT2NFDUMP NFPROFILE FIXTIMEBUG READPCAP NFTRACK \
-			SFLOW NFPCAPD NSEL INFLUXDB
-OPTIONS_DEFAULT=	NFPROFILE
+			SFLOW NFPCAPD NSEL INFLUXDB GEODB
+OPTIONS_DEFAULT=	NFPROFILE NFPCAPD READPCAP NFTRACK NSEL SFLOW
 
 FIXTIMEBUG_DESC=	With fixing swap time bug of some v5
 FT2NFDUMP_DESC=		With Flow-tools to nfdump converter
@@ -42,6 +42,7 @@ NFTRACK_DESC=		With PortTracker support
 NSEL_DESC=		Read and process ASA/NSEL/NEL event data
 READPCAP_DESC=		With pcap support
 SFLOW_DESC=		Build sflow collector daemon also
+GEODB_DESC=		Build geolookup for MaxMind GeoDB
 
 FIXTIMEBUG_CONFIGURE_ENABLE=	fixtimebug
 FT2NFDUMP_BUILD_DEPENDS=		flow-cat:net-mgmt/flow-tools
@@ -57,10 +58,11 @@ NFPROFILE_PLIST_FILES=	bin/nfprofile man/man1/nfprofile.1.gz
 NFTRACK_CONFIGURE_ENABLE=	nftrack
 NFTRACK_PLIST_FILES=	bin/nftrack
 NSEL_CONFIGURE_ENABLE=	nsel
-READPCAP_LIB_DEPENDS=		libpcap.so:net/libpcap
 READPCAP_CONFIGURE_ENABLE=	readpcap
 SFLOW_CONFIGURE_ENABLE=	sflow
 SFLOW_PLIST_FILES=	bin/sfcapd man/man1/sfcapd.1.gz
+GEODB_PLIST_FILES=	bin/geolookup bin/updateGeoDB.sh man/man1/geolookup.1.gz
+GEODB_CONFIGURE_ENABLE=	maxmind
 
 .include <bsd.port.pre.mk>
 
@@ -75,36 +77,15 @@ RUN_DEPENDS+=	rrdtool:databases/rrdtool
 .endif
 
 post-patch:
-	${REINPLACE_CMD} 's|-ggdb||' ${WRKSRC}/bin/Makefile.am
-
-do-install:
-.for binary in nfanon nfcapd nfdump nfexpire nfreplay
-	${INSTALL_PROGRAM} ${WRKSRC}/bin/.libs/${binary} ${STAGEDIR}${PREFIX}/bin
-	${INSTALL_MAN} ${WRKSRC}/man/${binary}.1 ${STAGEDIR}${PREFIX}/man/man1
-.endfor
-	${INSTALL_LIB} ${WRKSRC}/bin/.libs/libnfdump-${PORTVERSION}.so ${STAGEDIR}${PREFIX}/lib
-
-do-install-NFPROFILE-on:
-	${INSTALL_PROGRAM} ${WRKSRC}/bin/.libs/nfprofile ${STAGEDIR}${PREFIX}/bin
-	${INSTALL_MAN}	${WRKSRC}/man/nfprofile.1 ${STAGEDIR}${PREFIX}/man/man1
-
-do-install-NFTRACK-on:
-	${INSTALL_PROGRAM} ${WRKSRC}/bin/.libs/nftrack ${STAGEDIR}${PREFIX}/bin
-
-do-install-FT2NFDUMP-on:
-	${INSTALL_PROGRAM} ${WRKSRC}/bin/.libs/ft2nfdump ${STAGEDIR}${PREFIX}/bin
-	${INSTALL_MAN}	${WRKSRC}/man/ft2nfdump.1 ${STAGEDIR}${PREFIX}/man/man1
-
-do-install-SFLOW-on:
-	${INSTALL_PROGRAM} ${WRKSRC}/bin/.libs/sfcapd ${STAGEDIR}${PREFIX}/bin
-	${INSTALL_MAN}	${WRKSRC}/man/sfcapd.1	${STAGEDIR}${PREFIX}/man/man1
-
-do-install-NFPCAPD-on:
-	${INSTALL_PROGRAM} ${WRKSRC}/bin/.libs/nfpcapd ${STAGEDIR}${PREFIX}/bin
-	${INSTALL_MAN}	${WRKSRC}/man/nfpcapd.1	${STAGEDIR}${PREFIX}/man/man1
+	${REINPLACE_CMD} 's|-ggdb||' ${WRKSRC}/src/lib/Makefile.am
+	${REINPLACE_CMD} 's|-ggdb||' ${WRKSRC}/src/nfcapd/Makefile.am
+	${REINPLACE_CMD} 's|-ggdb||' ${WRKSRC}/src/test/Makefile.am
 
 post-install-DOCS-on:
 	${MKDIR} ${STAGEDIR}${DOCSDIR}
 	cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
 
+post-install:
+	${MV} ${STAGEDIR}${PREFIX}/etc/nfdump.conf.dist ${STAGEDIR}${PREFIX}/etc/nfdump.conf.sample
+
 .include <bsd.port.post.mk>
diff --git a/net-mgmt/nfdump/distinfo b/net-mgmt/nfdump/distinfo
index 9c050ee7fab0..3963d10e8949 100644
--- a/net-mgmt/nfdump/distinfo
+++ b/net-mgmt/nfdump/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1590491538
-SHA256 (phaag-nfdump-v1.6.20_GH0.tar.gz) = 672f4fbe2b7424cfdba5917441100a440cbc9083f2a79147562fb5a966838543
-SIZE (phaag-nfdump-v1.6.20_GH0.tar.gz) = 561053
+TIMESTAMP = 1698484412
+SHA256 (phaag-nfdump-v1.7.3_GH0.tar.gz) = 9ea7e1ded34a81839b73e66cb62c9bc11a8070210584f9a508798d7bd6058c89
+SIZE (phaag-nfdump-v1.7.3_GH0.tar.gz) = 725364
diff --git a/net-mgmt/nfdump/files/patch-bin_ipfrag.c b/net-mgmt/nfdump/files/patch-bin_ipfrag.c
deleted file mode 100644
index cb839322f94b..000000000000
--- a/net-mgmt/nfdump/files/patch-bin_ipfrag.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- bin/ipfrag.c.orig	2019-09-20 22:19:55.060019000 +0200
-+++ bin/ipfrag.c	2019-09-20 22:20:13.307477000 +0200
-@@ -37,6 +37,7 @@
- #include <string.h>
- #include <errno.h>
- #include <sys/types.h>
-+#include <sys/socket.h>
- #ifdef HAVE_NETINET_IN_SYSTM_H
- #include <netinet/in_systm.h>
- #endif
diff --git a/net-mgmt/nfdump/files/patch-configure.ac b/net-mgmt/nfdump/files/patch-configure.ac
new file mode 100644
index 000000000000..2f8171cdcca0
--- /dev/null
+++ b/net-mgmt/nfdump/files/patch-configure.ac
@@ -0,0 +1,69 @@
+--- configure.ac.orig	2023-09-02 11:27:28 UTC
++++ configure.ac
+@@ -124,7 +124,9 @@ fi
+ 
+ #Tidz up? esp not using in source dist flow-tools
+ AC_ARG_ENABLE(ftconv,
+-[  --enable-ftconv         Build the flow-tools to nfdump converter; default is NO],
++[  --enable-ftconv         Build the flow-tools to nfdump converter; default is NO])
++
++AS_IF([test "x$enable_ftconv" = "xyes"],
+ AC_CHECK_LIB(z, zlibVersion,,
+ AC_MSG_ERROR(Link with "-lz" failed! (Need zlib >= 1.0.2))
+ )
+@@ -147,7 +149,9 @@ AM_CONDITIONAL(FT2NFDUMP, false)
+ )
+ 
+ AC_ARG_ENABLE(maxmind,
+-[  --enable-maxmind        Build geolookup for MaxMind GeoDB; default is NO],
++[  --enable-maxmind        Build geolookup for MaxMind GeoDB; default is NO])
++
++AS_IF([test "x$enable_maxmind" = "xyes"],
+ AM_CONDITIONAL(MAXMIND, true)
+ ,
+ AM_CONDITIONAL(MAXMIND, false)
+@@ -156,8 +160,10 @@ AM_CONDITIONAL(MAXMIND, false)
+ 
+ #Needs tidy
+ AC_ARG_ENABLE(nfprofile,
+-[  --enable-nfprofile      Build nfprofile used by NfSen; default is NO],
+-[ 
++[  --enable-nfprofile      Build nfprofile used by NfSen; default is NO])
++
++AS_IF([test "x$enable_nfprofile" = "xyes"],
++[
+ 	AC_CHECK_LIB(rrd, rrd_update,[
+ cat >>config.h <<_ACEOF
+ #define HAVE_LIBRRD 1
+@@ -211,8 +217,10 @@ AM_CONDITIONAL(INFLXDB, false)
+ )
+ 
+ AC_ARG_ENABLE(nftrack,
+-[  --enable-nftrack      Build nftrack used by PortTracker; default is NO],
+-[ 
++[  --enable-nftrack      Build nftrack used by PortTracker; default is NO])
++
++AS_IF([test "x$enable_nftrack" = "xyes"],
++[
+ 	AC_CHECK_LIB(rrd, rrd_update,[
+ cat >>config.h <<_ACEOF
+ #define HAVE_LIBRRD 1
+@@ -252,7 +260,9 @@ AC_ARG_ENABLE(readpcap,
+ AM_CONDITIONAL(READPCAP, test "$enable_readpcap" = yes)
+ 
+ AC_ARG_ENABLE(nfpcapd,
+-[  --enable-nfpcapd       Build nfpcapd collector to create netflow data from interface or pcap data; default is NO],
++[  --enable-nfpcapd       Build nfpcapd collector to create netflow data from interface or pcap data; default is NO])
++
++AS_IF([test "x$enable_nfpcapd" = "xyes"],
+ [ 
+ 	AC_CHECK_LIB(pcap, pcap_create,[
+ cat >>config.h <<_ACEOF
+@@ -279,7 +289,6 @@ AC_SUBST(PCAP_LIBS)
+ 				struct pcap_pkthdr p; 
+ 			]])
+ 		],, AC_MSG_ERROR(Can not load pcap library. Not in loader search path! ))
+-
+ ]
+ ,
+ AM_CONDITIONAL(BUILDNFPCAPD, false)