]> git.ipfire.org Git - thirdparty/pdns.git/log
thirdparty/pdns.git
2 weeks agoZap debug line 16970/head
Otto Moerbeek [Thu, 2 Apr 2026 12:52:07 +0000 (14:52 +0200)] 
Zap debug line

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
2 weeks agoMerge pull request #17102 from rgacogne/ddist-ywh-172
Remi Gacogne [Thu, 2 Apr 2026 12:11:24 +0000 (14:11 +0200)] 
Merge pull request #17102 from rgacogne/ddist-ywh-172

dnsdist: Do not oversize the received buffer with `recvmmsg`

2 weeks agoMerge pull request #17017 from rgacogne/ddist-remotelogaction-export-tags-prefixes
Remi Gacogne [Thu, 2 Apr 2026 12:11:02 +0000 (14:11 +0200)] 
Merge pull request #17017 from rgacogne/ddist-remotelogaction-export-tags-prefixes

dnsdist: Add more options to select which tags to export over ProtoBuf

2 weeks agoMerge pull request #17105 from rgacogne/ci-disable-tsan-arm
Remi Gacogne [Thu, 2 Apr 2026 12:10:43 +0000 (14:10 +0200)] 
Merge pull request #17105 from rgacogne/ci-disable-tsan-arm

dnsdist: Do not run our tests under TSAN on ARM

2 weeks agoCorrect default value, from @pieterlexis
Otto Moerbeek [Thu, 2 Apr 2026 12:04:07 +0000 (14:04 +0200)] 
Correct default value, from @pieterlexis

Co-authored-by: Pieter Lexis <pieter@plexis.eu>
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
2 weeks agoMerge pull request #17104 from rgacogne/curl-fail
Remi Gacogne [Thu, 2 Apr 2026 11:15:52 +0000 (13:15 +0200)] 
Merge pull request #17104 from rgacogne/curl-fail

builder-support: Call `curl` with `--fail` in our scripts

2 weeks agodnsdist: Do not run our tests under TSAN on ARM 17105/head
Remi Gacogne [Thu, 2 Apr 2026 11:04:12 +0000 (13:04 +0200)] 
dnsdist: Do not run our tests under TSAN on ARM

TSAN-enabled builds crash for no indentifiable reason on ARM
so for now let's disable them.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoMerge pull request #17103 from rgacogne/ddist-quiche-0.28.0
Remi Gacogne [Thu, 2 Apr 2026 10:33:39 +0000 (12:33 +0200)] 
Merge pull request #17103 from rgacogne/ddist-quiche-0.28.0

dnsdist: Update our version of Quiche to 0.28.0

2 weeks agodnsdist: Increment our metrics in a consistent order to appease Miod! 17102/head
Remi Gacogne [Thu, 2 Apr 2026 10:18:55 +0000 (12:18 +0200)] 
dnsdist: Increment our metrics in a consistent order to appease Miod!

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agobuilder-support: Call `curl` with `--fail` in our scripts 17104/head
Remi Gacogne [Thu, 2 Apr 2026 10:14:58 +0000 (12:14 +0200)] 
builder-support: Call `curl` with `--fail` in our scripts

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoMerge pull request #17069 from rgacogne/ddist-ywh-94
Remi Gacogne [Thu, 2 Apr 2026 09:37:45 +0000 (11:37 +0200)] 
Merge pull request #17069 from rgacogne/ddist-ywh-94

dnsdist: Prevent unbounded memory allocation for DoQ/DoH3

2 weeks agodnsdist: Reformat regression tests with ruff 17070/head
Remi Gacogne [Tue, 31 Mar 2026 13:25:32 +0000 (15:25 +0200)] 
dnsdist: Reformat regression tests with ruff

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoMerge pull request #17101 from rgacogne/rec-aggressive-nsec-transition
Remi Gacogne [Thu, 2 Apr 2026 09:35:58 +0000 (11:35 +0200)] 
Merge pull request #17101 from rgacogne/rec-aggressive-nsec-transition

rec: Better handling of RFC5155 transitions in the aggressive NSEC cache

2 weeks agodnsdist: Update our version of Quiche to 0.28.0 17103/head
Remi Gacogne [Thu, 2 Apr 2026 09:34:45 +0000 (11:34 +0200)] 
dnsdist: Update our version of Quiche to 0.28.0

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Do not oversize the received buffer with `recvmmsg`
Remi Gacogne [Thu, 2 Apr 2026 08:17:41 +0000 (10:17 +0200)] 
dnsdist: Do not oversize the received buffer with `recvmmsg`

Passing `MSG_TRUNC` to `recvmmsg` causes the Linux kernel to report
the real size of the datagram even if it was longer than the passed
buffer, which is not what we want here as it would be wasteful to
resize our internal buffer to this size.

This was reported by komaku in #YWH-PGM6095-172, many thanks!.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agorec: Better aggressive NSEC cache type to string handling 17101/head
Remi Gacogne [Mon, 23 Mar 2026 08:58:52 +0000 (09:58 +0100)] 
rec: Better aggressive NSEC cache type to string handling

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agorec: Better handling of RFC5155 transitions in the aggressive NSEC cache
Remi Gacogne [Tue, 17 Feb 2026 09:03:46 +0000 (10:03 +0100)] 
rec: Better handling of RFC5155 transitions in the aggressive NSEC cache

This commit ensures that we do not cache NSEC and NSEC3 records for the
same zone at the same time, which could lead to surprises during
NSEC -> NSEC3 or NSEC3 -> NSEC transitions as described in RFC5155 sections
10.4 and 10.5.
The existing code was correctly handling the NSEC -> NSEC3 transition
by clearing any existing NSEC records when a NSEC3 record was received
for a zone, but this behaviour could have been problematic for NSEC3
to NSEC transitions.
The new behaviour is to refuse to insert records during the transition,
keeping the existing entries until they expire.

This was reported by:
- Qifan Zhang (Palo Alto Networks) qzhang@paloaltonetworks.com
- Zilin Shen (Purdue University) shen624@purdue.edu
- Imtiaz Karim (The University of Texas at Dallas) imtiaz.karim@utdallas.edu
- Elisa Bertino (Purdue University) bertino@purdue.edu
- Daiping Liu (Palo Alto Networks) dpliu@paloaltonetworks.com
- Zhou Li (University of California, Irvine) zhou.li@uci.edu

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Reformat regression tests with ruff 17069/head
Remi Gacogne [Tue, 31 Mar 2026 13:24:09 +0000 (15:24 +0200)] 
dnsdist: Reformat regression tests with ruff

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Add "too large" and "too many headers" regression tests
Remi Gacogne [Thu, 19 Feb 2026 13:46:04 +0000 (14:46 +0100)] 
dnsdist: Add "too large" and "too many headers" regression tests

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Use a smart pointer for DoH3 events
Remi Gacogne [Thu, 19 Feb 2026 11:02:43 +0000 (12:02 +0100)] 
dnsdist: Use a smart pointer for DoH3 events

I don't see any issue right away but let's make sure we don't leak.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Cap the maximum amount of HTTP headers on incoming queries
Remi Gacogne [Thu, 19 Feb 2026 11:02:15 +0000 (12:02 +0100)] 
dnsdist: Cap the maximum amount of HTTP headers on incoming queries

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Prevent unbounded memory allocation for DoQ queries
Remi Gacogne [Thu, 19 Feb 2026 11:01:58 +0000 (12:01 +0100)] 
dnsdist: Prevent unbounded memory allocation for DoQ queries

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Prevent unbounded memory allocation for DoH3 queries
Remi Gacogne [Thu, 19 Feb 2026 11:00:32 +0000 (12:00 +0100)] 
dnsdist: Prevent unbounded memory allocation for DoH3 queries

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Fix use-after-free in EDNS options handling
Remi Gacogne [Mon, 23 Feb 2026 10:03:14 +0000 (11:03 +0100)] 
dnsdist: Fix use-after-free in EDNS options handling

I think a better fix is going to be to get rid of the caching,
but the patch would be significantly bigger so let's go with this
for now.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoMerge pull request #17077 from rgacogne/ywh-137
Remi Gacogne [Wed, 1 Apr 2026 08:46:20 +0000 (10:46 +0200)] 
Merge pull request #17077 from rgacogne/ywh-137

dnsparser: Harden the DNS parser against malformed records

2 weeks agoMerge pull request #17076 from rgacogne/handle-malformed-pointers-in-dnswriter
Remi Gacogne [Wed, 1 Apr 2026 08:44:11 +0000 (10:44 +0200)] 
Merge pull request #17076 from rgacogne/handle-malformed-pointers-in-dnswriter

Handle malformed pointers in dnswriter

2 weeks agoMerge pull request #17035 from miodvallat/umentation
Miod Vallat [Wed, 1 Apr 2026 07:03:29 +0000 (09:03 +0200)] 
Merge pull request #17035 from miodvallat/umentation

auth: minor doc tweaks

2 weeks agoMerge pull request #17079 from omoerbeek/doc-plexus
Otto Moerbeek [Wed, 1 Apr 2026 05:51:10 +0000 (07:51 +0200)] 
Merge pull request #17079 from omoerbeek/doc-plexus

docs: Add Plexus to front page

2 weeks agoMerge pull request #17080 from rgacogne/ddist-fix-doh-regression-tests-formatting...
Remi Gacogne [Tue, 31 Mar 2026 14:51:21 +0000 (16:51 +0200)] 
Merge pull request #17080 from rgacogne/ddist-fix-doh-regression-tests-formatting-master

dnsdist: Fix the formatting of `test_DOH.py`

2 weeks agodnsdist: Fix the formatting of `test_DOH.py` 17080/head
Remi Gacogne [Tue, 31 Mar 2026 13:34:01 +0000 (15:34 +0200)] 
dnsdist: Fix the formatting of `test_DOH.py`

I made the mistake of merging one PR where the formatting was not right,
and now it makes a lot of PRs that are not touching this code unhappy.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoMerge pull request #17071 from rgacogne/ywh-115
Remi Gacogne [Tue, 31 Mar 2026 13:28:05 +0000 (15:28 +0200)] 
Merge pull request #17071 from rgacogne/ywh-115

DNSWriter: Prevent overflow when generating (too) large DNS packets

2 weeks agodnsdist: Reformat regression tests with ruff 17077/head
Remi Gacogne [Tue, 31 Mar 2026 13:27:22 +0000 (15:27 +0200)] 
dnsdist: Reformat regression tests with ruff

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Reformat regression tests with ruff 17076/head
Remi Gacogne [Tue, 31 Mar 2026 13:26:30 +0000 (15:26 +0200)] 
dnsdist: Reformat regression tests with ruff

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoAdd Plexus to front page 17079/head
Otto Moerbeek [Tue, 31 Mar 2026 12:40:54 +0000 (14:40 +0200)] 
Add Plexus to front page

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
2 weeks agoMerge pull request #17065 from rgacogne/ddist-fix-js
Remi Gacogne [Tue, 31 Mar 2026 11:54:54 +0000 (13:54 +0200)] 
Merge pull request #17065 from rgacogne/ddist-fix-js

dnsdist: Fix HTML injection in the Web dashboard

2 weeks agoauth: Implement `consumeRemaining` in DNSParser, DNSWriter, RecordTextReader and...
Remi Gacogne [Thu, 19 Mar 2026 09:20:36 +0000 (10:20 +0100)] 
auth: Implement `consumeRemaining` in DNSParser, DNSWriter, RecordTextReader and RecordTextWriter

This is needed to deal with a bug (#17000) in the authoritative code that at
some point created non-empty ENT records in our databases.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Update unit tests for parsing issues now reported earlier in the process
Remi Gacogne [Tue, 17 Mar 2026 14:03:34 +0000 (15:03 +0100)] 
dnsdist: Update unit tests for parsing issues now reported earlier in the process

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoauth: Fix invalid TKEY payload in our tests
Remi Gacogne [Tue, 17 Mar 2026 13:11:18 +0000 (14:11 +0100)] 
auth: Fix invalid TKEY payload in our tests

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoWarn early when parsing a too large DNS record
Remi Gacogne [Tue, 17 Mar 2026 13:10:51 +0000 (14:10 +0100)] 
Warn early when parsing a too large DNS record

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoImplement a more useful version of `PacketReader::getRemaining()`
Remi Gacogne [Tue, 17 Mar 2026 13:10:22 +0000 (14:10 +0100)] 
Implement a more useful version of `PacketReader::getRemaining()`

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsparser: Harden the DNS parser against malformed records
Remi Gacogne [Mon, 16 Mar 2026 14:55:29 +0000 (15:55 +0100)] 
dnsparser: Harden the DNS parser against malformed records

There is no security issue: we are not reading outside of the packet
or bypassing any checks. We might however accept packets that are not
valid and that we could discard earlier in the process.

Reported by nrabrenovic in YWH-PGM6095-137.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoDNSWriter: Clean up the code, no functional changes
Remi Gacogne [Thu, 12 Mar 2026 14:15:00 +0000 (15:15 +0100)] 
DNSWriter: Clean up the code, no functional changes

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoDNSWriter: Handle malformed pointers in the current content
Remi Gacogne [Tue, 10 Mar 2026 12:37:02 +0000 (13:37 +0100)] 
DNSWriter: Handle malformed pointers in the current content

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoMerge pull request #17039 from rgacogne/ddist-bench-packet-cache
Remi Gacogne [Tue, 31 Mar 2026 10:19:55 +0000 (12:19 +0200)] 
Merge pull request #17039 from rgacogne/ddist-bench-packet-cache

dnsdist: Add micro-benchmarks for the packet cache

2 weeks agoMerge pull request #17050 from esensar/feature/edns-padding
Remi Gacogne [Tue, 31 Mar 2026 10:19:37 +0000 (12:19 +0200)] 
Merge pull request #17050 from esensar/feature/edns-padding

dnsdist: add EDNS padding support

2 weeks agoMerge pull request #17068 from rgacogne/ddist-YWH-PGM6095-87
Remi Gacogne [Tue, 31 Mar 2026 10:16:37 +0000 (12:16 +0200)] 
Merge pull request #17068 from rgacogne/ddist-YWH-PGM6095-87

dnsdist: Fix DoH ACL bypass when early ACL check is disabled

2 weeks agoMerge pull request #17067 from rgacogne/ddist-YWH-PGM6095-86
Remi Gacogne [Tue, 31 Mar 2026 10:14:19 +0000 (12:14 +0200)] 
Merge pull request #17067 from rgacogne/ddist-YWH-PGM6095-86

dnsdist: Fix out-of-bounds read when parsing DNS packets via Lua

2 weeks agoMerge pull request #17066 from rgacogne/ddist-disable-cross-origin-requests-by-default
Remi Gacogne [Tue, 31 Mar 2026 10:14:09 +0000 (12:14 +0200)] 
Merge pull request #17066 from rgacogne/ddist-disable-cross-origin-requests-by-default

dnsdist: Disable cross-origin HTTP requests by default

2 weeks agoMerge pull request #17072 from rgacogne/dnsdit-1.9.12-2.0.3-changelog-secpoll
Remi Gacogne [Tue, 31 Mar 2026 09:58:43 +0000 (11:58 +0200)] 
Merge pull request #17072 from rgacogne/dnsdit-1.9.12-2.0.3-changelog-secpoll

dnsdist: Update ChangeLog and security polling for 1.9.12 and 2.0.3

2 weeks agodnsdist: Set PR # in the ChangeLog 17072/head
Remi Gacogne [Tue, 31 Mar 2026 08:37:28 +0000 (10:37 +0200)] 
dnsdist: Set PR # in the ChangeLog

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoAdd researcher names to the spell-checker allow-list
Remi Gacogne [Tue, 31 Mar 2026 07:56:09 +0000 (09:56 +0200)] 
Add researcher names to the spell-checker allow-list

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Add security advisory 2026-02
Remi Gacogne [Tue, 31 Mar 2026 07:45:38 +0000 (09:45 +0200)] 
dnsdist: Add security advisory 2026-02

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agoMerge pull request #17061 from pieterlexis/update-python-pkgs
Pieter Lexis [Tue, 31 Mar 2026 07:53:41 +0000 (09:53 +0200)] 
Merge pull request #17061 from pieterlexis/update-python-pkgs

chore: Update all python packages

2 weeks agodnsdist: ChangeLog and secpoll update for 1.9.12, 2.0.3
Remi Gacogne [Mon, 30 Mar 2026 13:01:07 +0000 (15:01 +0200)] 
dnsdist: ChangeLog and secpoll update for 1.9.12, 2.0.3

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Drop the PR # from the available features map 17017/head
Remi Gacogne [Mon, 30 Mar 2026 15:08:26 +0000 (17:08 +0200)] 
dnsdist: Drop the PR # from the available features map

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agodnsdist: Add more examples on how to export tags to protobuf
Remi Gacogne [Mon, 30 Mar 2026 15:08:07 +0000 (17:08 +0200)] 
dnsdist: Add more examples on how to export tags to protobuf

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
2 weeks agochore: Update all python packages 17061/head
Pieter Lexis [Mon, 30 Mar 2026 15:04:59 +0000 (17:04 +0200)] 
chore: Update all python packages

2 weeks agodnsdist: add EDNS padding support 17050/head
Ensar Sarajčić [Fri, 27 Mar 2026 17:08:22 +0000 (18:08 +0100)] 
dnsdist: add EDNS padding support

Adds support for EDNS padding from [RFC 7830],
implemented per [RFC 8467], specifically [Block-Length Padding Strategy],
which is used in recursor too.

Support is added for DoT, DoH, DoH3 and DoQ frontends.

[RFC 7830]: https://datatracker.ietf.org/doc/html/rfc7830
[RFC 8467]: https://datatracker.ietf.org/doc/html/rfc8467
[Block-Length Padding Strategy]: https://datatracker.ietf.org/doc/html/rfc8467#section-4.1

Closes: #10018
Signed-off-by: Ensar Sarajčić <dev@ensarsarajcic.com>
2 weeks agoMerge pull request #17059 from pieterlexis/docs-lua-anchor
Pieter Lexis [Mon, 30 Mar 2026 14:59:37 +0000 (16:59 +0200)] 
Merge pull request #17059 from pieterlexis/docs-lua-anchor

docs: correct anchors to Lua funcs in search

2 weeks agofix: some pythopn requirement files 17059/head
Pieter Lexis [Mon, 30 Mar 2026 12:31:26 +0000 (14:31 +0200)] 
fix: some pythopn requirement files

2 weeks agoMerge pull request #17037 from esensar/feature/doh3-response-maps
Remi Gacogne [Mon, 30 Mar 2026 11:52:34 +0000 (13:52 +0200)] 
Merge pull request #17037 from esensar/feature/doh3-response-maps

dnsdist: add support for response maps for DoH3

2 weeks agodocs: correct anchors to Lua funcs in search
Pieter Lexis [Mon, 30 Mar 2026 10:11:26 +0000 (12:11 +0200)] 
docs: correct anchors to Lua funcs in search

Closes: #17028
2 weeks agoUse constant-time string comparison for pdns_control password.
Miod Vallat [Mon, 30 Mar 2026 07:01:58 +0000 (09:01 +0200)] 
Use constant-time string comparison for pdns_control password.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
3 weeks agodnsdist: Move the existing DNSName into the response rings 17058/head
Remi Gacogne [Fri, 27 Mar 2026 15:41:33 +0000 (16:41 +0100)] 
dnsdist: Move the existing DNSName into the response rings

Rather than creating a new one. This saves an allocation plus copy
when the name is too long to fit in the internal "short string
optimization" buffer.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agoMerge pull request #17048 from miodvallat/tawny_or_ruby
Miod Vallat [Fri, 27 Mar 2026 15:02:48 +0000 (16:02 +0100)] 
Merge pull request #17048 from miodvallat/tawny_or_ruby

Broader exception catching around stoi usage

3 weeks agoCatch std::logic_error around {checked_,}sto*, not std::out_of_range. 17048/head
Miod Vallat [Fri, 27 Mar 2026 13:25:47 +0000 (14:25 +0100)] 
Catch std::logic_error around {checked_,}sto*, not std::out_of_range.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
3 weeks agodnsdist: Use `catch2` instead of `libcatch2-dev` since Ubuntu is laggind behind 17039/head
Remi Gacogne [Thu, 26 Mar 2026 14:22:44 +0000 (15:22 +0100)] 
dnsdist: Use `catch2` instead of `libcatch2-dev` since Ubuntu is laggind behind

This might become a catch22.

3 weeks agodnsdist: Build benchmark targets in CI
Remi Gacogne [Thu, 26 Mar 2026 12:33:18 +0000 (13:33 +0100)] 
dnsdist: Build benchmark targets in CI

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: Prepare the threads vector outside of the bench
Remi Gacogne [Thu, 26 Mar 2026 12:13:53 +0000 (13:13 +0100)] 
dnsdist: Prepare the threads vector outside of the bench

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: Add micro-benchmarks for the packet cache
Remi Gacogne [Thu, 26 Mar 2026 10:46:26 +0000 (11:46 +0100)] 
dnsdist: Add micro-benchmarks for the packet cache

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: add basic regression tests for DoH3 responses map 17037/head
Ensar Sarajčić [Thu, 26 Mar 2026 12:25:47 +0000 (13:25 +0100)] 
dnsdist: add basic regression tests for DoH3 responses map

Signed-off-by: Ensar Sarajčić <dev@ensarsarajcic.com>
3 weeks agodnsdist: fix `dnsdist-doh-common` import in `doh3.hh`
Ensar Sarajčić [Thu, 26 Mar 2026 12:01:06 +0000 (13:01 +0100)] 
dnsdist: fix `dnsdist-doh-common` import in `doh3.hh`

Signed-off-by: Ensar Sarajčić <dev@ensarsarajcic.com>
3 weeks agodnsdist: use `handleImmediateResponse` for custom responses
Ensar Sarajčić [Thu, 26 Mar 2026 11:50:52 +0000 (12:50 +0100)] 
dnsdist: use `handleImmediateResponse` for custom responses

Signed-off-by: Ensar Sarajčić <dev@ensarsarajcic.com>
3 weeks agoMerge pull request #17038 from rgacogne/ddist-fix-micro-benchs
Remi Gacogne [Thu, 26 Mar 2026 11:33:17 +0000 (12:33 +0100)] 
Merge pull request #17038 from rgacogne/ddist-fix-micro-benchs

dnsdist: Fix micro-benchmarks compilation

3 weeks agodnsdist: Fix micro-benchmarks compilation 17038/head
Remi Gacogne [Thu, 26 Mar 2026 10:45:04 +0000 (11:45 +0100)] 
dnsdist: Fix micro-benchmarks compilation

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: add docs for `DOH3Frontend:setResponsesMap`
Ensar Sarajčić [Thu, 26 Mar 2026 08:50:28 +0000 (09:50 +0100)] 
dnsdist: add docs for `DOH3Frontend:setResponsesMap`

Signed-off-by: Ensar Sarajčić <dev@ensarsarajcic.com>
3 weeks agodnsdist: add support for response maps for DoH3
Ensar Sarajčić [Thu, 26 Mar 2026 08:43:49 +0000 (09:43 +0100)] 
dnsdist: add support for response maps for DoH3

Closes: #16202
Signed-off-by: Ensar Sarajčić <dev@ensarsarajcic.com>
3 weeks agoCorrectly generate the json schema file for auth. 17035/head
Pieter Lexis [Wed, 25 Mar 2026 12:58:07 +0000 (13:58 +0100)] 
Correctly generate the json schema file for auth.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
3 weeks agoFix other reference name.
Miod Vallat [Wed, 25 Mar 2026 12:39:20 +0000 (13:39 +0100)] 
Fix other reference name.

Co-authored-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
3 weeks agoMerge pull request #17034 from omoerbeek/rec-man-pages-optional
Otto Moerbeek [Wed, 25 Mar 2026 11:57:51 +0000 (12:57 +0100)] 
Merge pull request #17034 from omoerbeek/rec-man-pages-optional

rec: add meson option to not build man pages

3 weeks agoMerge pull request #16734 from rgacogne/auth-meson-20260116
Remi Gacogne [Wed, 25 Mar 2026 11:53:49 +0000 (12:53 +0100)] 
Merge pull request #16734 from rgacogne/auth-meson-20260116

auth: Fix a bunch of issues when building with `meson`

3 weeks agoMerge pull request #17033 from omoerbeek/rec-docs-followcname
Otto Moerbeek [Wed, 25 Mar 2026 11:49:36 +0000 (12:49 +0100)] 
Merge pull request #17033 from omoerbeek/rec-docs-followcname

rec docs: describe followCNAMERecords better

3 weeks agoFix reference name.
Miod Vallat [Wed, 25 Mar 2026 11:37:48 +0000 (12:37 +0100)] 
Fix reference name.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
3 weeks agorec: add meson option to not build man pages 17034/head
Otto Moerbeek [Wed, 25 Mar 2026 11:19:26 +0000 (12:19 +0100)] 
rec: add meson option to not build man pages

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
3 weeks agoMerge pull request #17029 from pieterlexis/dnsdist-ot-rm-assert
Pieter Lexis [Wed, 25 Mar 2026 09:21:27 +0000 (10:21 +0100)] 
Merge pull request #17029 from pieterlexis/dnsdist-ot-rm-assert

fix(dnsdist): don't assert on OT SpanID mismatch

3 weeks agoMerge pull request #17031 from pieterlexis/docs-thicken-tab-text
Pieter Lexis [Wed, 25 Mar 2026 09:21:13 +0000 (10:21 +0100)] 
Merge pull request #17031 from pieterlexis/docs-thicken-tab-text

docs: make the tab-bar easier to read

3 weeks agorec docs: describe followCNAMERecords better 17033/head
Otto Moerbeek [Wed, 25 Mar 2026 08:52:12 +0000 (09:52 +0100)] 
rec docs: describe followCNAMERecords better

While working on this, I noted it is underspecified *which* CNAME
record is followed, but that is for some other time.

Fixes #17030

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
3 weeks agodocs(rec): remove unused css file 17031/head
Pieter Lexis [Tue, 24 Mar 2026 18:00:07 +0000 (19:00 +0100)] 
docs(rec): remove unused css file

3 weeks agodocs: Use symlinks in the repo for static content
Pieter Lexis [Tue, 24 Mar 2026 17:55:48 +0000 (18:55 +0100)] 
docs: Use symlinks in the repo for static content

3 weeks agodocs: brighten tab text and bold active tab
Pieter Lexis [Tue, 24 Mar 2026 17:50:23 +0000 (18:50 +0100)] 
docs: brighten tab text and bold active tab

3 weeks agofix(dnsdist): don't assert on OT SpanID mismatch 17029/head
Pieter Lexis [Tue, 24 Mar 2026 15:10:15 +0000 (16:10 +0100)] 
fix(dnsdist): don't assert on OT SpanID mismatch

Spans from the backend receive threads *could* be opened before the
ones from the frontend receive threads are closed. This commit no longer
asserts but cleans up nicely.

It also adds an `abort` when sanitizers are enabled to catch this issue
when it happens inside CI.

3 weeks agodnsdist: Fix one remaining typo
Remi Gacogne [Mon, 23 Mar 2026 08:28:22 +0000 (09:28 +0100)] 
dnsdist: Fix one remaining typo

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: Implement `pdns_features` to detect available features from `Lua`
Remi Gacogne [Fri, 20 Mar 2026 16:16:54 +0000 (17:16 +0100)] 
dnsdist: Implement `pdns_features` to detect available features from `Lua`

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: Appease ruff
Remi Gacogne [Fri, 20 Mar 2026 12:46:58 +0000 (13:46 +0100)] 
dnsdist: Appease ruff

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: Apply Miod's suggestions
Remi Gacogne [Fri, 20 Mar 2026 12:45:19 +0000 (13:45 +0100)] 
dnsdist: Apply Miod's suggestions

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: Speed up Protobuf regression tests
Remi Gacogne [Fri, 20 Mar 2026 10:29:45 +0000 (11:29 +0100)] 
dnsdist: Speed up Protobuf regression tests

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: Add regression tests for RemoteLog tag prefixes
Remi Gacogne [Fri, 20 Mar 2026 10:29:16 +0000 (11:29 +0100)] 
dnsdist: Add regression tests for RemoteLog tag prefixes

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agodnsdist: Add options to select which tags to export over ProtoBuf
Remi Gacogne [Thu, 19 Mar 2026 15:39:59 +0000 (16:39 +0100)] 
dnsdist: Add options to select which tags to export over ProtoBuf

This PR implements:
- ``exportTagsKeyOnly`` taking a boolean indicating whether only a tag's key should be exported
- ``exportTagsPrefixes`` taking a list of prefixes
- ``exportTagsStripPrefixes`` taking a boolean indicating whether a matching prefix should be stripped before being exported

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
3 weeks agoMerge pull request #17000 from miodvallat/error_not_tolerated
Miod Vallat [Mon, 23 Mar 2026 12:48:34 +0000 (13:48 +0100)] 
Merge pull request #17000 from miodvallat/error_not_tolerated

auth: correctly delete ENT records from the API

3 weeks agoMerge pull request #17025 from PowerDNS/dependabot/pip/pdns/dnsdistdist/docs/cryptogr...
Pieter Lexis [Mon, 23 Mar 2026 12:39:59 +0000 (13:39 +0100)] 
Merge pull request #17025 from PowerDNS/dependabot/pip/pdns/dnsdistdist/docs/cryptography-46.0.5

build(deps): bump cryptography from 46.0.4 to 46.0.5 in /pdns/dnsdistdist/docs