net-firewall/ipt_netflow: New ebuild
This commit is contained in:
parent
055bab9f82
commit
93df8868cf
2
net-firewall/ipt_netflow/Manifest
Normal file
2
net-firewall/ipt_netflow/Manifest
Normal file
|
@ -0,0 +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
|
|
@ -0,0 +1,10 @@
|
|||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -421,7 +421,6 @@
|
||||
iptables_find_version #IPTVER
|
||||
iptables_try_pkgconfig #try to configure from pkg-config
|
||||
iptables_find_src #IPTSRC
|
||||
-iptables_src_version #check that IPTSRC match to IPTVER
|
||||
iptables_inc #IPTINC
|
||||
iptables_modules #IPTLIB
|
||||
|
55
net-firewall/ipt_netflow/files/ipt_netflow-2.3-flags.patch
Normal file
55
net-firewall/ipt_netflow/files/ipt_netflow-2.3-flags.patch
Normal file
|
@ -0,0 +1,55 @@
|
|||
--- 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,29 +22,29 @@
|
||||
|
||||
ipt_NETFLOW.ko: version.h ipt_NETFLOW.c ipt_NETFLOW.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 $@
|
||||
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
|
||||
|
||||
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 " *"
|
||||
@@ -64,7 +64,7 @@
|
||||
fi
|
||||
|
||||
%_sh.o: libipt_NETFLOW.c
|
||||
- $(CC) $(CFLAGS) -O2 -Wall -Wunused $(IPTABLES_CFLAGS) -fPIC -o $@ -c libipt_NETFLOW.c
|
||||
+ $(CC) $(CFLAGS) $(LDFLAGS) -Wall -Wunused $(IPTABLES_CFLAGS) -fPIC -o $@ -c libipt_NETFLOW.c
|
||||
|
||||
%.so: %_sh.o
|
||||
$(CC) -shared -o $@ $<
|
|
@ -0,0 +1,61 @@
|
|||
From 9288e30f493d252ee85b492a894f78073e4f6d41 Mon Sep 17 00:00:00 2001
|
||||
From: ABC <abc@openwall.com>
|
||||
Date: Sat, 28 Sep 2019 23:29:40 +0300
|
||||
Subject: [PATCH] Don't compile physdev-override if BRIDGE_NETFILTER is
|
||||
disabled.
|
||||
|
||||
Fixes #120 "Compile error nf_bridge / nf_trace" reported by DocMAX.
|
||||
|
||||
Fixes: 51bdc2b ("Use nf_bridge_info_get() instead of skb->nf_bridge").
|
||||
---
|
||||
compat.h | 2 ++
|
||||
configure | 1 +
|
||||
ipt_NETFLOW.c | 5 +++++
|
||||
3 files changed, 8 insertions(+)
|
||||
|
||||
diff --git a/compat.h b/compat.h
|
||||
index 0f9896b..66e224b 100644
|
||||
--- a/compat.h
|
||||
+++ b/compat.h
|
||||
@@ -680,11 +680,13 @@ static inline int is_vlan_dev(struct net_device *dev)
|
||||
#endif
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(5,0,0)
|
||||
+# ifdef CONFIG_BRIDGE_NETFILTER
|
||||
static inline struct nf_bridge_info *
|
||||
nf_bridge_info_get(const struct sk_buff *skb)
|
||||
{
|
||||
return skb->nf_bridge;
|
||||
}
|
||||
+# endif
|
||||
#endif
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0)
|
||||
diff --git a/configure b/configure
|
||||
index 74eece5..8aae8bf 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -470,6 +470,7 @@ kernel_check_config() {
|
||||
kconfig CONFIG_NF_CONNTRACK_EVENTS "natevents"
|
||||
kconfig CONFIG_IPV6 "IPv6"
|
||||
kconfig CONFIG_IP6_NF_IPTABLES "ip6tables target"
|
||||
+ kconfig CONFIG_BRIDGE_NETFILTER "physdev override"
|
||||
}
|
||||
|
||||
kernel_check_include() {
|
||||
diff --git a/ipt_NETFLOW.c b/ipt_NETFLOW.c
|
||||
index fe25655..064de6c 100644
|
||||
--- a/ipt_NETFLOW.c
|
||||
+++ b/ipt_NETFLOW.c
|
||||
@@ -83,6 +83,11 @@
|
||||
#if defined(CONFIG_NF_NAT_NEEDED) && LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)
|
||||
# include <net/netfilter/nf_conntrack_timestamp.h>
|
||||
#endif
|
||||
+#ifdef ENABLE_PHYSDEV_OVER
|
||||
+# ifndef CONFIG_BRIDGE_NETFILTER
|
||||
+# undef ENABLE_PHYSDEV_OVER
|
||||
+# endif
|
||||
+#endif
|
||||
|
||||
#define IPT_NETFLOW_VERSION "2.4" /* Note that if you are using git, you
|
||||
will see version in other format. */
|
61
net-firewall/ipt_netflow/files/ipt_netflow-2.5-gentoo.patch
Normal file
61
net-firewall/ipt_netflow/files/ipt_netflow-2.5-gentoo.patch
Normal file
|
@ -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
|
57
net-firewall/ipt_netflow/files/ipt_netflow-9999-gentoo.patch
Normal file
57
net-firewall/ipt_netflow/files/ipt_netflow-9999-gentoo.patch
Normal file
|
@ -0,0 +1,57 @@
|
|||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -11,7 +11,7 @@ CARGS = @CARGS@
|
||||
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 @@ all: ipt_NETFLOW.ko libipt_NETFLOW.so libip6t_NETFLOW.so @SNMPTARGET@
|
||||
|
||||
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,7 +66,7 @@ sinstall: | snmp_NETFLOW.so IPT-NETFLOW-MIB.my
|
||||
fi
|
||||
|
||||
%_sh.o: libipt_NETFLOW.c
|
||||
- $(CC) $(CFLAGS) -O2 -Wall -Wunused $(IPTABLES_CFLAGS) -fPIC -o $@ -c libipt_NETFLOW.c
|
||||
+ $(CC) $(CFLAGS) $(LDFLAGS) -Wall -Wunused $(IPTABLES_CFLAGS) -fPIC -o $@ -c libipt_NETFLOW.c
|
||||
|
||||
%.so: %_sh.o
|
||||
$(CC) -shared -o $@ $<
|
105
net-firewall/ipt_netflow/ipt_netflow-2.4.ebuild
Normal file
105
net-firewall/ipt_netflow/ipt_netflow-2.4.ebuild
Normal file
|
@ -0,0 +1,105 @@
|
|||
# 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 dot1q 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.3-flags.patch"
|
||||
"${FILESDIR}/${P}-bridge_netfilter.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
linux-info_pkg_setup
|
||||
|
||||
use dot1q && 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 \
|
||||
--ipt-lib="${IPT_LIB}" \
|
||||
--ipt-src="/usr/" \
|
||||
--ipt-ver="${IPT_VERSION}" \
|
||||
--kdir="${KV_DIR}" \
|
||||
--kver="${KV_FULL}" \
|
||||
$(use debug && echo '--enable-debugfs') \
|
||||
$(use dot1q && echo '--enable-vlan') \
|
||||
$(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*
|
||||
}
|
104
net-firewall/ipt_netflow/ipt_netflow-2.5.ebuild
Normal file
104
net-firewall/ipt_netflow/ipt_netflow-2.5.ebuild
Normal file
|
@ -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="BRIDGE_NETFILTER ~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*
|
||||
}
|
105
net-firewall/ipt_netflow/ipt_netflow-9999.ebuild
Normal file
105
net-firewall/ipt_netflow/ipt_netflow-9999.ebuild
Normal file
|
@ -0,0 +1,105 @@
|
|||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
inherit git-r3 linux-info linux-mod toolchain-funcs
|
||||
|
||||
DESCRIPTION="Netflow iptables module"
|
||||
HOMEPAGE="
|
||||
https://sourceforge.net/projects/ipt-netflow
|
||||
https://github.com/aabc/ipt-netflow
|
||||
"
|
||||
EGIT_REPO_URI="https://github.com/aabc/ipt-netflow"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS=""
|
||||
|
||||
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}-9999-gentoo.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
linux-info_pkg_setup
|
||||
|
||||
local CONFIG_CHECK="BRIDGE_NETFILTER ~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_prepare() {
|
||||
default
|
||||
|
||||
# Fix incorrect module version in sources
|
||||
sed -i \
|
||||
-e '/IPT_NETFLOW_VERSION/s#"[0-9.]*"#"'${PV}'"#' \
|
||||
ipt_NETFLOW.c || die
|
||||
|
||||
# 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*
|
||||
}
|
19
net-firewall/ipt_netflow/metadata.xml
Normal file
19
net-firewall/ipt_netflow/metadata.xml
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>pinkbyte@gentoo.org</email>
|
||||
<name>Sergey Popov</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>netmon@gentoo.org</email>
|
||||
<name>Gentoo network monitoring and analysis project</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="natevents">Netflow NAT translation events (NEL) support</flag>
|
||||
<flag name="dot1q">Enable tagged VLAN support</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="sourceforge">ipt-netflow</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
Loading…
Reference in a new issue