summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Roovers <jer@gentoo.org>2020-04-24 09:25:07 +0200
committerJeroen Roovers <jer@gentoo.org>2020-04-24 09:35:06 +0200
commitd7addd0edb9627481cf77288ad6edbcdbed86d1e (patch)
tree81d7ae8f644f86c2d784750438b8593c43c42220 /net-firewall
parentdev-util/catalyst: Drop old versions (diff)
downloadgentoo-d7addd0edb9627481cf77288ad6edbcdbed86d1e.tar.gz
gentoo-d7addd0edb9627481cf77288ad6edbcdbed86d1e.tar.bz2
gentoo-d7addd0edb9627481cf77288ad6edbcdbed86d1e.zip
net-firewall/ipt_netflow: Version 2.5
Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Jeroen Roovers <jer@gentoo.org>
Diffstat (limited to 'net-firewall')
-rw-r--r--net-firewall/ipt_netflow/Manifest1
-rw-r--r--net-firewall/ipt_netflow/files/ipt_netflow-2.5-gentoo.patch61
-rw-r--r--net-firewall/ipt_netflow/ipt_netflow-2.5.ebuild104
3 files changed, 166 insertions, 0 deletions
diff --git a/net-firewall/ipt_netflow/Manifest b/net-firewall/ipt_netflow/Manifest
index ee990a70dbd1..79bf94164a95 100644
--- a/net-firewall/ipt_netflow/Manifest
+++ b/net-firewall/ipt_netflow/Manifest
@@ -1 +1,2 @@
DIST ipt_netflow-2.4.tar.gz 92580 BLAKE2B 0197e7e5cdd9c94c7b80b38cb4e2879343139592421922bf73aeaac70ac3af54ea25934bb1474ff455a9f58eab2368995591542f46be48b5c8491a3b6a192f56 SHA512 3c80d02cfda996fbde8d258875df8795000fd8390b5a6f8296771a992067e153eca48f7f4602421529948beaf3030e164adfc2ffe5b528042fbdc15ffb56aa74
+DIST ipt_netflow-2.5.tar.gz 94097 BLAKE2B 5ca8d686e08f6fb0cdb1d502572afc71f146e2633ccf5fc7cb9ad21420fb62e88a2cb393e83ee4f5646200fa964d46a16ef58831958799449a4a59e2da6c9337 SHA512 8cd1bc46ef6e975964e5ddc290ed999f7076b63a9363f1a1f31b5d8db875d4e564ed5f0d5185c29dcf8a86793fe4badf63325b79ba1abbc264088b1ca94a9dad
diff --git a/net-firewall/ipt_netflow/files/ipt_netflow-2.5-gentoo.patch b/net-firewall/ipt_netflow/files/ipt_netflow-2.5-gentoo.patch
new file mode 100644
index 000000000000..508be107795e
--- /dev/null
+++ b/net-firewall/ipt_netflow/files/ipt_netflow-2.5-gentoo.patch
@@ -0,0 +1,61 @@
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -11,7 +11,7 @@
+ SNMPTGSO = /usr/lib/snmp/dlmod/snmp_NETFLOW.so
+ SNMPCONF = /etc/snmp/snmpd.conf
+ SNMPLINE = dlmod netflow $(SNMPTGSO)
+-CC = gcc
++CC ?= gcc
+
+ # https://www.kernel.org/doc/Documentation/kbuild/modules.txt
+ # https://www.kernel.org/doc/Documentation/kbuild/makefiles.txt
+@@ -22,31 +22,31 @@
+
+ ipt_NETFLOW.ko: version.h ipt_NETFLOW.c ipt_NETFLOW.h compat_def.h compat.h Makefile
+ @echo Compiling for kernel $(KVERSION)
+- make -C $(KDIR) M=$(CURDIR) modules CONFIG_DEBUG_INFO=y
++ $(MAKE) -C $(KDIR) M=$(CURDIR) modules CONFIG_DEBUG_INFO=y
+ @touch $@
+ compat_def.h: gen_compat_def
+ ./gen_compat_def > $@
+ sparse: | version.h ipt_NETFLOW.c ipt_NETFLOW.h compat.h Makefile
+ @rm -f ipt_NETFLOW.ko ipt_NETFLOW.o
+ @echo Compiling for kernel $(KVERSION)
+- make -C $(KDIR) M=$(CURDIR) modules C=1
++ $(MAKE) -C $(KDIR) M=$(CURDIR) modules C=1
+ @touch ipt_NETFLOW.ko
+ coverity:
+ coverity-submit -v
+
+ minstall: | ipt_NETFLOW.ko
+ @echo " *"
+- make -C $(KDIR) M=$(CURDIR) modules_install INSTALL_MOD_PATH=$(DESTDIR)
++ $(MAKE) -C $(KDIR) M=$(CURDIR) modules_install INSTALL_MOD_PATH=$(DESTDIR)
+ $(DEPMOD)
+ mclean:
+- make -C $(KDIR) M=$(CURDIR) clean
++ $(MAKE) -C $(KDIR) M=$(CURDIR) clean
+ lclean:
+ -rm -f *.so *_sh.o
+ clean: mclean lclean
+ -rm -f *.so *.o modules.order version.h compat_def.h
+
+ snmp_NETFLOW.so: snmp_NETFLOW.c
+- $(CC) -fPIC -shared -o $@ $< -lnetsnmp
++ $(CC) $(CFLAGS) $(LDFLAGS) -fPIC -shared -o $@ $< -lnetsnmp
+
+ sinstall: | snmp_NETFLOW.so IPT-NETFLOW-MIB.my
+ @echo " *"
+@@ -66,10 +66,10 @@
+ fi
+
+ %_sh.o: libipt_NETFLOW.c
+- $(CC) $(CFLAGS) -O2 -Wall -Wunused $(IPTABLES_CFLAGS) -fPIC -o $@ -c libipt_NETFLOW.c
++ $(CC) $(CFLAGS) -Wall -Wunused $(IPTABLES_CFLAGS) -fPIC -o $@ -c libipt_NETFLOW.c
+
+ %.so: %_sh.o
+- $(CC) -shared -o $@ $<
++ $(CC) $(LDFLAGS) -shared -o $@ $<
+
+ version.h: ipt_NETFLOW.c ipt_NETFLOW.h compat.h Makefile
+ @./version.sh --define > version.h
diff --git a/net-firewall/ipt_netflow/ipt_netflow-2.5.ebuild b/net-firewall/ipt_netflow/ipt_netflow-2.5.ebuild
new file mode 100644
index 000000000000..d5ba624302b2
--- /dev/null
+++ b/net-firewall/ipt_netflow/ipt_netflow-2.5.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit linux-info linux-mod toolchain-funcs
+
+DESCRIPTION="Netflow iptables module"
+HOMEPAGE="
+ https://sourceforge.net/projects/ipt-netflow
+ https://github.com/aabc/ipt-netflow
+"
+SRC_URI="https://github.com/aabc/ipt-netflow/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="debug natevents snmp"
+
+RDEPEND="
+ net-firewall/iptables:0=
+ snmp? ( net-analyzer/net-snmp )
+"
+DEPEND="${RDEPEND}
+ virtual/linux-sources
+ virtual/pkgconfig
+"
+PATCHES=(
+ "${FILESDIR}/${PN}-2.0-configure.patch" # bug #455984
+ "${FILESDIR}/${PN}-2.5-gentoo.patch"
+)
+
+pkg_setup() {
+ linux-info_pkg_setup
+
+ local CONFIG_CHECK="~IP_NF_IPTABLES VLAN_8021Q"
+ use debug && CONFIG_CHECK+=" ~DEBUG_FS"
+ if use natevents; then
+ CONFIG_CHECK+=" NF_CONNTRACK_EVENTS"
+ if kernel_is lt 5 2; then
+ CONFIG_CHECK+=" NF_NAT_NEEDED"
+ else
+ CONFIG_CHECK+=" NF_NAT"
+ fi
+ fi
+
+ BUILD_TARGETS="all"
+ MODULE_NAMES="ipt_NETFLOW(ipt_netflow:${S})"
+ IPT_LIB="/usr/$(get_libdir)/xtables"
+
+ linux-mod_pkg_setup
+}
+
+src_unpack() {
+ default
+
+ mv "${WORKDIR}"/${PN/_/-}-* "${WORKDIR}"/${P} || die
+}
+
+src_prepare() {
+ default
+
+ # Checking for directory is enough
+ sed -i -e 's:-s /etc/snmp/snmpd.conf:-d /etc/snmp:' configure || die
+}
+
+do_conf() {
+ tc-export CC
+ echo ./configure $*
+ ./configure $* ${EXTRA_ECONF} || die 'configure failed'
+}
+
+src_configure() {
+ local IPT_VERSION="$($(tc-getPKG_CONFIG) --modversion xtables)"
+ # this configure script is not based on autotools
+ # ipt-src need to be defined, see bug #455984
+ do_conf \
+ --disable-dkms \
+ --enable-aggregation \
+ --enable-direction \
+ --enable-macaddress \
+ --enable-vlan \
+ --ipt-lib="${IPT_LIB}" \
+ --ipt-src="/usr/" \
+ --ipt-ver="${IPT_VERSION}" \
+ --kdir="${KV_DIR}" \
+ --kver="${KV_FULL}" \
+ $(use debug && echo '--enable-debugfs') \
+ $(use natevents && echo '--enable-natevents') \
+ $(use snmp && echo '--enable-snmp-rules' || echo '--disable-snmp-agent')
+}
+
+src_compile() {
+ emake ARCH="$(tc-arch-kernel)" CC="$(tc-getCC)" all
+}
+
+src_install() {
+ linux-mod_src_install
+ exeinto "${IPT_LIB}"
+ doexe libipt_NETFLOW.so
+ use snmp && emake DESTDIR="${D}" SNMPTGSO="/usr/$(get_libdir)/snmp/dlmod/snmp_NETFLOW.so" sinstall
+ doheader ipt_NETFLOW.h
+ dodoc README*
+}