]> git.ipfire.org Git - thirdparty/pdns.git/log
thirdparty/pdns.git
2 days agoMerge pull request #16032 from rgacogne/ddist20-backport-15881 rel/dnsdist-2.0.x
Remi Gacogne [Mon, 25 Aug 2025 11:07:38 +0000 (13:07 +0200)] 
Merge pull request #16032 from rgacogne/ddist20-backport-15881

dnsdist-2.0.x: Backport 15881 - Support mnemonics for the Opcode selector

2 days agoMerge pull request #16031 from rgacogne/ddist20-backport-15817
Remi Gacogne [Mon, 25 Aug 2025 09:44:39 +0000 (11:44 +0200)] 
Merge pull request #16031 from rgacogne/ddist20-backport-15817

dnsdist-2.0.x: Backport 15817: switch Docker images to Debian Trixie

2 days agoMerge pull request #16030 from rgacogne/ddist20-backport-15915
Remi Gacogne [Mon, 25 Aug 2025 09:44:29 +0000 (11:44 +0200)] 
Merge pull request #16030 from rgacogne/ddist20-backport-15915

dnsdist-2.0.x: Backport 15915: Properly set up env vars with meson

2 days agodns: Get rid of the ugly special case for OpCode 3 16032/head
Remi Gacogne [Thu, 24 Jul 2025 09:11:24 +0000 (11:11 +0200)] 
dns: Get rid of the ugly special case for OpCode 3

As suggested by Miod.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit b6898b5f3787e2528225fd5e22927f2e5ba3cc2b)

2 days agodnsdist: Support mnemonics for the Opcode selector
Remi Gacogne [Mon, 21 Jul 2025 09:56:47 +0000 (11:56 +0200)] 
dnsdist: Support mnemonics for the Opcode selector

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 1a37caf4bcef0ad8362ce5b2bf8f01e90c81986d)

2 days agoMerge pull request #16029 from rgacogne/ddist20-backport-15959
Remi Gacogne [Mon, 25 Aug 2025 09:18:59 +0000 (11:18 +0200)] 
Merge pull request #16029 from rgacogne/ddist20-backport-15959

dnsdist-2.0.x: Backport 15959: dnsdist --version: report yaml support

2 days agoswitch Docker images to Debian Trixie 16031/head
Peter van Dijk [Thu, 10 Jul 2025 12:05:41 +0000 (14:05 +0200)] 
switch Docker images to Debian Trixie

(cherry picked from commit 4a92c4bbda9c5a0d0b9b30865dff71d70226cfcf)

2 days agorec and dnsdist: properly set up env vars 16030/head
Otto Moerbeek [Thu, 24 Jul 2025 13:41:50 +0000 (15:41 +0200)] 
rec and dnsdist: properly set up env vars

env.append() appends to an existing value

Should fix the error in #15896, but the reported location of cargo
still might be wrong.

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
(cherry picked from commit 6d3c2334aa84258eaee409eb7e545eb67121a4a5)

2 days agodnsdist --version: report yaml support 16029/head
Peter van Dijk [Mon, 4 Aug 2025 11:56:05 +0000 (13:56 +0200)] 
dnsdist --version: report yaml support

(cherry picked from commit 8ac38640efa2c90f1db59fddcd32cdb6c29d41db)

2 days agoMerge pull request #16020 from rgacogne/ddist20-backport-15931
Remi Gacogne [Mon, 25 Aug 2025 07:35:29 +0000 (09:35 +0200)] 
Merge pull request #16020 from rgacogne/ddist20-backport-15931

dnsdist-2.0.x: Backport 15931- Speed up response content matching

5 days agoMerge pull request #16019 from rgacogne/ddist20-backport-15935
Remi Gacogne [Fri, 22 Aug 2025 13:46:57 +0000 (15:46 +0200)] 
Merge pull request #16019 from rgacogne/ddist20-backport-15935

dnsdist-2.0.x: Backport 15935 - Clean up incoming TCP connections counters once per minute

5 days agoMerge pull request #16018 from rgacogne/ddist20-backport-15904
Remi Gacogne [Fri, 22 Aug 2025 13:26:39 +0000 (15:26 +0200)] 
Merge pull request #16018 from rgacogne/ddist20-backport-15904

dnsdist-2.0.x: Backport 15904 - Fix systemd template unit and restricted network families when building with meson

5 days agoMerge pull request #16017 from rgacogne/ddist20-backport-15902
Remi Gacogne [Fri, 22 Aug 2025 13:16:01 +0000 (15:16 +0200)] 
Merge pull request #16017 from rgacogne/ddist20-backport-15902

dnsdist-2.0.x: Backport 15902 - Fix QType rate dynamic block with YAML

5 days agoRefactor `DNSName::matches` around `pdns_ilexicographical_compare_three_way` 16020/head
Remi Gacogne [Thu, 21 Aug 2025 14:40:29 +0000 (16:40 +0200)] 
Refactor `DNSName::matches` around `pdns_ilexicographical_compare_three_way`

And rename it to hopefully prevent any confusion regarding when it can be used.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit f78521d7f73d1f176602e33d03fae6e40fa86602)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 days agodnsdist: Yet another clang-tidy warning
Remi Gacogne [Tue, 29 Jul 2025 07:45:33 +0000 (09:45 +0200)] 
dnsdist: Yet another clang-tidy warning

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit aa5ca15a59efa4602efc5d78e17514dfe4edab16)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 days agodnsname: Fix clang-tidy warnings
Remi Gacogne [Mon, 28 Jul 2025 15:12:14 +0000 (17:12 +0200)] 
dnsname: Fix clang-tidy warnings

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit afbae807a3dbb00b9ac8e20daa8b5bef353a1764)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 days agodnsname: Add a comment about what `DNSName::matches` accepts
Remi Gacogne [Mon, 28 Jul 2025 09:29:40 +0000 (11:29 +0200)] 
dnsname: Add a comment about what `DNSName::matches` accepts

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 7394dd09afce13c1cd287c2b63f8d129e8be22af)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 days agodnsdist: Fix clang-tidy warnings
Remi Gacogne [Fri, 25 Jul 2025 14:55:18 +0000 (16:55 +0200)] 
dnsdist: Fix clang-tidy warnings

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 93e1cbbc014526ce4f39b54dd084cfa040980dbe)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 days agodnsdist: Speed up response content matching
Remi Gacogne [Fri, 25 Jul 2025 14:12:39 +0000 (16:12 +0200)] 
dnsdist: Speed up response content matching

This commit introduces a new method to compare a `DNSName`
against a view of raw, wire-format bytes, skipping the
allocation and copy that is usually required to get a
second `DNSName` object to compare against.
This signifitcantly reduces the amount of time matching
a DNS response received from a backend against the content
we expect to find.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 67eb73850f3141c44963d95ef815fe6a0586d2a8)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 days agodnsdist-2.0.x: Backport pdns_ilexicographical_compare_three_way
Remi Gacogne [Fri, 22 Aug 2025 13:11:40 +0000 (15:11 +0200)] 
dnsdist-2.0.x: Backport pdns_ilexicographical_compare_three_way

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 days agodnsdist: Fix error in comment spotted by Otto (seconds -> minutes) 16019/head
Remi Gacogne [Thu, 21 Aug 2025 13:49:43 +0000 (15:49 +0200)] 
dnsdist: Fix error in comment spotted by Otto (seconds -> minutes)

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit e5a0cc4475cb668824d7d5a45086665f038f3b16)

5 days agodnsdist: Fix clang-tidy warnings
Remi Gacogne [Tue, 29 Jul 2025 07:55:38 +0000 (09:55 +0200)] 
dnsdist: Fix clang-tidy warnings

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit d80362d7d2f1d50d0cd449b62ef7fdea4354eed3)

5 days agodnsdist: Clean up incoming TCP connections counters once per minute
Remi Gacogne [Mon, 28 Jul 2025 14:50:12 +0000 (16:50 +0200)] 
dnsdist: Clean up incoming TCP connections counters once per minute

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit df406c37e23974d4fa1575dcf54ef53ef8276fa6)

5 days agodnsdist: Fix restricted network families when building with meson 16018/head
Remi Gacogne [Thu, 24 Jul 2025 09:42:03 +0000 (11:42 +0200)] 
dnsdist: Fix restricted network families when building with meson

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 84da8caf2bb5e0c74f706b7248d9abf379485180)

5 days agodnsdist: Fix systemd template unit when building with meson
Remi Gacogne [Thu, 24 Jul 2025 09:41:38 +0000 (11:41 +0200)] 
dnsdist: Fix systemd template unit when building with meson

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit b8b86d5644f46b2f07cd7f633cbfd98395ec8ec6)

6 days agoMerge pull request #16003 from rgacogne/ddist20-quiche-0.24.5
Remi Gacogne [Thu, 21 Aug 2025 11:20:21 +0000 (13:20 +0200)] 
Merge pull request #16003 from rgacogne/ddist20-quiche-0.24.5

dnsdist-2.0.x: Backport 16002 - Update Cloudflare's Quiche to 0.24.5 in our packages

6 days agodnsdist: Update Cloudflare's Quiche to 0.24.5 in our packages 16003/head
Remi Gacogne [Thu, 21 Aug 2025 08:12:11 +0000 (10:12 +0200)] 
dnsdist: Update Cloudflare's Quiche to 0.24.5 in our packages

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit e9af7f9c2f9e2b8969fc6be7bc35d0de2decdb77)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agoMerge pull request #15925 from rgacogne/ddist20-backport-15916
Remi Gacogne [Mon, 28 Jul 2025 07:34:23 +0000 (09:34 +0200)] 
Merge pull request #15925 from rgacogne/ddist20-backport-15916

dnsdist-2.0.x: backport 15916 - Update rings' atomic counter without holding the lock

4 weeks agoMerge pull request #15926 from rgacogne/ddist20-backport-15917
Remi Gacogne [Mon, 28 Jul 2025 07:33:34 +0000 (09:33 +0200)] 
Merge pull request #15926 from rgacogne/ddist20-backport-15917

dnsdist-2.0.x: Backport 15917 - Return early when a rule chain is empty

4 weeks agoMerge pull request #15927 from rgacogne/ddist20-backport-15918
Remi Gacogne [Mon, 28 Jul 2025 07:33:25 +0000 (09:33 +0200)] 
Merge pull request #15927 from rgacogne/ddist20-backport-15918

dnsdist-2.0.x: Backport 15918 - Update a cache's atomic counter without holding the lock

4 weeks agoMerge pull request #15920 from rgacogne/ddist20-upgrade-quiche
Remi Gacogne [Mon, 28 Jul 2025 07:32:22 +0000 (09:32 +0200)] 
Merge pull request #15920 from rgacogne/ddist20-upgrade-quiche

dnsdist-2.0.x: Upgrade Cloudflare's Quiche to 0.24.4

4 weeks agodnsdist: Update rings' atomic counter without holding the lock 15925/head
Remi Gacogne [Tue, 22 Jul 2025 09:18:38 +0000 (11:18 +0200)] 
dnsdist: Update rings' atomic counter without holding the lock

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit f30e5ca0993defc6bacd5584d5ce19d32900d71d)

4 weeks agodnsdist: Update a cache's atomic counter without holding the lock 15927/head
Remi Gacogne [Thu, 24 Jul 2025 14:02:39 +0000 (16:02 +0200)] 
dnsdist: Update a cache's atomic counter without holding the lock

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit e579d8f2977f17efcf5f7f158500a9df53c2370d)

4 weeks agodnsdist: Return early when a rule chain is empty 15926/head
Remi Gacogne [Tue, 22 Jul 2025 09:19:19 +0000 (11:19 +0200)] 
dnsdist: Return early when a rule chain is empty

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 1ae16e707a6cb1c80d611b72e9e4599707332645)

4 weeks agodnsdist: Apply Miod's suggestions (thanks!) 16017/head
Remi Gacogne [Thu, 24 Jul 2025 09:17:04 +0000 (11:17 +0200)] 
dnsdist: Apply Miod's suggestions (thanks!)

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 3b6b96bdd38d6ef380140aa95702d9ab7e706b67)

4 weeks agodnsdist: Fix QType rate dynamic block with YAML
Remi Gacogne [Thu, 24 Jul 2025 08:57:28 +0000 (10:57 +0200)] 
dnsdist: Fix QType rate dynamic block with YAML

The YAML configuration for the the "QType rate" dynamic block was
totally broken, trying to configure a rcode rate rule instead of a
qtype rate one.
Thanks to HellSpawn for reporting this the issue!

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit eb01c11a5418da08d5e11acdd519e2816e937835)

4 weeks agodnsdist: Upgrade Cloudflare's Quiche to 0.24.4 15920/head
Remi Gacogne [Thu, 24 Jul 2025 14:49:52 +0000 (16:49 +0200)] 
dnsdist: Upgrade Cloudflare's Quiche to 0.24.4

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 weeks agoMerge pull request #15879 from rgacogne/ddist20-backport-15871 dnsdist-2.0.0
Remi Gacogne [Mon, 21 Jul 2025 09:54:44 +0000 (11:54 +0200)] 
Merge pull request #15879 from rgacogne/ddist20-backport-15871

dnsdist-2.0.x: Backport 15871 - Use an unordered map for pools

5 weeks agoMerge pull request #15880 from rgacogne/ddist20-backport-15872
Remi Gacogne [Mon, 21 Jul 2025 09:53:04 +0000 (11:53 +0200)] 
Merge pull request #15880 from rgacogne/ddist20-backport-15872

dnsdist-2.0.x: Backport 15872 - Only parse EDNS Z once

5 weeks agoMerge pull request #15878 from rgacogne/ddist20-backport-15870
Remi Gacogne [Mon, 21 Jul 2025 09:52:49 +0000 (11:52 +0200)] 
Merge pull request #15878 from rgacogne/ddist20-backport-15870

dnsdist-2.0.x: Avoid constructing a DNSResponse object when not really needed

5 weeks agoMerge pull request #15877 from rgacogne/ddist20-backport-15869
Remi Gacogne [Mon, 21 Jul 2025 09:47:32 +0000 (11:47 +0200)] 
Merge pull request #15877 from rgacogne/ddist20-backport-15869

dnsdist-2.0.x: Backport 15869 - Small speedup for getEDNSUDPPayloadSizeAndZ()

5 weeks agoMerge pull request #15876 from rgacogne/ddist20-backport-15868
Remi Gacogne [Mon, 21 Jul 2025 09:47:08 +0000 (11:47 +0200)] 
Merge pull request #15876 from rgacogne/ddist20-backport-15868

dnsdist-2.0.x: Backport 15868 - Improve the scalability of the MAC address cache

5 weeks agoMerge pull request #15875 from rgacogne/ddist20-backport-15861
Remi Gacogne [Mon, 21 Jul 2025 09:43:57 +0000 (11:43 +0200)] 
Merge pull request #15875 from rgacogne/ddist20-backport-15861

dnsdist-2.0.x: Backport 15861 - Fix out-of-tree builds with autotools

5 weeks agodnsdist: Only parse EDNS Z once 15880/head
Remi Gacogne [Thu, 17 Jul 2025 15:11:11 +0000 (17:11 +0200)] 
dnsdist: Only parse EDNS Z once

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit d071f0027e663206fedaa433496c4e3bd49718ee)

5 weeks agodnsdist: Use an unordered map for pools 15879/head
Remi Gacogne [Fri, 18 Jul 2025 10:06:29 +0000 (12:06 +0200)] 
dnsdist: Use an unordered map for pools

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 516c3156553f874e31926671c2afed0b53b3ef19)

5 weeks agodnsdist: Avoid constructing a DNSResponse object when not really needed 15878/head
Remi Gacogne [Tue, 15 Jul 2025 14:27:31 +0000 (16:27 +0200)] 
dnsdist: Avoid constructing a DNSResponse object when not really needed

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 4843b77823b100d652d9116165da4b4913a48ad3)

5 weeks agodnsparser: Add a comment explaining that the OPT RR has to be in additional 15877/head
Remi Gacogne [Fri, 18 Jul 2025 15:05:37 +0000 (17:05 +0200)] 
dnsparser: Add a comment explaining that the OPT RR has to be in additional

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 336a601b2bd2d6475eca39a6ad1489a02354cdca)

5 weeks agodnsdist: Small speedup for getEDNSUDPPayloadSizeAndZ()
Remi Gacogne [Fri, 18 Jul 2025 10:07:12 +0000 (12:07 +0200)] 
dnsdist: Small speedup for getEDNSUDPPayloadSizeAndZ()

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 4e7c4d06db5f6421bc33ccf7d7e72b36fe4e68db)

5 weeks agodnsdist: Improve the scalability of the MAC address cache 15876/head
Remi Gacogne [Fri, 18 Jul 2025 10:06:48 +0000 (12:06 +0200)] 
dnsdist: Improve the scalability of the MAC address cache

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 574075d9a9204d44f41982fd78bb5b90a2bcfb89)

5 weeks agodnsdist: Fix out-of-tree builds with autotools 15875/head
Remi Gacogne [Thu, 17 Jul 2025 10:16:31 +0000 (12:16 +0200)] 
dnsdist: Fix out-of-tree builds with autotools

Stolen from Habbie, many thanks!

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 412e0da107a9c6e8df4f6ad7958f6705d5e975fc)

5 weeks agoMerge pull request #15842 from rgacogne/ddist20-backport-15823 dnsdist-2.0.0-rc2
Remi Gacogne [Thu, 17 Jul 2025 07:40:34 +0000 (09:40 +0200)] 
Merge pull request #15842 from rgacogne/ddist20-backport-15823

dnsdist-2.0.x: Backport 15823 - Bring back listening on multiple web server addresses

5 weeks agoMerge pull request #15841 from rgacogne/ddist20-backport-15822
Remi Gacogne [Thu, 17 Jul 2025 07:40:21 +0000 (09:40 +0200)] 
Merge pull request #15841 from rgacogne/ddist20-backport-15822

dnsdist-2.0.x: Backport 15822 - Allow registering NMG objects from YAML

6 weeks agodnsdist: Document that negative entries in netmask lists are supported 15841/head
Remi Gacogne [Wed, 16 Jul 2025 15:55:58 +0000 (17:55 +0200)] 
dnsdist: Document that negative entries in netmask lists are supported

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit aa18df7da0df93890100f2c82e79ed5eeee78e6b)

6 weeks agodnsdist: Apply Otto's suggestion
Remi Gacogne [Wed, 16 Jul 2025 15:55:44 +0000 (17:55 +0200)] 
dnsdist: Apply Otto's suggestion

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 08d790466b2e465700f193b503ff0a76a3a0680e)

6 weeks agodnsdist: Allow registering NMG objects from YAML
Remi Gacogne [Thu, 10 Jul 2025 15:11:08 +0000 (17:11 +0200)] 
dnsdist: Allow registering NMG objects from YAML

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit f158a09f2d82c305a8297cd36713decb2cadb8f0)

6 weeks agoMerge pull request #15837 from rgacogne/ddist20-backport-15829
Remi Gacogne [Wed, 16 Jul 2025 15:45:31 +0000 (17:45 +0200)] 
Merge pull request #15837 from rgacogne/ddist20-backport-15829

dnsdist-2.0.x: Backport 15829 - dnsdist-rust-lib: honor RUSTC_TARGET_ARCH

6 weeks agoMerge pull request #15838 from rgacogne/ddist20-backport-15819
Remi Gacogne [Wed, 16 Jul 2025 15:45:21 +0000 (17:45 +0200)] 
Merge pull request #15838 from rgacogne/ddist20-backport-15819

dnsdist-2.0.x: Backport 15819 - Handle named rcodes in the YAML configuration

6 weeks agoMerge pull request #15839 from rgacogne/ddist20-backport-15815
Remi Gacogne [Wed, 16 Jul 2025 15:45:10 +0000 (17:45 +0200)] 
Merge pull request #15839 from rgacogne/ddist20-backport-15815

dnsdist-2.0.x: Backport 15815 - Properly process the YAML source parameter for backends

6 weeks agoMerge pull request #15840 from rgacogne/ddist20-backport-15813
Remi Gacogne [Wed, 16 Jul 2025 15:45:01 +0000 (17:45 +0200)] 
Merge pull request #15840 from rgacogne/ddist20-backport-15813

dnsdist-2.0.x: Backport 15813 - Properly link with `libdl` when building with `autotools`

6 weeks agoMerge pull request #15843 from rgacogne/ddist20-backport-15833
Remi Gacogne [Wed, 16 Jul 2025 15:44:53 +0000 (17:44 +0200)] 
Merge pull request #15843 from rgacogne/ddist20-backport-15833

dnsdist-2.0.x: Backport 15833 - Fix narrowing conversion on 32-bit systems by using uint64_t instead of size_t

6 weeks agoFix narrowing conversion on 32-bit systems by using uint64_t instead of size_t 15843/head
Darwin4053 [Mon, 14 Jul 2025 12:06:42 +0000 (17:36 +0530)] 
Fix narrowing conversion on 32-bit systems by using uint64_t instead of size_t

(cherry picked from commit 83ac5035c5676ee9bd75b79ecfb7778f0e9d599a)

6 weeks agodnsdist: Fix a clang-tidy warning 15842/head
Remi Gacogne [Fri, 11 Jul 2025 10:05:28 +0000 (12:05 +0200)] 
dnsdist: Fix a clang-tidy warning

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit a5b8fe9689a4fa5ca4974f2fb17336d7327b54f2)

6 weeks agodnsdist: Bring back listening on multiple web server addresses
Remi Gacogne [Fri, 11 Jul 2025 08:47:26 +0000 (10:47 +0200)] 
dnsdist: Bring back listening on multiple web server addresses

This was broken during the refactoring of the configuration between
1.9.x and 2.0.x.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 11f9083073119595c655988a3981ab5f1ccc2e40)

6 weeks agodnsdist: Properly link with `libdl` when building with `autotools` 15840/head
Remi Gacogne [Thu, 10 Jul 2025 07:55:13 +0000 (09:55 +0200)] 
dnsdist: Properly link with `libdl` when building with `autotools`

Depending on the system we might actually need to link with `libdl`
when our Rust library is used, and the mechanism to do that was not
properly set up when building with `autotools` (we were adding `LIBDL`
to the the libraries we need but the variable was not properly filled).
Unfortunately the systems we are exercising in our CI do not need to
explicitly link with `libdl` so we did not notice.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 83416a76b6df3af560514caea8c45e750f1fd24b)

6 weeks agodnsdist: Properly process the YAML source parameter for backends 15839/head
Remi Gacogne [Thu, 10 Jul 2025 08:53:19 +0000 (10:53 +0200)] 
dnsdist: Properly process the YAML source parameter for backends

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 451a06cd0065fbd1364347cece5335bf921402af)

6 weeks agodns: Fix another clang-tidy warning 15838/head
Remi Gacogne [Fri, 11 Jul 2025 12:13:55 +0000 (14:13 +0200)] 
dns: Fix another clang-tidy warning

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 1ba566f50364a09d7ffa7391f4928fa8019157d1)

6 weeks agodns: Add short descriptions for extended rcodes as well
Remi Gacogne [Fri, 11 Jul 2025 09:27:38 +0000 (11:27 +0200)] 
dns: Add short descriptions for extended rcodes as well

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 4a1a3e3ed7ea4b5b9d42657c74b90b821dc95421)

6 weeks agodns: Fix a clang-tidy warning
Remi Gacogne [Fri, 11 Jul 2025 09:26:28 +0000 (11:26 +0200)] 
dns: Fix a clang-tidy warning

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 24570745905593be704ceaa990ecaa442d842d95)

6 weeks agodnsdist: The ability to use RCode names in YAML will be backported to 2.0
Remi Gacogne [Fri, 11 Jul 2025 08:05:34 +0000 (10:05 +0200)] 
dnsdist: The ability to use RCode names in YAML will be backported to 2.0

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit f593ec1327e74c6916502c4d2ad9039e1342d7ee)

6 weeks agodns: Add unit tests for the RCode/ERCode/Opcode helpers
Remi Gacogne [Fri, 11 Jul 2025 08:05:04 +0000 (10:05 +0200)] 
dns: Add unit tests for the RCode/ERCode/Opcode helpers

(cherry picked from commit d147b9dbd5df717c4dd299d05037b6e7a78b1061)

6 weeks agodns: Add short description for the Not Zone rcode
Remi Gacogne [Fri, 11 Jul 2025 08:04:20 +0000 (10:04 +0200)] 
dns: Add short description for the Not Zone rcode

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 3e114916d5efd1cd35f8f1e25f7bba02f647a1d7)

6 weeks agodns: Rewrite `RCode::from_short` with `std::find` and `std::distance`
Remi Gacogne [Fri, 11 Jul 2025 08:03:18 +0000 (10:03 +0200)] 
dns: Rewrite `RCode::from_short` with `std::find` and `std::distance`

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 978fca63b078da822c15d1a9bdee9bd0bb4a7349)

6 weeks agodnsdist: Fix a typo in the upgrade guide
Remi Gacogne [Thu, 10 Jul 2025 14:03:17 +0000 (16:03 +0200)] 
dnsdist: Fix a typo in the upgrade guide

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit e5db082886b36f30d9780439249c656ad0738605)

6 weeks agodnsdist: Document changed YAML parameters
Remi Gacogne [Thu, 10 Jul 2025 13:47:58 +0000 (15:47 +0200)] 
dnsdist: Document changed YAML parameters

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 852772af5e54aa2c5aeb17a4565c57a5251aba40)

6 weeks agodnsdist: Handle named rcodes in all YAML configuration items
Remi Gacogne [Thu, 10 Jul 2025 13:31:54 +0000 (15:31 +0200)] 
dnsdist: Handle named rcodes in all YAML configuration items

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit d442fb9443d7b89afd95f3f56e85d62931217841)

6 weeks agodnsdist: Handle named rcodes in the dynamic block YAML configuration
Remi Gacogne [Thu, 10 Jul 2025 10:05:02 +0000 (12:05 +0200)] 
dnsdist: Handle named rcodes in the dynamic block YAML configuration

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit f84cc5ad3e19c73cc45b393d0934d9c4579bde10)

6 weeks agodnsdist: Add a Dynamic block rcode rate test using YAML
Remi Gacogne [Thu, 10 Jul 2025 08:35:29 +0000 (10:35 +0200)] 
dnsdist: Add a Dynamic block rcode rate test using YAML

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 24691dd78daa343d17280dc8b44b54770430affc)

6 weeks agodnsdist-rust-lib: honor RUSTC_TARGET_ARCH 15837/head
Chris Hofstaedtler [Sat, 12 Jul 2025 13:28:40 +0000 (15:28 +0200)] 
dnsdist-rust-lib: honor RUSTC_TARGET_ARCH

Like for pdns-recursor and also like in the meson build.

Necessary as Debian's cargo always puts the output files into target/<arch>/...

(cherry picked from commit d6515621f452557e45e4498d508c6b6c60e7660a)

7 weeks agoMerge pull request #15805 from rgacogne/ddist20-backport-15639
Remi Gacogne [Tue, 8 Jul 2025 10:17:00 +0000 (12:17 +0200)] 
Merge pull request #15805 from rgacogne/ddist20-backport-15639

dnsdist-2.0.x: Backport 15639 - Add el-10 target

7 weeks agobuilder: avoid duplicate installation of meson/quiche/rust 15805/head
Peter van Dijk [Fri, 6 Jun 2025 13:23:23 +0000 (15:23 +0200)] 
builder: avoid duplicate installation of meson/quiche/rust

(cherry picked from commit adc4a45244c64cfcd52d03b8a392224c3851e1ff)

7 weeks agobuilder: add el-10 target, based on rockylinux:10 for now
Remi Gacogne [Tue, 8 Jul 2025 09:38:56 +0000 (11:38 +0200)] 
builder: add el-10 target, based on rockylinux:10 for now

cherry-picked from 32a5ef17f4aa04822b79aafd2c783c19433955a5

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
7 weeks agoMerge pull request #15787 from rgacogne/ddist20-remove-more-workflows dnsdist-2.0.0-rc1
Remi Gacogne [Mon, 7 Jul 2025 13:04:22 +0000 (15:04 +0200)] 
Merge pull request #15787 from rgacogne/ddist20-remove-more-workflows

dnsdist-2.0.x: Remove more useless workflows

7 weeks agoMerge pull request #15784 from rgacogne/ddist20-backport-15747
Remi Gacogne [Mon, 7 Jul 2025 13:04:06 +0000 (15:04 +0200)] 
Merge pull request #15784 from rgacogne/ddist20-backport-15747

dnsdist-2.0.x: Backport 15747 - Add a Lua binding to get objects declared in YAML

7 weeks agodnsdist-2.0.x: Remove more useless workflows 15787/head
Remi Gacogne [Thu, 3 Jul 2025 15:26:32 +0000 (17:26 +0200)] 
dnsdist-2.0.x: Remove more useless workflows

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
7 weeks agodnsdist: Add an explicit return type to getObjectFromYAMLConfiguration 15784/head
Remi Gacogne [Tue, 1 Jul 2025 08:01:06 +0000 (10:01 +0200)] 
dnsdist: Add an explicit return type to getObjectFromYAMLConfiguration

As suggested by Otto.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 9263b481855ffc6e3324f2d342ce66b57e4ac0fa)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
7 weeks agodnsdist: Add a regression test for `getObjectFromYAMLConfiguration`
Remi Gacogne [Mon, 30 Jun 2025 11:37:20 +0000 (13:37 +0200)] 
dnsdist: Add a regression test for `getObjectFromYAMLConfiguration`

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 80f292fc5d96ab59afea63aaf8323267081b9114)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
7 weeks agodnsdist: Add a Lua binding to get objects declared in YAML
Remi Gacogne [Mon, 30 Jun 2025 10:23:56 +0000 (12:23 +0200)] 
dnsdist: Add a Lua binding to get objects declared in YAML

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit d98d50b1939016d03a522cb6a79834088949e913)
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
7 weeks agoMerge pull request #15780 from rgacogne/ddist20-backport-15751
Remi Gacogne [Thu, 3 Jul 2025 12:05:05 +0000 (14:05 +0200)] 
Merge pull request #15780 from rgacogne/ddist20-backport-15751

dnsdist-2.0.x: Backport to 15751 - Error on unsupported backend protocols from YAML

7 weeks agoMerge pull request #15779 from rgacogne/ddist20-backport-15750
Remi Gacogne [Thu, 3 Jul 2025 12:04:53 +0000 (14:04 +0200)] 
Merge pull request #15779 from rgacogne/ddist20-backport-15750

dnsdist-2.0.x: Backport 15750 - Fix logging and XSK YAML settings being ignored

7 weeks agoMerge pull request #15778 from rgacogne/ddist20-backport-15739
Remi Gacogne [Thu, 3 Jul 2025 12:04:39 +0000 (14:04 +0200)] 
Merge pull request #15778 from rgacogne/ddist20-backport-15739

dnsdist-2.0.x: Backport 15739 - lmdb-safe: Fix a small race in `getMDBEnv`

7 weeks agoMerge pull request #15777 from rgacogne/ddist20-backport-15738
Remi Gacogne [Thu, 3 Jul 2025 12:04:27 +0000 (14:04 +0200)] 
Merge pull request #15777 from rgacogne/ddist20-backport-15738

dnsdist-2.0.x: Backport 15738 - Prevent users from opening the same LMDB twice

7 weeks agoMerge pull request #15776 from rgacogne/ddist20-backport-15735
Remi Gacogne [Thu, 3 Jul 2025 12:04:13 +0000 (14:04 +0200)] 
Merge pull request #15776 from rgacogne/ddist20-backport-15735

dnsdist-2.0.x: Backport 15735 - lmdb-safe: Improve the scalability of transaction maps

7 weeks agoMerge pull request #15775 from rgacogne/ddist20-backport-15718
Remi Gacogne [Thu, 3 Jul 2025 12:04:00 +0000 (14:04 +0200)] 
Merge pull request #15775 from rgacogne/ddist20-backport-15718

dnsdist-2.0.x: Backport 15718 - Return nil for non-existing Lua objects

7 weeks agoMerge pull request #15774 from rgacogne/ddist20-backport-15707
Remi Gacogne [Thu, 3 Jul 2025 12:03:48 +0000 (14:03 +0200)] 
Merge pull request #15774 from rgacogne/ddist20-backport-15707

dnsdist-2.0.x: Backport 15707 - Prevent Lua bindings for backend from crashing on empty backend

7 weeks agoMerge pull request #15781 from rgacogne/ddist20-backport-15754
Remi Gacogne [Thu, 3 Jul 2025 12:02:37 +0000 (14:02 +0200)] 
Merge pull request #15781 from rgacogne/ddist20-backport-15754

dnsdist-2.0.x: Backport 15754 - Error if backend certificate validation is enabled without a subject name

8 weeks agodnsdist: Lowercase the TLS provider name for YAML-originated backends 15781/head
Remi Gacogne [Mon, 30 Jun 2025 13:58:07 +0000 (15:58 +0200)] 
dnsdist: Lowercase the TLS provider name for YAML-originated backends

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 7106cda315dff6969062899ecb6360768e9f3fee)

8 weeks agodnsdist: Error if backend certificate validation is enabled without a subject name
Remi Gacogne [Mon, 30 Jun 2025 13:57:10 +0000 (15:57 +0200)] 
dnsdist: Error if backend certificate validation is enabled without a subject name

We can only validate if a proper subject name or subject address is passed,
and we do not want to silently disable validation, so let's refuse to start.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 8a9142058f82e0fd70b428ddc50848f00a59d2c4)

8 weeks agodnsdist: Error on unsupported backend protocols from YAML 15780/head
Remi Gacogne [Mon, 30 Jun 2025 13:15:46 +0000 (15:15 +0200)] 
dnsdist: Error on unsupported backend protocols from YAML

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit def4733d1eb32c80ccc79f7f6ed39ab7be49f33f)

8 weeks agodnsdist: Fix logging and XSK YAML settings being ignored 15779/head
Remi Gacogne [Mon, 30 Jun 2025 13:00:51 +0000 (15:00 +0200)] 
dnsdist: Fix logging and XSK YAML settings being ignored

It turns out that the configuration we receive from the
serde parser was not correctly translated to our own
configuration.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit f18dbfa050241f925b19c53653b3ef4061afa1e1)

8 weeks agolmdb-safe: Do not use strerror() which is not thread-safe 15778/head
Remi Gacogne [Fri, 27 Jun 2025 19:54:41 +0000 (21:54 +0200)] 
lmdb-safe: Do not use strerror() which is not thread-safe

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
(cherry picked from commit 7ad3b74ea624b47441f717ad7ced209ef01869c8)