summaryrefslogtreecommitdiff
path: root/net-firewall/ipset
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-12-17 02:02:20 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-12-17 02:02:20 +0000
commit2f50f3ca1d346a1f74054f124adb11136068b2b1 (patch)
tree10b9920e8655629b9153b171f314ed189fce6578 /net-firewall/ipset
parente07c6f9648d478943b5ecd6f1c42cc91cae0f547 (diff)
gentoo auto-resync : 17:12:2024 - 02:02:19
Diffstat (limited to 'net-firewall/ipset')
-rw-r--r--net-firewall/ipset/Manifest2
-rw-r--r--net-firewall/ipset/ipset-7.23.ebuild116
2 files changed, 118 insertions, 0 deletions
diff --git a/net-firewall/ipset/Manifest b/net-firewall/ipset/Manifest
index 66c5d232d8ff..47329c949a56 100644
--- a/net-firewall/ipset/Manifest
+++ b/net-firewall/ipset/Manifest
@@ -6,5 +6,7 @@ AUX ipset.confd-r1 666 BLAKE2B 852963fd27d11f58305f33cc9be84d5eabde73f5af4924d97
AUX ipset.initd-r7 4175 BLAKE2B 8a9936ffc57ffcf25ed45769d6cb76cecc0de66919597a90e440156d7cf938ed5ffc6b71aed634cbc473c866ad542d9eb388e3d91ebd697949ceaa763ce24e80 SHA512 d208ee673119182ee515c25263704e0e5bbae1aefbf5ec469ca71f3e70e14900c5a2d8f0171b3a5754afbcc464d30a760d0e413b1b66ccb0d3805327fdd66b65
AUX ipset.systemd-r1 492 BLAKE2B 78fd7b122e0fe08b36d36e736d18b7a5f0bf1aa78802f1bdc7abf69ad2ef9c0bcfb22ae84f8f6489aee6c147ee3c0be7ebfa600712bf6169940802466daf68ba SHA512 6574e48ce6b3c4f45122a8b387746793ceda62f68ec8b0f3f6f949f5650ab557f3f7eb75699e36d5bf04efbf39dc17e030cc44ea9d97891578d4c909669e6eb7
DIST ipset-7.22.tar.bz2 694069 BLAKE2B 9daaff54adb6f9daf69cd7dabbd9134d8fcf8cd7f8ef0c52296961579ad3c8202087158a01664228eff70356ba97f77ec61abbab7c7ce323112fbdc32abd661b SHA512 e375a9110eb7974480147c57eb2cff4bdd03c7704cdae006a3d254cc80fada587aa8aee25a86f7cab29db83f5e283c5f9a47a314297317660ebba5097f623d79
+DIST ipset-7.23.tar.bz2 695655 BLAKE2B a596630d12a8bcc1383475627e5e62b7be4c17570ae9d3650b9dbcac0ec46324e1ac7c0e7e11f674fb5354871538f6f15e57476ac752b1ac1415023d837904e6 SHA512 5a43c790abf157a55db5a9a22cb5f28a225f5c7969beda81566a2259aa82c9d852979eb805b11b4347f47c6a0c2cc4de6f14e4733bee5b562844422a45fb9dab
EBUILD ipset-7.22-r2.ebuild 3567 BLAKE2B e3775ef8927c1bd96d30064e04c9302d4e3025cbd6b9c73af9b2f65956a198b2164b9c9903eb9f0bc49122c98df0c89de12e970610f3de88118da93fccc9cabf SHA512 11d975b834bf0b376396a88265b8f65c3fbbb442c02826292926a6e31e045eb7ff2bec4447e11deae76e55b75cf3424b227999bf6505465f89977f673ebda897
+EBUILD ipset-7.23.ebuild 3439 BLAKE2B 16b29300ee71dbd9971cd4b471f5dea73e8c8a9bec5213a9b98f728cfc0f134875b59d8da5512f27459c524ea3d84bd774220288c1a4e39070ffd3b5095c7ad1 SHA512 cc41fee6e8f08ba3160b19374eb166958b9e7ac785ac5761198397c7af97be7aedd82472b07752d2d711ba6fd485c56abf38d96f83b7822cd06144c23808142e
MISC metadata.xml 475 BLAKE2B e1e06003a410249ed76d39b74ccbcd64b8572ff05f1c818729d787cecfb19cfa9c7e3463473688abc7a398efb908b0c7145bad88bbb7259e69f1b7d985584bcc SHA512 d0a3dca6593e8a62cbf5c325eb59b620137af8d8f5a463702c4d6ec102fd03b8adbbdcd9358777d0461f57a98d892d359d80b8f722d3f322f3d4766d762f6585
diff --git a/net-firewall/ipset/ipset-7.23.ebuild b/net-firewall/ipset/ipset-7.23.ebuild
new file mode 100644
index 000000000000..00688b5a1675
--- /dev/null
+++ b/net-firewall/ipset/ipset-7.23.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MODULES_OPTIONAL_IUSE=modules
+inherit autotools bash-completion-r1 linux-mod-r1 systemd
+
+DESCRIPTION="IPset tool for iptables, successor to ippool"
+HOMEPAGE="https://ipset.netfilter.org/ https://git.netfilter.org/ipset/"
+SRC_URI="https://ipset.netfilter.org/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ net-firewall/iptables
+ net-libs/libmnl:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+DOCS=( ChangeLog INSTALL README UPGRADE )
+
+# configurable from outside, e.g. /etc/portage/make.conf
+IP_NF_SET_MAX=${IP_NF_SET_MAX:-256}
+
+PATCHES=( "${FILESDIR}/${PN}-bash-completion.patch")
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+pkg_setup() {
+ get_version
+ CONFIG_CHECK="NETFILTER"
+ ERROR_NETFILTER="ipset requires NETFILTER support in your kernel."
+ CONFIG_CHECK+=" NETFILTER_NETLINK"
+ ERROR_NETFILTER_NETLINK="ipset requires NETFILTER_NETLINK support in your kernel."
+ # It does still build without NET_NS, but it may be needed in future.
+ #CONFIG_CHECK="${CONFIG_CHECK} NET_NS"
+ #ERROR_NET_NS="ipset requires NET_NS (network namespace) support in your kernel."
+ CONFIG_CHECK+=" !PAX_CONSTIFY_PLUGIN"
+ ERROR_PAX_CONSTIFY_PLUGIN="ipset contains constified variables (#614896)"
+
+ build_modules=0
+ if use modules; then
+ if linux_config_src_exists && linux_chkconfig_builtin "MODULES" ; then
+ if linux_chkconfig_present "IP_NF_SET" || \
+ linux_chkconfig_present "IP_SET"; then #274577
+ eerror "There is IP{,_NF}_SET or NETFILTER_XT_SET support in your kernel."
+ eerror "Please either build ipset with modules USE flag disabled"
+ eerror "or rebuild kernel without IP_SET support and make sure"
+ eerror "there is NO kernel ip_set* modules in /lib/modules/<your_kernel>/... ."
+ die "USE=modules and in-kernel ipset support detected."
+ else
+ einfo "Modular kernel detected. Gonna build kernel modules..."
+ build_modules=1
+ fi
+ else
+ eerror "Nonmodular kernel detected, but USE=modules. Either build"
+ eerror "modular kernel (without IP_SET) or disable USE=modules"
+ die "Nonmodular kernel detected, will not build kernel modules"
+ fi
+ fi
+
+ [[ ${build_modules} -eq 1 ]] && linux-mod-r1_pkg_setup
+}
+
+src_configure() {
+ export bashcompdir="$(get_bashcompdir)"
+
+ econf \
+ --enable-bashcompl \
+ $(use_with modules kmod) \
+ --with-maxsets=${IP_NF_SET_MAX} \
+ --with-ksource="${KV_DIR}" \
+ --with-kbuild="${KV_OUT_DIR}"
+}
+
+src_compile() {
+ einfo "Building userspace"
+
+ local modlist=( xt_set=kernel/net/netfilter/ipset/:"${S}":kernel/net/netfilter/:
+ em_ipset=kernel/net/sched:"${S}":kernel/net/sched/:modules )
+
+ for i in ip_set{,_bitmap_{ip{,mac},port},_hash_{ip{,mac,mark,port{,ip,net}},mac,net{,port{,net},iface,net}},_list_set}; do
+ modlist+=( ${i}=kernel/net/netfilter/ipset/:"${S}":kernel/net/netfilter/ipset )
+ done
+
+ emake
+
+ if [[ ${build_modules} -eq 1 ]]; then
+ einfo "Building kernel modules"
+ linux-mod-r1_src_compile
+ fi
+}
+
+src_install() {
+ einfo "Installing userspace"
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/ipset.initd-r7 ${PN}
+ newconfd "${FILESDIR}"/ipset.confd-r1 ${PN}
+ systemd_newunit "${FILESDIR}"/ipset.systemd-r1 ${PN}.service
+ keepdir /var/lib/ipset
+
+ if [[ ${build_modules} -eq 1 ]]; then
+ einfo "Installing kernel modules"
+ linux-mod-r1_src_install
+ fi
+}