summaryrefslogtreecommitdiff
path: root/net-dns/dnsdist
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-09-08 12:29:28 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-09-08 12:29:28 +0100
commit8e49340ce0aaf205556648d8fa27dd30e8cf4435 (patch)
tree38cc25a0f12067b6b184788983173496ae9936e6 /net-dns/dnsdist
parent6c1090c8458fa6e15fd24227293d60bbf356eb60 (diff)
gentoo auto-resync : 08:09:2024 - 12:29:27
Diffstat (limited to 'net-dns/dnsdist')
-rw-r--r--net-dns/dnsdist/Manifest5
-rw-r--r--net-dns/dnsdist/dnsdist-1.9.6-r1.ebuild117
-rw-r--r--net-dns/dnsdist/files/1.9.6-boost-1.86.0.patch35
-rw-r--r--net-dns/dnsdist/files/1.9.6-json11-gcc15.patch19
-rw-r--r--net-dns/dnsdist/metadata.xml8
5 files changed, 179 insertions, 5 deletions
diff --git a/net-dns/dnsdist/Manifest b/net-dns/dnsdist/Manifest
index bcd4ee26275d..83c465805e1f 100644
--- a/net-dns/dnsdist/Manifest
+++ b/net-dns/dnsdist/Manifest
@@ -1,3 +1,5 @@
+AUX 1.9.6-boost-1.86.0.patch 1018 BLAKE2B efc91130b651534467b505d18bfbd3ebb04186766499423f102bd0af565422a738734baf6a641ed9df4043708162e18df640559efb4a677f55b4a9545d43b501 SHA512 93fd7f6da8568a82e59e76f1572e5f6455b39e5935fa6361f04a54de97ca2c641117658f82f3764246e9d8efd0d5cbf0446919f04026a39f99abd945bb10ed0d
+AUX 1.9.6-json11-gcc15.patch 588 BLAKE2B 3f623a06f42eef59d3ec7ce502f554e5ebae7913a00cbb040958ed73995483baef2e111aab2f1317327967fdfe204f7743f5e748414a1280f216acc0b1d55a86 SHA512 13c476975802ba40319b23dff76fa5b737a1640c69fad21c2bbc050a94dca991ceba846b7fe433068993854070c3d4e7d4608256491ce93ef4496f79f4080402
AUX dnsdist.conf.example 524 BLAKE2B e9d140129dfbd276d1fb927d73bee4e4c29920ae70d587765ea5d432f02694b1a8583340c2e14e191bbdf5ddd5b921274cb2336c3520839d7cfe6f399a4d6c26 SHA512 385bee5725d927feb50fc0f40cd48cd365a495e39c0d947aa53dc454d84b7fe3806cd1d206056c96d111e7251db2cda27570ff8154c70bed145d37bc7d1db01d
AUX dnsdist.confd 266 BLAKE2B c201b0aa3599ea7606e998348d777796ff391f3d4b0e46744160298456c86a9d9bbf65d1a339c0c13db4c796efb7c3adba01110882542fe501c735c9dd190f92 SHA512 935afc768ae56d017f6dee8bed7a3e92615055a0d4d2ae9980afef1b8f353da0e8bd6e20b914602e50b116ad33ef17ba05535b225af8b8da9ad005694edc071f
AUX dnsdist.initd 1337 BLAKE2B e2619182674439be6942a0a936208326c12cfc2839bba4fd6a2ca3653ac6083458ebf2b644d2db63c187ed33ba2bef3437680714bb76dfc7632e1b62149a6f6a SHA512 99e38a58c97dd206ea82ffc783102feaa28f74bec5e03c1790e2db0f428f8228eec43617b2c951f22320e10dbd42ddfbf40650fed28608428f9c48eec3640a8d
@@ -10,5 +12,6 @@ EBUILD dnsdist-1.8.0.ebuild 2237 BLAKE2B 0ceb0e09c542ebd775c93d1adbcd4630ee82f64
EBUILD dnsdist-1.8.1.ebuild 2237 BLAKE2B 0ceb0e09c542ebd775c93d1adbcd4630ee82f64f90318a6764e54a80eaac0ccc28702bd9bf581064ac64c7cf1debfe25e4565e6357d33aa42d543e49045b557f SHA512 6d531a84be771b5e1913bba6daa2acba9dc8af28196d70b2446efee85d9fcf10e5da43b38d867af2c93eb7fd12dbd3573a774b46529f76b970b622a4964fc486
EBUILD dnsdist-1.9.4.ebuild 2711 BLAKE2B f55a4211d6d6f62e19930615b45f51a955d719e32a6e59d4182aa75121d56fec0ee2b95281f70e7e75f35a3ce8ec89ecbf1584dc37919e608aadbead7a0d807e SHA512 f9c609bdce1398633011156a24ffe2d85411108902fba995837b07a6c8758c8f5108e6d7016bc18d56a1f9c21ffa3b9e6cf2a204ed92427137a3b8d360c7772b
EBUILD dnsdist-1.9.5.ebuild 2711 BLAKE2B f55a4211d6d6f62e19930615b45f51a955d719e32a6e59d4182aa75121d56fec0ee2b95281f70e7e75f35a3ce8ec89ecbf1584dc37919e608aadbead7a0d807e SHA512 f9c609bdce1398633011156a24ffe2d85411108902fba995837b07a6c8758c8f5108e6d7016bc18d56a1f9c21ffa3b9e6cf2a204ed92427137a3b8d360c7772b
+EBUILD dnsdist-1.9.6-r1.ebuild 2804 BLAKE2B f9e0352b533521dd282225a65102a8516da81463e79fdaef877ca20b9ae2520c1e198da9fa11d17cbabed72f1466beaa632be33c3fc4be264435e917f1962ed7 SHA512 b65fd11fe357b9bc5e8855f52bf9abfcecffbba8c5cb23bb762848ca9b2adb366f2de3248f7d78fed1e6b78fd0e9144d92504c653f626eed31da95131069cab1
EBUILD dnsdist-1.9.6.ebuild 2711 BLAKE2B f55a4211d6d6f62e19930615b45f51a955d719e32a6e59d4182aa75121d56fec0ee2b95281f70e7e75f35a3ce8ec89ecbf1584dc37919e608aadbead7a0d807e SHA512 f9c609bdce1398633011156a24ffe2d85411108902fba995837b07a6c8758c8f5108e6d7016bc18d56a1f9c21ffa3b9e6cf2a204ed92427137a3b8d360c7772b
-MISC metadata.xml 1965 BLAKE2B c45e150d13af41f787befd5775596b83073e7041be244ba99240106d07f044bcbfd24a46165e04ca48990e24870402322fe496578ef784252a2973434cfee76d SHA512 83ced0072f306d0e296f66ce83cdc8e3b94e9a1c6946bb01722a3139b49dde27bc4ee4df5b4816755c412aa05c83278ba5f072741bb078f25cb3ac8c843949cc
+MISC metadata.xml 1965 BLAKE2B 2d5f3a088a14fcdc2a36ccb3dae1cf47c44c3601264a3fd379e66d6440ac37182384d53d041e35a7bac72227800ba3cadd0ab02a2b0ab53883b6ed44d8803e13 SHA512 a2f3a0d9e17b653912d4269edf4f34e25ff0ebfdf19bea030b41830332ea880fb6fb49a4cb41a21e41402ce6b8478bee7a826874b68da1619dc3198b771d8b11
diff --git a/net-dns/dnsdist/dnsdist-1.9.6-r1.ebuild b/net-dns/dnsdist/dnsdist-1.9.6-r1.ebuild
new file mode 100644
index 000000000000..dc311688bbfd
--- /dev/null
+++ b/net-dns/dnsdist/dnsdist-1.9.6-r1.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit flag-o-matic lua-single
+
+DESCRIPTION="A highly DNS-, DoS- and abuse-aware loadbalancer"
+HOMEPAGE="https://dnsdist.org"
+
+SRC_URI="https://downloads.powerdns.com/releases/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="~amd64 ~x86"
+
+IUSE="bpf cdb dnscrypt dnstap doh doh3 ipcipher lmdb quic regex snmp +ssl systemd test web xdp"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${LUA_REQUIRED_USE}
+ dnscrypt? ( ssl )
+ doh? ( ssl )
+ doh3? ( ssl quic )
+ ipcipher? ( ssl )
+ quic? ( ssl )"
+
+RDEPEND="acct-group/dnsdist
+ acct-user/dnsdist
+ bpf? ( dev-libs/libbpf:= )
+ cdb? ( dev-db/tinycdb:= )
+ dev-libs/boost:=
+ sys-libs/libcap
+ dev-libs/libedit
+ dev-libs/libsodium:=
+ dnstap? ( dev-libs/fstrm )
+ doh? ( net-libs/nghttp2:= )
+ doh3? ( net-libs/quiche:= )
+ lmdb? ( dev-db/lmdb:= )
+ quic? ( net-libs/quiche )
+ regex? ( dev-libs/re2:= )
+ snmp? ( net-analyzer/net-snmp:= )
+ ssl? ( dev-libs/openssl:= )
+ systemd? ( sys-apps/systemd:0= )
+ xdp? ( net-libs/xdp-tools )
+ ${LUA_DEPS}
+"
+
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/1.9.6-boost-1.86.0.patch"
+ "${FILESDIR}/1.9.6-json11-gcc15.patch"
+)
+
+src_prepare() {
+ default
+
+ # clean up duplicate file
+ rm -f README.md
+}
+
+src_configure() {
+ # bug #822855
+ append-lfs-flags
+
+ # some things can only be enabled/disabled by defines
+ ! use dnstap && append-cppflags -DDISABLE_PROTOBUF
+ ! use web && append-cppflags -DDISABLE_BUILTIN_HTML
+
+ sed 's/hardcode_libdir_flag_spec_CXX='\''$wl-rpath $wl$libdir'\''/hardcode_libdir_flag_spec_CXX='\''$wl-rpath $wl\/$libdir'\''/g' \
+ -i "${S}/configure"
+
+ local myeconfargs=(
+ --sysconfdir=/etc/dnsdist
+ --with-lua="${ELUA}"
+ --without-h2o
+ --enable-tls-providers
+ --without-gnutls
+ $(use_with bpf ebpf)
+ $(use_with cdb cdb)
+ $(use_enable doh dns-over-https)
+ $(use_enable doh3 dns-over-http3)
+ $(use_enable dnscrypt)
+ $(use_enable dnstap)
+ $(use_enable ipcipher)
+ $(use_with lmdb )
+ $(use_enable quic dns-over-quic)
+ $(use_with regex re2)
+ $(use_with snmp net-snmp)
+ $(use_enable ssl dns-over-tls)
+ $(use_enable systemd) \
+ $(use_enable test unit-tests)
+ $(use_with xdp xsk)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ insinto /etc/dnsdist
+ doins "${FILESDIR}"/dnsdist.conf.example
+
+ newconfd "${FILESDIR}"/dnsdist.confd ${PN}
+ newinitd "${FILESDIR}"/dnsdist.initd ${PN}
+}
+
+pkg_postinst() {
+ elog "dnsdist provides multiple instances support. You can create more instances"
+ elog "by symlinking the dnsdist init script to another name."
+ elog
+ elog "The name must be in the format dnsdist.<suffix> and dnsdist will use the"
+ elog "/etc/dnsdist/dnsdist-<suffix>.conf configuration file instead of the default."
+}
diff --git a/net-dns/dnsdist/files/1.9.6-boost-1.86.0.patch b/net-dns/dnsdist/files/1.9.6-boost-1.86.0.patch
new file mode 100644
index 000000000000..bf9d23984bba
--- /dev/null
+++ b/net-dns/dnsdist/files/1.9.6-boost-1.86.0.patch
@@ -0,0 +1,35 @@
+
+Fix compilation with boost-1.86.
+Patch path prefix adapted for dnsdist.
+
+From: https://github.com/PowerDNS/pdns/commit/eed56000b1d68ac083b8e8bea4ff0ea30a1579c4
+
+From eed56000b1d68ac083b8e8bea4ff0ea30a1579c4 Mon Sep 17 00:00:00 2001
+From: Michael Cho <michael@michaelcho.dev>
+Date: Thu, 15 Aug 2024 22:49:17 -0400
+Subject: [PATCH] Fix build with boost 1.86.0
+
+Boost 1.86.0 changes seem to no longer indirectly include header which
+causes build to fail with:
+```
+uuid-utils.cc:38:58:
+error: 'random' is not a class, namespace, or enumeration
+```
+
+boost/random/mersenne_twister.hpp has been available since Boost 1.21.2
+---
+ pdns/uuid-utils.cc | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/pdns/uuid-utils.cc b/pdns/uuid-utils.cc
+index c59e0a0d0daa..301daff0bb1e 100644
+--- a/uuid-utils.cc
++++ b/uuid-utils.cc
+@@ -30,6 +30,7 @@
+ #endif /* BOOST_PENDING_INTEGER_LOG2_HPP */
+ #endif /* BOOST_VERSION */
+
++#include <boost/random/mersenne_twister.hpp>
+ #include <boost/uuid/uuid_generators.hpp>
+
+ // The default of:
diff --git a/net-dns/dnsdist/files/1.9.6-json11-gcc15.patch b/net-dns/dnsdist/files/1.9.6-json11-gcc15.patch
new file mode 100644
index 000000000000..9aac470625f6
--- /dev/null
+++ b/net-dns/dnsdist/files/1.9.6-json11-gcc15.patch
@@ -0,0 +1,19 @@
+
+Fix compilation with gcc-15
+
+Bug: https://bugs.gentoo.org/937628
+Bug: https://github.com/PowerDNS/pdns/issues/14549
+
+Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com>
+
+diff -rup dnsdist-1.9.6/ext/json11/json11.cpp dnsdist-1.9.6-gcc15/ext/json11/json11.cpp
+--- dnsdist-1.9.6/ext/json11/json11.cpp 2024-07-15 11:46:15.000000000 +0200
++++ dnsdist-1.9.6-gcc15/ext/json11/json11.cpp 2024-08-09 18:03:51.090140981 +0200
+@@ -22,6 +22,7 @@
+ #include "json11.hpp"
+ #include <cassert>
+ #include <cmath>
++#include <cstdint>
+ #include <cstdlib>
+ #include <cstdio>
+ #include <limits>
diff --git a/net-dns/dnsdist/metadata.xml b/net-dns/dnsdist/metadata.xml
index c0cba7b1344e..000b9a78abb3 100644
--- a/net-dns/dnsdist/metadata.xml
+++ b/net-dns/dnsdist/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>nativemad@gentoo.org</email>
- <name>Andreas Schuerch</name>
- </maintainer>
<maintainer type="person" proxied="yes">
<email>holger@applied-asynchrony.com</email>
<name>Holger Hoffstätte</name>
@@ -13,6 +9,10 @@
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
+ <maintainer type="person">
+ <email>nativemad@gentoo.org</email>
+ <name>Andreas Schuerch</name>
+ </maintainer>
<longdescription lang="en">
dnsdist is a highly DNS-, DoS- and abuse-aware loadbalancer. Its goal in life is to route traffic to the best server, delivering top performance to legitimate users while shunting or blocking abusive traffic.
</longdescription>