commit:     8e7a4cf914eb4cf0be07c35a0b6028c6929e9e14
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 17 04:26:47 2020 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Wed Jun 17 04:42:01 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e7a4cf9

net-analyzer/pmacct: Version 1.7.4_p1

Package-Manager: Portage-2.3.101, Repoman-2.3.22
Closes: https://bugs.gentoo.org/show_bug.cgi?id=719112
Closes: https://bugs.gentoo.org/show_bug.cgi?id=723226
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>

 net-analyzer/pmacct/Manifest                       |   1 +
 .../pmacct/files/pmacct-1.7.4-nDPI-3.2.patch       |  47 ++++++++++
 net-analyzer/pmacct/files/pmacctd-init.d           |   2 +-
 net-analyzer/pmacct/pmacct-1.7.4_p1.ebuild         | 103 +++++++++++++++++++++
 4 files changed, 152 insertions(+), 1 deletion(-)

diff --git a/net-analyzer/pmacct/Manifest b/net-analyzer/pmacct/Manifest
index e2625e381fb..b62b1bbeb28 100644
--- a/net-analyzer/pmacct/Manifest
+++ b/net-analyzer/pmacct/Manifest
@@ -3,3 +3,4 @@ DIST pmacct-1.7.1.tar.gz 1392360 BLAKE2B 
75a4dda461c2fe643c24a901c19efacf325d192
 DIST pmacct-1.7.2.tar.gz 1416302 BLAKE2B 
5d6f9c5849c07c7bdd3b6251b2611935ff558ca393d2cc0d21e5e681b0069b3a5bb4a985a9dc59b62b8b4ed697ecbd4cbb71f0aba42ce8d1527187b98d2e90d3
 SHA512 
ffdc63e96fc6af6f5d531243bc0aec0925663d8e91e83ada275f8e9a969dcf85cebd06b17ae2c796722bb209602d5b2bc487757ec736a740a8f33698d93a8675
 DIST pmacct-1.7.3.tar.gz 1467237 BLAKE2B 
a2fb627df9f61f91c69a9333a968485695b45c8ebe812e11ba250185a5e93f262954290d7ee41789fb13f7f5c5ef336294be83c8d91adcd0fc3c348485e515af
 SHA512 
09d0e6721760035112cb0c7936fe177f7858b19fa1df2c7da84822dc816413e7c6bace35fe45ad32930961183d61f9e4f3a4879747be45f47ab658a3e0f055b2
 DIST pmacct-1.7.4.tar.gz 1581213 BLAKE2B 
3835abc91947af083932e01b828c2324f90595c973fdde9d9f4034dc7d03e12fad6bbe6e91e1462ec36963ccb41a5a740159f531d7e1929f4cd8d994b89a58a1
 SHA512 
780b6cc25562fb7b5a1f55b48ce9719b36c1ee0d9ee2b6db8d7f238cd5d9f204938313b13e3ff3f62c7b9b179279f18314eba38ad787ffc346a4b217da239ca1
+DIST pmacct-1.7.4_p1.tar.gz 3200089 BLAKE2B 
638983a92df0a46441ddddaefa78dc0f61fee94264870979f46674e851e3bf111ae71550f7e6b677d425fa4c688d4ed7735d82aae85a2e77155c1bfa050d8e76
 SHA512 
03553128975ced54ce08a1a543c794377c2b7a3c800de600a7b5e8aa483b1c3123dee536a361a47053233d60070cacaf269f1a16ad17b563fa9fc0ec7af6a467

diff --git a/net-analyzer/pmacct/files/pmacct-1.7.4-nDPI-3.2.patch 
b/net-analyzer/pmacct/files/pmacct-1.7.4-nDPI-3.2.patch
new file mode 100644
index 00000000000..bcbdbc834ca
--- /dev/null
+++ b/net-analyzer/pmacct/files/pmacct-1.7.4-nDPI-3.2.patch
@@ -0,0 +1,47 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -900,7 +900,7 @@
+   [ case "$enableval" in
+   yes)
+     AC_MSG_RESULT(yes)
+-    PKG_CHECK_MODULES([NDPI], [libndpi >= 2.4], [
++    PKG_CHECK_MODULES([NDPI], [libndpi >= 3.2], [
+       SUPPORTS="${SUPPORTS} ndpi"
+       USING_NDPI="yes"
+ 
+--- a/src/ndpi/ndpi_util.c
++++ b/src/ndpi/ndpi_util.c
+@@ -29,7 +29,8 @@
+     
+   NDPI_PROTOCOL_BITMASK all;
+     
+-  struct ndpi_detection_module_struct *module = ndpi_init_detection_module();
++  ndpi_init_prefs pm_ndpi_init_prefs = ndpi_no_prefs;
++  struct ndpi_detection_module_struct *module = 
ndpi_init_detection_module(pm_ndpi_init_prefs);
+   struct pm_ndpi_workflow *workflow = ndpi_calloc(1, sizeof(struct 
pm_ndpi_workflow));
+ 
+   log_notification_init(&log_notifications.ndpi_cache_full);
+@@ -77,6 +78,8 @@
+   NDPI_BITMASK_SET_ALL(all);
+   ndpi_set_protocol_detection_bitmask2(workflow->ndpi_struct, &all);
+ 
++  ndpi_finalize_initalization(workflow->ndpi_struct);
++
+   return workflow;
+ }
+ 
+--- a/src/ndpi/ndpi.c
++++ b/src/ndpi/ndpi.c
+@@ -373,11 +373,7 @@
+ 
+   if (flow->detection_completed || flow->tcp_finished) {
+     if (flow->detected_protocol.app_protocol == NDPI_PROTOCOL_UNKNOWN)
+-#ifdef WITH_NDPI26
+-      flow->detected_protocol = ndpi_detection_giveup(workflow->ndpi_struct, 
flow->ndpi_flow, workflow->prefs.protocol_guess);
+-#else
+-      flow->detected_protocol = ndpi_detection_giveup(workflow->ndpi_struct, 
flow->ndpi_flow);
+-#endif
++      flow->detected_protocol = ndpi_detection_giveup(workflow->ndpi_struct, 
flow->ndpi_flow, 1, workflow->prefs.protocol_guess);
+ 
+     if (workflow->prefs.protocol_guess) {
+       if (flow->detected_protocol.app_protocol == NDPI_PROTOCOL_UNKNOWN && 
!flow->guess_completed) {

diff --git a/net-analyzer/pmacct/files/pmacctd-init.d 
b/net-analyzer/pmacct/files/pmacctd-init.d
index 1dccfcdd80f..bfc59c07abb 100644
--- a/net-analyzer/pmacct/files/pmacctd-init.d
+++ b/net-analyzer/pmacct/files/pmacctd-init.d
@@ -27,7 +27,7 @@ start() {
        start-stop-daemon --start \
                --pidfile "${PMACCTDPID}" \
                --exec /usr/sbin/"${SVCNAME}" \
-               -- -D -f "${PMACCTDCONF}" \ -F "${PMACCTDPID}" ${OPTS}
+               -- -D -f "${PMACCTDCONF}" -F "${PMACCTDPID}" ${OPTS}
        eend $?
 }
 

diff --git a/net-analyzer/pmacct/pmacct-1.7.4_p1.ebuild 
b/net-analyzer/pmacct/pmacct-1.7.4_p1.ebuild
new file mode 100644
index 00000000000..29e47d7219d
--- /dev/null
+++ b/net-analyzer/pmacct/pmacct-1.7.4_p1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools flag-o-matic toolchain-funcs
+
+DESCRIPTION="A network tool to gather IP traffic information"
+HOMEPAGE="http://www.pmacct.net/";
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV/_}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="
+       64bit +bgp-bins +bmp-bins geoip geoipv2 jansson kafka +l2 mongodb mysql
+       ndpi nflog plabel postgres rabbitmq sqlite +st-bins +traffic-bins zmq
+"
+REQUIRED_USE="
+       ?? ( geoip geoipv2 )
+       kafka? ( jansson )
+       rabbitmq? ( jansson )
+"
+
+RDEPEND="
+       net-libs/libpcap
+       geoip? ( dev-libs/geoip )
+       geoipv2? ( dev-libs/libmaxminddb )
+       jansson? ( dev-libs/jansson )
+       kafka? ( dev-libs/librdkafka )
+       mongodb? (
+               >=dev-libs/mongo-c-driver-0.8.1-r1
+               <dev-libs/mongo-c-driver-0.98
+       )
+       mysql? ( dev-db/mysql-connector-c:0= )
+       ndpi? ( >=net-libs/nDPI-3.2:= )
+       nflog? ( net-libs/libnetfilter_log )
+       postgres? ( dev-db/postgresql:* )
+       rabbitmq? ( net-libs/rabbitmq-c )
+       sqlite? ( =dev-db/sqlite-3* )
+       zmq? ( >=net-libs/zeromq-4.2.0:= )
+"
+DEPEND="
+       ${RDEPEND}
+       virtual/pkgconfig
+"
+PATCHES=(
+#      "${FILESDIR}"/${PN}-1.7.3-nDPI-3.0.patch
+       "${FILESDIR}"/${PN}-1.7.4--Werror.patch
+       "${FILESDIR}"/${PN}-1.7.4-nDPI-3.2.patch
+)
+
+DOCS=(
+       CONFIG-KEYS ChangeLog FAQS QUICKSTART UPGRADE
+       docs/INTERNALS docs/PLUGINS docs/SIGNALS
+)
+S=${WORKDIR}/${P/_}
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_configure() {
+       tc-export CC AR RANLIB
+       append-cflags -fcommon
+
+       econf \
+               $(use_enable 64bit) \
+               $(use_enable bgp-bins) \
+               $(use_enable bmp-bins) \
+               $(use_enable geoip) \
+               $(use_enable geoipv2) \
+               $(use_enable jansson) \
+               $(use_enable kafka) \
+               $(use_enable l2) \
+               $(use_enable plabel) \
+               $(use_enable mongodb) \
+               $(use_enable mysql) \
+               $(use_enable ndpi) \
+               $(use_enable nflog) \
+               $(use_enable postgres pgsql) \
+               $(use_enable rabbitmq) \
+               $(use_enable sqlite sqlite3) \
+               $(use_enable st-bins) \
+               $(use_enable traffic-bins) \
+               $(use_enable zmq) \
+               --disable-debug
+}
+
+src_install() {
+       default
+
+       for dirname in examples sql telemetry; do
+               docinto ${dirname}
+               dodoc -r ${dirname}/*
+       done
+
+       newinitd "${FILESDIR}"/pmacctd-init.d pmacctd
+       newconfd "${FILESDIR}"/pmacctd-conf.d pmacctd
+
+       insinto /etc/pmacctd
+       newins examples/pmacctd-imt.conf.example pmacctd.conf
+}

Reply via email to