]> git.ipfire.org Git - thirdparty/pdns.git/log
thirdparty/pdns.git
5 months agochore: Remove broken support for `--run-output`
Josh Soref [Fri, 7 Nov 2025 13:39:29 +0000 (08:39 -0500)] 
chore: Remove broken support for `--run-output`

Dead code as of 28e7226a809c522d69913e2aab2c55fbb55646e3

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agodnsdist: implement simple packet shuffle in cache
Karel Bilek [Tue, 9 Sep 2025 14:03:33 +0000 (16:03 +0200)] 
dnsdist: implement simple packet shuffle in cache

The shuffle is implementing by directly swapping
pieces of RData memory in a single RRSet.

Signed-off-by: Karel Bilek <kb@karelbilek.com>
5 months agoMerge pull request #16448 from PowerDNS/dependabot/pip/regression-tests.api/requests...
Alexis Romero [Fri, 7 Nov 2025 12:39:07 +0000 (13:39 +0100)] 
Merge pull request #16448 from PowerDNS/dependabot/pip/regression-tests.api/requests-2.32.4

chore(deps): bump requests from 2.31.0 to 2.32.4 in /regression-tests.api

5 months agochores(dnsdist): Replace '%s' with '%d' when formatting integers in our tests 16450/head
Remi Gacogne [Fri, 7 Nov 2025 11:06:34 +0000 (12:06 +0100)] 
chores(dnsdist): Replace '%s' with '%d' when formatting integers in our tests

These has been bothering me for a long time. I was hoping we would be
fixing them little by little but we are actually copy/pasting the wrong
formatters to new tests, so I'm biting the bullet now.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agoMerge pull request #16444 from romeroalx/add-workflow-check-pinning
Remi Gacogne [Fri, 7 Nov 2025 09:50:53 +0000 (10:50 +0100)] 
Merge pull request #16444 from romeroalx/add-workflow-check-pinning

gh actions: move check pinned python packages to a separate workflow

5 months agochore(deps): bump requests in /regression-tests.api 16448/head
dependabot[bot] [Fri, 7 Nov 2025 09:48:28 +0000 (09:48 +0000)] 
chore(deps): bump requests in /regression-tests.api

Bumps [requests](https://github.com/psf/requests) from 2.31.0 to 2.32.4.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.31.0...v2.32.4)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.32.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
5 months agoMerge pull request #16407 from romeroalx/fix-pip-pinning-0311
Remi Gacogne [Fri, 7 Nov 2025 09:46:48 +0000 (10:46 +0100)] 
Merge pull request #16407 from romeroalx/fix-pip-pinning-0311

Update Python package pinning for setup_requires dependency pbr to version 7.0.3

5 months agoMerge pull request #16446 from jsoref/contributing-ai-policy
Miod Vallat [Thu, 6 Nov 2025 14:49:35 +0000 (15:49 +0100)] 
Merge pull request #16446 from jsoref/contributing-ai-policy

docs: Mention AI Policy in contributing pull requests

5 months agodocs: Mention AI Policy in contributing pull requests 16446/head
Josh Soref [Thu, 6 Nov 2025 14:12:46 +0000 (09:12 -0500)] 
docs: Mention AI Policy in contributing pull requests

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agoMerge pull request #16445 from miodvallat/rm-of-the-day
Miod Vallat [Thu, 6 Nov 2025 13:50:27 +0000 (14:50 +0100)] 
Merge pull request #16445 from miodvallat/rm-of-the-day

dead code tells no tales

5 months agoRemove dead code. 16445/head
Miod Vallat [Thu, 6 Nov 2025 13:09:26 +0000 (14:09 +0100)] 
Remove dead code.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
5 months agogh actions: move check pinned python packages to verify-pinned-python-packages.yml 16444/head
romeroalx [Thu, 6 Nov 2025 10:55:06 +0000 (11:55 +0100)] 
gh actions: move check pinned python packages to verify-pinned-python-packages.yml

5 months agoupdate-pinned-ver-python 16407/head
romeroalx [Mon, 3 Nov 2025 11:01:45 +0000 (12:01 +0100)] 
update-pinned-ver-python

5 months agoMerge pull request #16438 from omoerbeek/rec-rm-deprecated
Otto Moerbeek [Thu, 6 Nov 2025 10:11:45 +0000 (11:11 +0100)] 
Merge pull request #16438 from omoerbeek/rec-rm-deprecated

rec: remove options that were deprecated a long time ago

5 months agochangelog-from-pr: Sort PRs based on their ID 16441/head
Remi Gacogne [Thu, 6 Nov 2025 08:42:10 +0000 (09:42 +0100)] 
changelog-from-pr: Sort PRs based on their ID

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agoMore modern way of determining the endianness of the system 16440/head
Otto Moerbeek [Thu, 6 Nov 2025 08:08:42 +0000 (09:08 +0100)] 
More modern way of determining the endianness of the system

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoWe're runing on a posix system, so we can expect endian.h to exist
Otto Moerbeek [Thu, 6 Nov 2025 08:07:12 +0000 (09:07 +0100)] 
We're runing on a posix system, so we can expect endian.h to exist

Should fix #16091

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoMerge pull request #16372 from rgacogne/ddist-regex
Remi Gacogne [Thu, 6 Nov 2025 07:59:19 +0000 (08:59 +0100)] 
Merge pull request #16372 from rgacogne/ddist-regex

dnsdist: Properly handle invalid regular expressions

5 months agoMerge pull request #16384 from omoerbeek/rec-cache-tcp
Otto Moerbeek [Wed, 5 Nov 2025 15:48:49 +0000 (16:48 +0100)] 
Merge pull request #16384 from omoerbeek/rec-cache-tcp

rec: remember if an answer was received over TCP in record cache

5 months agorec: remove options that were deprecated a long time ago 16438/head
Otto Moerbeek [Wed, 5 Nov 2025 15:37:36 +0000 (16:37 +0100)] 
rec: remove options that were deprecated a long time ago

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agodnsdist: Document that `Regex` matches in a case-insensitive way 16372/head
Remi Gacogne [Wed, 5 Nov 2025 15:32:46 +0000 (16:32 +0100)] 
dnsdist: Document that `Regex` matches in a case-insensitive way

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agoMerge pull request #16434 from omoerbeek/rec-upgrade
Otto Moerbeek [Wed, 5 Nov 2025 15:22:40 +0000 (16:22 +0100)] 
Merge pull request #16434 from omoerbeek/rec-upgrade

rec: Update upgrade guide and correct version info for cookie support

5 months agoMerge pull request #16376 from jsoref/bump-actions
Otto Moerbeek [Wed, 5 Nov 2025 15:05:32 +0000 (16:05 +0100)] 
Merge pull request #16376 from jsoref/bump-actions

Bump actions

5 months agoMerge pull request #16229 from Habbie/luacontext-debug-object
Peter van Dijk [Wed, 5 Nov 2025 14:59:42 +0000 (15:59 +0100)] 
Merge pull request #16229 from Habbie/luacontext-debug-object

store debug.traceback function before user can hide it from us

5 months agorec: Update upgrade guide and correct version info for cookie support 16434/head
Otto Moerbeek [Wed, 5 Nov 2025 14:39:50 +0000 (15:39 +0100)] 
rec: Update upgrade guide and correct version info for cookie support

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoMerge pull request #16426 from omoerbeek/rec-lua-conf-tidy
Otto Moerbeek [Wed, 5 Nov 2025 07:18:18 +0000 (08:18 +0100)] 
Merge pull request #16426 from omoerbeek/rec-lua-conf-tidy

rec: rec-lua-conf.* tidy

5 months agoMerge pull request #16429 from rgacogne/ddist-test-http1-date-header
Remi Gacogne [Tue, 4 Nov 2025 15:17:24 +0000 (16:17 +0100)] 
Merge pull request #16429 from rgacogne/ddist-test-http1-date-header

dnsdist: Add a test for the `Date` header in rejected HTTP/1 requests

5 months agodnsdist: Add a test for the `Date` header in rejected HTTP/1 requests 16429/head
Remi Gacogne [Tue, 4 Nov 2025 14:21:04 +0000 (15:21 +0100)] 
dnsdist: Add a test for the `Date` header in rejected HTTP/1 requests

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agoTweaks and add a command to get default config parameter values
Otto Moerbeek [Thu, 30 Oct 2025 12:57:50 +0000 (13:57 +0100)] 
Tweaks and add a command to get default config parameter values

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoClippy, better error message
Otto Moerbeek [Thu, 30 Oct 2025 08:30:11 +0000 (09:30 +0100)] 
Clippy, better error message

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoAlso set the YAML value on config changes
Otto Moerbeek [Wed, 29 Oct 2025 13:39:30 +0000 (14:39 +0100)] 
Also set the YAML value on config changes

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoProvide missing YAML manipulation pieces for new classes
Otto Moerbeek [Wed, 29 Oct 2025 13:38:55 +0000 (14:38 +0100)] 
Provide missing YAML manipulation pieces for new classes

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoProduce a properly indented YAML snippet
Otto Moerbeek [Wed, 29 Oct 2025 10:47:35 +0000 (11:47 +0100)] 
Produce a properly indented YAML snippet

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoClippy and store event trace values in yaml struct
Otto Moerbeek [Tue, 28 Oct 2025 15:40:05 +0000 (16:40 +0100)] 
Clippy and store event trace values in yaml struct

There are more cases

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoHandle values set to default values.
Otto Moerbeek [Tue, 28 Oct 2025 15:30:40 +0000 (16:30 +0100)] 
Handle values set to default values.

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoPrint yaml representation for get-parameter
Otto Moerbeek [Tue, 28 Oct 2025 14:11:36 +0000 (15:11 +0100)] 
Print yaml representation for get-parameter

Known issue: parameters having default vaues are not found

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoAdd missing pieces for for default printing
Otto Moerbeek [Tue, 28 Oct 2025 11:18:15 +0000 (12:18 +0100)] 
Add missing pieces for for default printing

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoMake rec_control get-parameter print something that is a valid old-style setting
Otto Moerbeek [Tue, 28 Oct 2025 09:52:23 +0000 (10:52 +0100)] 
Make rec_control get-parameter print something that is a valid old-style setting

In particular, quotes and escaping is not handled by the old-style settings parser

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agofeat(dnsdist): Add ability to use incoming TraceID 16395/head
Pieter Lexis [Thu, 30 Oct 2025 10:23:13 +0000 (11:23 +0100)] 
feat(dnsdist): Add ability to use incoming TraceID

5 months agofeat(sdig): parse (optional) spanid from arguments
Pieter Lexis [Thu, 30 Oct 2025 09:39:54 +0000 (10:39 +0100)] 
feat(sdig): parse (optional) spanid from arguments

5 months agofeat(protozero): Add a more generic function to extract Trace and Span ID from EDNS...
Pieter Lexis [Wed, 29 Oct 2025 14:49:57 +0000 (15:49 +0100)] 
feat(protozero): Add a more generic function to extract Trace and Span ID from EDNS option

5 months agofeat(dnsdist): Add infra to update Root SpanID and TraceID in Tracer
Pieter Lexis [Wed, 29 Oct 2025 13:49:12 +0000 (14:49 +0100)] 
feat(dnsdist): Add infra to update Root SpanID and TraceID in Tracer

5 months agoTidy 16426/head
Otto Moerbeek [Mon, 3 Nov 2025 10:35:24 +0000 (11:35 +0100)] 
Tidy

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoMerge pull request #16402 from pieterlexis/dnsdist-no-ot-activation-without-benchmarks
Pieter Lexis [Tue, 4 Nov 2025 10:27:18 +0000 (11:27 +0100)] 
Merge pull request #16402 from pieterlexis/dnsdist-no-ot-activation-without-benchmarks

feat(dnsdist): Speed up adding Spans in the Tracer

5 months agofix(protozero): Always initialize SpanID and TraceID to zero
Pieter Lexis [Tue, 4 Nov 2025 10:12:32 +0000 (11:12 +0100)] 
fix(protozero): Always initialize SpanID and TraceID to zero

Should fix CID-493276 and CID-493277.

5 months agoMerge pull request #16424 from rgacogne/fix-comment-in-the-sbom-generation-tool
Remi Gacogne [Tue, 4 Nov 2025 09:42:03 +0000 (10:42 +0100)] 
Merge pull request #16424 from rgacogne/fix-comment-in-the-sbom-generation-tool

Our SBOMs are in CycloneDX JSON format, not Protocol Buffer

5 months agoOur SBOMs are in CycloneDX JSON format, not Protocol Buffer 16424/head
Remi Gacogne [Tue, 4 Nov 2025 09:04:05 +0000 (10:04 +0100)] 
Our SBOMs are in CycloneDX JSON format, not Protocol Buffer

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agofeat(dnsdist): wrap d_traceid in Tracer in a lock 16402/head
Pieter Lexis [Mon, 3 Nov 2025 15:33:16 +0000 (16:33 +0100)] 
feat(dnsdist): wrap d_traceid in Tracer in a lock

5 months agofeat(dnsdist): Speed up adding Spans in the Tracer
Pieter Lexis [Fri, 31 Oct 2025 13:35:21 +0000 (14:35 +0100)] 
feat(dnsdist): Speed up adding Spans in the Tracer

This makes the code cleaner, and does away with the pre- and
post-activation spans. We now have a "mini" span that we convert to
actual Spans only when they need to be sent out.

Using microbenchmarks the following became clear:

Adding a Span to the Tracer (using `Closer::openSpan`) is now about
45% slower than adding it to an old "unactivated" Tracer. But is is
*twice* as fast compared to the old "activated" Tracer.

When tracing is enabled for a query, most spans are added *after*
"activation". So this commit should speed up query processing when
tracing is enabled.

One downside of this commit is that generating the actual OpenTelemetry
Trace data we now need to create the real Spans, this generation is
about 60% slower. However, when the `delay` option is used for the
RemoteLogResponseAction this slowness is not in the hot path of the
query. As this generation happens after the response has been sent.

Signed-off-by: Pieter Lexis <pieter.lexis@powerdns.com>
5 months agoMerge pull request #16417 from jsoref/docs-remote
Miod Vallat [Mon, 3 Nov 2025 20:03:51 +0000 (21:03 +0100)] 
Merge pull request #16417 from jsoref/docs-remote

Improve remote docs

5 months agoApply suggestions from code review 16417/head
Josh Soref [Mon, 3 Nov 2025 17:20:48 +0000 (12:20 -0500)] 
Apply suggestions from code review

Co-authored-by: Miod Vallat <miod.vallat@powerdns.com>
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agodocs(remote): try to make superMasterBackend reply easier to read
Josh Soref [Mon, 3 Nov 2025 15:37:06 +0000 (10:37 -0500)] 
docs(remote): try to make superMasterBackend reply easier to read

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agodocs(remote): make http/rpc match json/rpc for getbeforeandafternamesabsolute
Josh Soref [Mon, 3 Nov 2025 15:36:09 +0000 (10:36 -0500)] 
docs(remote): make http/rpc match json/rpc for getbeforeandafternamesabsolute

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agodocs(remote): fix json for getdomaininfo response
Josh Soref [Mon, 3 Nov 2025 15:34:44 +0000 (10:34 -0500)] 
docs(remote): fix json for getdomaininfo response

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agodocs(remote): fix sentence to end with a period instead of the parenthetical
Josh Soref [Mon, 3 Nov 2025 15:33:59 +0000 (10:33 -0500)] 
docs(remote): fix sentence to end with a period instead of the parenthetical

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agodocs(remote): Document that real-remote is a CIDR-netmask
Josh Soref [Mon, 3 Nov 2025 15:29:54 +0000 (10:29 -0500)] 
docs(remote): Document that real-remote is a CIDR-netmask

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agodocs(remote): Move pre v4.0 content to pre v4.0 breaking section
Josh Soref [Mon, 3 Nov 2025 15:28:36 +0000 (10:28 -0500)] 
docs(remote): Move pre v4.0 content to pre v4.0 breaking section

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agodocs(remote): Add sections to important notices
Josh Soref [Mon, 3 Nov 2025 15:26:47 +0000 (10:26 -0500)] 
docs(remote): Add sections to important notices

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agoauth sdist: copy files as files, not as new dirs 16398/head
Peter van Dijk [Thu, 30 Oct 2025 13:04:27 +0000 (14:04 +0100)] 
auth sdist: copy files as files, not as new dirs

Signed-off-by: Peter van Dijk <peter.van.dijk@powerdns.com>
5 months agoauth upgrade notes: stop confusing people with future version numbers 16399/head
Peter van Dijk [Thu, 30 Oct 2025 13:49:54 +0000 (14:49 +0100)] 
auth upgrade notes: stop confusing people with future version numbers

Signed-off-by: Peter van Dijk <peter.van.dijk@powerdns.com>
5 months agoMerge pull request #16409 from Habbie/gh-diskspace
Peter van Dijk [Mon, 3 Nov 2025 14:16:06 +0000 (15:16 +0100)] 
Merge pull request #16409 from Habbie/gh-diskspace

auth-backend tests: make more diskspace on the github runner

5 months agoMerge pull request #16368 from pieterlexis/dnsdist-aarch64
Pieter Lexis [Mon, 3 Nov 2025 13:44:56 +0000 (14:44 +0100)] 
Merge pull request #16368 from pieterlexis/dnsdist-aarch64

ci(dnsdist): Build and test on arm64/aarch64

5 months agoMerge pull request #16405 from rgacogne/ddist-fix-outgoing-tls-yaml-doc
Remi Gacogne [Mon, 3 Nov 2025 12:42:30 +0000 (13:42 +0100)] 
Merge pull request #16405 from rgacogne/ddist-fix-outgoing-tls-yaml-doc

dnsdist: Fix the outgoing DoT YAML example

5 months agoauth-backend tests: make more diskspace on the github runner 16409/head
Peter van Dijk [Mon, 3 Nov 2025 11:06:39 +0000 (12:06 +0100)] 
auth-backend tests: make more diskspace on the github runner

5 months agoci(aarch64): no -fcf-protection=full on aarch64 16368/head
Pieter Lexis [Mon, 27 Oct 2025 08:32:08 +0000 (09:32 +0100)] 
ci(aarch64): no -fcf-protection=full on aarch64

5 months agoci(dnsdist): Build and test on arm64/aarch64
Pieter Lexis [Thu, 23 Oct 2025 15:52:20 +0000 (17:52 +0200)] 
ci(dnsdist): Build and test on arm64/aarch64

5 months agoMerge pull request #16394 from omoerbeek/rec-pubsuffix-eod
Otto Moerbeek [Mon, 3 Nov 2025 10:50:46 +0000 (11:50 +0100)] 
Merge pull request #16394 from omoerbeek/rec-pubsuffix-eod

rec: don't use a vector of string for internal pubsuffixlist

5 months agodnsdist: Fix the outgoing DoT YAML example 16405/head
Remi Gacogne [Mon, 3 Nov 2025 10:24:49 +0000 (11:24 +0100)] 
dnsdist: Fix the outgoing DoT YAML example

As reported by Eddict (thanks!).

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agoMerge pull request #16383 from pieterlexis/dnsdist-OT-per-rule
Pieter Lexis [Mon, 3 Nov 2025 10:24:01 +0000 (11:24 +0100)] 
Merge pull request #16383 from pieterlexis/dnsdist-OT-per-rule

feat(dnsdist): Add OT trace for each rule

5 months agoRemove backwards compatibility code
Otto Moerbeek [Mon, 3 Nov 2025 10:22:43 +0000 (11:22 +0100)] 
Remove backwards compatibility code

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoMerge pull request #16375 from omoerbeek/dnsdist-http1-date-header
Otto Moerbeek [Mon, 3 Nov 2025 10:03:27 +0000 (11:03 +0100)] 
Merge pull request #16375 from omoerbeek/dnsdist-http1-date-header

dnsdist: Include a Date: response header for rejected HTTP1 requests

5 months agoMerge pull request #16255 from rgacogne/openssl-3.6-leak-ocsp
Remi Gacogne [Mon, 3 Nov 2025 09:01:14 +0000 (10:01 +0100)] 
Merge pull request #16255 from rgacogne/openssl-3.6-leak-ocsp

dnsdist: Fix a memory leak with OCSP and OpenSSL 3.6.0

5 months agoMerge pull request #16392 from omoerbeek/mangle-rust-version
Otto Moerbeek [Thu, 30 Oct 2025 12:42:22 +0000 (13:42 +0100)] 
Merge pull request #16392 from omoerbeek/mangle-rust-version

Make version number in rust lib confirm to Rust specifics

5 months agoMerge pull request #16385 from Habbie/auth-5.0.1-docs
Peter van Dijk [Thu, 30 Oct 2025 12:10:42 +0000 (13:10 +0100)] 
Merge pull request #16385 from Habbie/auth-5.0.1-docs

auth 5.0.1 secpoll and changelog

5 months agoBetter words in comment 16392/head
Otto Moerbeek [Thu, 30 Oct 2025 11:38:16 +0000 (12:38 +0100)] 
Better words in comment

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoauth 5.0.1 secpoll and changelog 16385/head
Peter van Dijk [Tue, 28 Oct 2025 16:38:20 +0000 (17:38 +0100)] 
auth 5.0.1 secpoll and changelog

Co-authored-by: Miod Vallat <miod.vallat@powerdns.com>
Signed-off-by: Peter van Dijk <peter.van.dijk@powerdns.com>
5 months agoMerge pull request #16388 from romeroalx/fix-upload-builds-pulp
Alexis Romero [Thu, 30 Oct 2025 10:06:31 +0000 (11:06 +0100)] 
Merge pull request #16388 from romeroalx/fix-upload-builds-pulp

gh actions build-packages: fix pattern for the download-artifacts action and publication issues

5 months agorec: don't use a vector of string for internal pubsuffixlist 16394/head
Otto Moerbeek [Thu, 30 Oct 2025 08:42:57 +0000 (09:42 +0100)] 
rec: don't use a vector of string for internal pubsuffixlist

The construct

std::vector<std::string> x  { not event that many string literals };

blows up with some compilers. Worst I have seen is (with not even
8k strings): g++12 develops a resident size of 26G.

This just creates a (blank line and comments stripped) in-memory version of the file that is
fed to the same code as an external file.

Problem noted by @wojas.

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoDocument initMetric
Jess Bees [Wed, 29 Oct 2025 16:58:00 +0000 (12:58 -0400)] 
Document initMetric

Signed-off-by: Jess Bees <jesse@toomanybees.com>
5 months agoUse a variant of string/unordered map as argument
Jess Bees [Tue, 28 Oct 2025 20:19:04 +0000 (16:19 -0400)] 
Use a variant of string/unordered map as argument

Using a Lua table for an argument is more intuitive than having an
optional 2nd argument, and now `initMetric`'s signature is actually
compatible with `getMetric`'s, rather than just being inspired by it.

Signed-off-by: Jess Bees <jesse@toomanybees.com>
5 months agoMake version number in rust lib confirm to Rust specifics
Otto Moerbeek [Wed, 29 Oct 2025 11:31:12 +0000 (12:31 +0100)] 
Make version number in rust lib confirm to Rust specifics

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agogh actions build-packages: avoid duplicates download-artifacts action. Fix publications 16388/head
romeroalx [Tue, 28 Oct 2025 11:53:44 +0000 (12:53 +0100)] 
gh actions build-packages: avoid duplicates download-artifacts action. Fix publications

5 months agoCombine a few args to get() and replace() into struct 16384/head
Otto Moerbeek [Mon, 27 Oct 2025 11:21:16 +0000 (12:21 +0100)] 
Combine a few args to get() and replace() into struct

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agofeat(dnsdist): Add OT trace for each rule 16383/head
Pieter Lexis [Mon, 27 Oct 2025 19:15:30 +0000 (20:15 +0100)] 
feat(dnsdist): Add OT trace for each rule

5 months agoLimit dynamic metric types to a set of valid strings
Jess Bees [Mon, 27 Oct 2025 14:44:39 +0000 (10:44 -0400)] 
Limit dynamic metric types to a set of valid strings

Basing this on code from dnsdist, it's limited to "counter" and "gauge"
types.

Signed-off-by: Jess Bees <jesse@toomanybees.com>
5 months agoAdd prometheus types/descriptions to dynamic metrics.
Jess Bees [Mon, 27 Oct 2025 14:44:39 +0000 (10:44 -0400)] 
Add prometheus types/descriptions to dynamic metrics.

This commit adds optional types and descriptions to dynamic metrics, so
they can be written to the prometheus metrics web endpoint in comments.

Adds `initMetric` function to Lua, which is similar to getMetric, but
has two additional arguments: the metric's prometheus type, and the
metric's description. Metrics that are first declared with `getMetric`
will have no type or description, and subsequent calls to `initMetric`
will have no effect (the same way that calling `getMetric` multiple
times with different prometheus metric names will have no effect).

Signed-off-by: Jess Bees <jesse@toomanybees.com>
5 months agoci: Update `actions/setup-python` to `v6` 16376/head
Josh Soref [Mon, 27 Oct 2025 12:42:09 +0000 (08:42 -0400)] 
ci: Update `actions/setup-python` to `v6`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agoci: Update `actions/upload-artifact` to `v5`
Josh Soref [Mon, 27 Oct 2025 12:57:19 +0000 (08:57 -0400)] 
ci: Update `actions/upload-artifact` to `v5`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agoci: Update `actions/download-artifact` to `v6`
Josh Soref [Mon, 27 Oct 2025 12:56:28 +0000 (08:56 -0400)] 
ci: Update `actions/download-artifact` to `v6`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agoci: Update `actions/checkout` to `v5`
Josh Soref [Mon, 27 Oct 2025 12:39:20 +0000 (08:39 -0400)] 
ci: Update `actions/checkout` to `v5`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
5 months agoStore if a RRSet was retrieved over TCP in the record cache
Otto Moerbeek [Mon, 27 Oct 2025 10:57:08 +0000 (11:57 +0100)] 
Store if a RRSet was retrieved over TCP in the record cache

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoInclude a Date: response header for rejected HTTP1 requests 16375/head
Otto Moerbeek [Mon, 27 Oct 2025 09:33:28 +0000 (10:33 +0100)] 
Include a Date: response header for rejected HTTP1 requests

This allows OpenBSD ntpd time constraint retrieval to work properly
with nghttp2 incoming DoH.

Note that requests having no alpn data do not appear in any stats.
Should that be changed?

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 months agoMerge pull request #16374 from miodvallat/dumansw
Miod Vallat [Mon, 27 Oct 2025 07:14:44 +0000 (08:14 +0100)] 
Merge pull request #16374 from miodvallat/dumansw

auth dumresp: fix fd leak

5 months agoBe sure to not leak a socket if tcpConnectionHandler() throws. 16374/head
Miod Vallat [Mon, 27 Oct 2025 06:33:56 +0000 (07:33 +0100)] 
Be sure to not leak a socket if tcpConnectionHandler() throws.

Fixes: #16365
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
5 months agoRegex: Appease clang-tidy
Remi Gacogne [Fri, 24 Oct 2025 14:55:01 +0000 (16:55 +0200)] 
Regex: Appease clang-tidy

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agoRegex: Prevent accidently copying the underlying `regex_t`
Remi Gacogne [Fri, 24 Oct 2025 14:16:02 +0000 (16:16 +0200)] 
Regex: Prevent accidently copying the underlying `regex_t`

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agofixup! dnsdist: Document that our `Regex` is Posix Extended Regular Expressions-compa...
Remi Gacogne [Fri, 24 Oct 2025 12:38:48 +0000 (14:38 +0200)] 
fixup! dnsdist: Document that our `Regex` is Posix Extended Regular Expressions-compatible

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agodnsdist: Document that our `Regex` is PCRE-compatible
Remi Gacogne [Fri, 24 Oct 2025 12:35:20 +0000 (14:35 +0200)] 
dnsdist: Document that our `Regex` is PCRE-compatible

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agodnsdist: Just in case, catch `PDNSException` while loading YAML configuration
Remi Gacogne [Fri, 24 Oct 2025 12:34:46 +0000 (14:34 +0200)] 
dnsdist: Just in case, catch `PDNSException` while loading YAML configuration

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 months agodnsdist: Properly handle invalid regular expressions
Remi Gacogne [Fri, 24 Oct 2025 12:34:16 +0000 (14:34 +0200)] 
dnsdist: Properly handle invalid regular expressions

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>