]>
git.ipfire.org Git - thirdparty/pdns.git/log
Miod Vallat [Mon, 15 Sep 2025 06:11:25 +0000 (08:11 +0200)]
Split EDITOR in space-separated parts so that it may arguments to the editor.
Fixes: #16117
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Peter van Dijk [Fri, 12 Sep 2025 11:55:21 +0000 (13:55 +0200)]
Merge pull request #16112 from jellekaufmann/master
auth: Fix EDNS Cookie & Proxy protocol
Miod Vallat [Fri, 12 Sep 2025 10:52:36 +0000 (12:52 +0200)]
Merge pull request #16114 from miodvallat/better_foster_parent
fix interaction between "pdnsutil zone edit" and pipe backend
Miod Vallat [Fri, 12 Sep 2025 09:20:11 +0000 (11:20 +0200)]
Merge pull request #16116 from miodvallat/primary_faulpelz
auth: one more configuration sanity check
Miod Vallat [Fri, 12 Sep 2025 09:08:48 +0000 (11:08 +0200)]
Merge pull request #16115 from miodvallat/odbcafety
auth: automatize godbc_sqlite3 test configuration setup
Miod Vallat [Fri, 12 Sep 2025 08:32:28 +0000 (10:32 +0200)]
Refuse to start with retrieval-threads=0 if configuration needs any.
Fixes: #5343
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Fri, 12 Sep 2025 07:49:27 +0000 (09:49 +0200)]
Build the query configuration at runtime.
Fixes: #4033
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Fri, 12 Sep 2025 07:28:00 +0000 (09:28 +0200)]
Do not make SIGCHLD ignored when the pipe backend launches.
The pipe code makes sure to properly invoke waitpid() to reap its child
process, if any. And ignoring SIGCHLD would prevent other legitimate
waitpid() calls from working, such the editor spawned by pdnsutil zone edit.
Fixes: #3680
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Fri, 12 Sep 2025 07:27:08 +0000 (09:27 +0200)]
Improve comment wording.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Otto Moerbeek [Thu, 11 Sep 2025 14:14:14 +0000 (16:14 +0200)]
Merge pull request #16106 from omoerbeek/update-cargo
Update cargos for rec and dnsdist
Miod Vallat [Thu, 11 Sep 2025 12:09:12 +0000 (14:09 +0200)]
Merge pull request #16040 from miodvallat/dentist
rest api: better report ill-formed zone data
Miod Vallat [Thu, 11 Sep 2025 12:03:36 +0000 (14:03 +0200)]
Merge pull request #15873 from miodvallat/tsigsegv
TSIG metadata tweaks
Miod Vallat [Thu, 11 Sep 2025 12:01:33 +0000 (14:01 +0200)]
Merge pull request #16111 from miodvallat/error_with_style
auth: try to improve some error messages
Otto Moerbeek [Thu, 11 Sep 2025 09:59:38 +0000 (11:59 +0200)]
Avoid the uuid crate, use the C++ code already available
uuid pulls in some questionable deps
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Miod Vallat [Thu, 11 Sep 2025 08:31:52 +0000 (10:31 +0200)]
Give more details in error messages for invalid record contents.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Thu, 11 Sep 2025 07:39:43 +0000 (09:39 +0200)]
Update pdnsutil syntax in error/warning messages.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Jelle Kaufmann [Thu, 11 Sep 2025 11:07:09 +0000 (13:07 +0200)]
Use getInnerRemote() to fix EDNS Cookie & Proxy protocol
Peter van Dijk [Thu, 11 Sep 2025 09:07:38 +0000 (11:07 +0200)]
Merge pull request #16105 from Habbie/dnsproxy-big-endian
dnsproxy: drop bogus endianness workaround
Miod Vallat [Thu, 11 Sep 2025 08:59:48 +0000 (10:59 +0200)]
Merge pull request #15386 from miodvallat/soap_opera
[auth] make pdnsutil add-record perform the same checks as the REST API
Miod Vallat [Wed, 10 Sep 2025 14:49:04 +0000 (16:49 +0200)]
Merge pull request #16109 from miodvallat/olways_delete_bugs_carefully
auth: memory corruption in ODBC
Miod Vallat [Wed, 10 Sep 2025 13:13:00 +0000 (15:13 +0200)]
Make sure the type used for delete matches the type used for new.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Otto Moerbeek [Wed, 10 Sep 2025 11:49:11 +0000 (13:49 +0200)]
Merge pull request #16103 from omoerbeek/rec-elaborate-passwordless
rec: warn on passwordless webserver startup and extends docs
Otto Moerbeek [Wed, 10 Sep 2025 07:59:35 +0000 (09:59 +0200)]
Update cargos for rec and dnsdist
While there, add Cargo.* as dependency
Fixes #16101
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Wed, 10 Sep 2025 07:33:30 +0000 (09:33 +0200)]
Typo
Co-authored-by: Miod Vallat <miod.vallat@powerdns.com>
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Tue, 9 Sep 2025 08:57:35 +0000 (10:57 +0200)]
rec: warn on passwordless webserver startup and extends docs
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Miod Vallat [Thu, 4 Sep 2025 15:08:04 +0000 (17:08 +0200)]
Add test for API access to zone with invalid record content.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 27 Aug 2025 08:46:24 +0000 (10:46 +0200)]
When stumbling upon ill-formed records, return HTTP 422 rather than 500.
This allows the user to get a hopefully helpful error message to help
figure out the cause of the problem.
Fixes: #6673
Fixes: #7203
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 10 Sep 2025 08:11:02 +0000 (10:11 +0200)]
Be sure to blame the new record when two records conflict.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 10 Sep 2025 08:10:08 +0000 (10:10 +0200)]
Make DNSResourceRecord::operator==() const.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Fri, 8 Aug 2025 11:05:31 +0000 (13:05 +0200)]
Return all RRSet validation errors in json result rather than only the first.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Thu, 3 Apr 2025 05:44:22 +0000 (07:44 +0200)]
Better error reporting interface for checkRRSet().
Miod Vallat [Wed, 2 Apr 2025 12:34:21 +0000 (14:34 +0200)]
Try to give more helpful information in checkRRSet errors.
Miod Vallat [Wed, 2 Apr 2025 10:58:36 +0000 (12:58 +0200)]
Make pdnsutil add-record use the same checks as the API.
Miod Vallat [Wed, 10 Sep 2025 09:58:09 +0000 (11:58 +0200)]
Merge pull request #16107 from miodvallat/fragile
auth: unbreak tests
Miod Vallat [Wed, 10 Sep 2025 09:12:03 +0000 (11:12 +0200)]
Unbreak auth test after TXT record handling changes merge.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 10 Sep 2025 05:42:14 +0000 (07:42 +0200)]
Merge pull request #16087 from miodvallat/thin_ice
auth: record contents handling changes
Miod Vallat [Wed, 10 Sep 2025 05:38:46 +0000 (07:38 +0200)]
Merge pull request #15994 from miodvallat/argonauts
REST API: normalize record contents received
Alexis Romero [Tue, 9 Sep 2025 12:34:28 +0000 (14:34 +0200)]
Merge pull request #15996 from romeroalx/build-merge-images-arch
GH actions: Build images separately by architecture and then merge them. Use GH arm64 runners
Peter van Dijk [Tue, 9 Sep 2025 12:17:17 +0000 (14:17 +0200)]
dnsproxy: drop bogus endianness workaround
romeroalx [Tue, 9 Sep 2025 10:04:15 +0000 (12:04 +0200)]
build-docker-images.yml: cleanup generation of runner list. Thanks @habbie
romeroalx [Mon, 25 Aug 2025 14:22:08 +0000 (16:22 +0200)]
build-docker-images.yml: remove context variables from 'run:' sections. Thanks @jsoref
romeroalx [Wed, 20 Aug 2025 09:28:22 +0000 (11:28 +0200)]
gh actions: build images separately by arch. Use gh arm64 runners
Peter van Dijk [Tue, 9 Sep 2025 09:00:38 +0000 (11:00 +0200)]
Merge pull request #16100 from grinapo/lua-example
Add server lua example
Otto Moerbeek [Tue, 9 Sep 2025 06:25:03 +0000 (08:25 +0200)]
Merge pull request #16098 from omoerbeek/rec-skip-hash-ottraceid
rec: do not hash (or compare) OpenTelemetry Trace EDNS value for packetcache
Peter Gervai [Mon, 8 Sep 2025 17:57:25 +0000 (19:57 +0200)]
Add configuration example in comment to help the reader.
Peter Gervai [Mon, 8 Sep 2025 17:53:33 +0000 (19:53 +0200)]
Add pdns_server lua2 backend example.
Remi Gacogne [Mon, 8 Sep 2025 14:53:53 +0000 (16:53 +0200)]
Merge pull request #16065 from rgacogne/ddist-test-configuration-reload
dnsdist: Test that the configuration is correctly reloaded in various cases
Pieter Lexis [Mon, 8 Sep 2025 14:43:38 +0000 (16:43 +0200)]
Merge pull request #16092 from pieterlexis/auth-meson-tests
auth: small meson improvements for testing
Otto Moerbeek [Mon, 8 Sep 2025 14:24:06 +0000 (16:24 +0200)]
rec: do not hash (or compare) OpenTelemetry Trace EDNS value for packetcache
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Remi Gacogne [Mon, 8 Sep 2025 13:48:10 +0000 (15:48 +0200)]
Merge pull request #16082 from rgacogne/ddist-fix-outgoing-doh-io-reentry-guard
dnsdist: Fix the IO reentry guard in outgoing DoH
Miod Vallat [Mon, 8 Sep 2025 13:36:20 +0000 (15:36 +0200)]
Allow quoted words to immediately follow non-quoted in text record contents.
Also reject \DDD escapes with a value larger than 8 bits.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Mon, 8 Sep 2025 13:13:51 +0000 (15:13 +0200)]
Merge pull request #16083 from miodvallat/exoskeleton
LMDB: try to reduce the cost of the LS header
Otto Moerbeek [Mon, 8 Sep 2025 13:13:22 +0000 (15:13 +0200)]
Merge pull request #16094 from omoerbeek/rec-no-thread0
rec: some error paths do no create thread 0 so don't join it
Remi Gacogne [Mon, 8 Sep 2025 12:32:05 +0000 (14:32 +0200)]
Merge pull request #16090 from rgacogne/ddist-fix-frontend-access-in-client
dnsdist: Fix access to frontends while in client mode
Miod Vallat [Mon, 8 Sep 2025 12:28:15 +0000 (14:28 +0200)]
Switch to a slightly less confusing name.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Otto Moerbeek [Mon, 8 Sep 2025 09:47:17 +0000 (11:47 +0200)]
rec: some error paths do no create thread 0 so don't join it
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Remi Gacogne [Mon, 8 Sep 2025 09:37:27 +0000 (11:37 +0200)]
Merge pull request #16078 from rgacogne/add-exotic-distros-packages-dispatch
Add a dispatch workflow to test package building for exotic distributions
Pieter Lexis [Fri, 5 Sep 2025 14:37:34 +0000 (16:37 +0200)]
fix(auth): set PDNS_BUILD_PATH when running tests
Pieter Lexis [Fri, 5 Sep 2025 14:37:12 +0000 (16:37 +0200)]
fix(auth): Ensure socat is installed when enabling tests
Remi Gacogne [Mon, 8 Sep 2025 08:18:32 +0000 (10:18 +0200)]
Merge pull request #16085 from karelbilek/kb/test_lua_proxyprotocol
dnsdist: fix luaFFI proxy protocol regression test
Miod Vallat [Mon, 8 Sep 2025 05:52:47 +0000 (07:52 +0200)]
Merge pull request #16063 from jeremmfr/fix-case-sensitive-ixfrdist
fix case sensitivity handling for IXFR requests in ixfrdist
Remi Gacogne [Fri, 5 Sep 2025 14:49:57 +0000 (16:49 +0200)]
Merge pull request #16088 from rgacogne/ddist-add-regression-test-for-ede-without-extra-text
dnsdist: Add a test for synthesizing EDE without text from Lua FFI
Remi Gacogne [Fri, 5 Sep 2025 14:38:49 +0000 (16:38 +0200)]
dnsdist: Fix access to frontends while in client mode
Since 2.0 we return `nil` instead of an object containing a `NULL`
pointer when the requested object does not exist, to make it possible
to check the validity of the returned object from `Lua`. It makes
sense in all contexts except when we are in client mode, because
then accessing the object in the remaining parts of the configuration
will trigger an error. Our DNS over HTTPS documentation itself contains
such a Lua configuration snippet, which is now broken.
This commit reverts back to sending an object containg a `NULL`
pointer when accessing the frontends in the client mode case.
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Fri, 5 Sep 2025 14:04:54 +0000 (16:04 +0200)]
dnsdist: Add a test for synthesizing EDE without text from Lua FFI
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Miod Vallat [Fri, 5 Sep 2025 13:14:59 +0000 (15:14 +0200)]
When writing back a text record, emit empty fields as a pair of quotes.
Addresses: #5208
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Fri, 5 Sep 2025 13:00:19 +0000 (15:00 +0200)]
Allow multiple word text record contents to not use quotes.
The existing logic would only accept a record not starting with a quote if
it was containing a single word, but there is no such requirement.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Karel Bilek [Fri, 5 Sep 2025 12:59:12 +0000 (14:59 +0200)]
dnsdist: fix luaFFI proxy protocol regression test
macOS and Linux have a different AF_INET6 constant
Miod Vallat [Fri, 5 Sep 2025 08:50:52 +0000 (10:50 +0200)]
Reserve room for the LS header before serializing data whenever possible.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Fri, 5 Sep 2025 08:50:19 +0000 (10:50 +0200)]
Add a variant of the put interface which updates the LS header in place.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Fri, 5 Sep 2025 08:41:30 +0000 (10:41 +0200)]
Change serializeToBuffer() interface to append rather than replace.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Remi Gacogne [Fri, 5 Sep 2025 07:35:44 +0000 (09:35 +0200)]
dnsdist: Fix the IO reentry guard in outgoing DoH
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Thu, 4 Sep 2025 13:18:29 +0000 (15:18 +0200)]
Add a dispatch workflow to test package building for exotic distributions
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Miod Vallat [Wed, 20 Aug 2025 08:48:44 +0000 (10:48 +0200)]
Perform normalization of record data received in the REST API.
Data will now have its surrounding whitespace trimmed and will be
processed by a parseRFC1035CharString() loop, in order to perform
proper escape sequence expansion.
Fixes: #15990
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Remi Gacogne [Thu, 4 Sep 2025 12:52:20 +0000 (14:52 +0200)]
Merge pull request #16015 from rgacogne/ddist-fix-invalid-read-h2-unit-tests
dnsdist: Don't call `nghttp2_session_send` from a callback
Miod Vallat [Wed, 20 Aug 2025 08:48:02 +0000 (10:48 +0200)]
Update parseRFC1035CharString to take a std::string_view argument.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Thu, 4 Sep 2025 11:49:18 +0000 (13:49 +0200)]
Merge pull request #15999 from miodvallat/sort_me_up
pdnsutil: prettier zone output
Miod Vallat [Thu, 4 Sep 2025 11:47:46 +0000 (13:47 +0200)]
Merge pull request #16041 from miodvallat/fieldwork
API: stricter record content validation
Miod Vallat [Thu, 4 Sep 2025 11:46:00 +0000 (13:46 +0200)]
Merge pull request #16035 from miodvallat/spanish_inquisition
auth: smarter bind zone file freshness check
Miod Vallat [Thu, 4 Sep 2025 10:50:01 +0000 (12:50 +0200)]
Pour some low-fat sugar.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Fri, 29 Aug 2025 15:31:08 +0000 (17:31 +0200)]
Prefer trailing dots in formatRecord() for consistency.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Thu, 4 Sep 2025 10:35:03 +0000 (12:35 +0200)]
Unbreak test harder.
There is no need to feed it zone data anyway, so we don't need to depend
on zone2sql and a preexisting named.conf here.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Thu, 21 Aug 2025 06:37:18 +0000 (08:37 +0200)]
Add a "pretty" flavour to DNSName::canonCompare, to be used by pdnsutil only.
This flavour sorts labels made of digits numerically.
Co-Authored-By: Peter Samuelson <psamuelson@efolder.net>
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Thu, 21 Aug 2025 06:03:14 +0000 (08:03 +0200)]
Use canonCompare_three_way instead of canonCompare twice.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 20 Aug 2025 13:47:44 +0000 (15:47 +0200)]
Update due to pdnsutil output change.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 20 Aug 2025 13:24:26 +0000 (15:24 +0200)]
Sort output for "zone list" and "rrset add" as done everywhere else.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Thu, 4 Sep 2025 09:13:28 +0000 (11:13 +0200)]
Merge pull request #16075 from miodvallat/wtfotd
auth: unbreak test
Otto Moerbeek [Thu, 4 Sep 2025 07:19:58 +0000 (09:19 +0200)]
Merge pull request #15945 from omoerbeek/rec-tidy-pubsuffix
rec pubsuffix: tidy and use C++ strings
Miod Vallat [Thu, 4 Sep 2025 07:06:59 +0000 (09:06 +0200)]
Unbreak test.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 27 Aug 2025 13:04:51 +0000 (15:04 +0200)]
Perform stricter validation of TXT record contents.
Fixes: #11052
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 27 Aug 2025 12:32:37 +0000 (14:32 +0200)]
Rework patchZone() signature and split it in multiple pieces. NFC
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Remi Gacogne [Wed, 3 Sep 2025 15:08:11 +0000 (17:08 +0200)]
Merge pull request #16054 from PowerDNS/dependabot/pip/regression-tests.dnsdist/h2-4.3.0
build(deps): bump h2 from 4.2.0 to 4.3.0 in /regression-tests.dnsdist
Otto Moerbeek [Wed, 3 Sep 2025 10:33:59 +0000 (12:33 +0200)]
Merge pull request #16058 from omoerbeek/version-configure-in
rec/dnsdist: add (back) the line that sets the version in configure.ac
Miod Vallat [Tue, 2 Sep 2025 11:03:22 +0000 (13:03 +0200)]
Merge pull request #16059 from miodvallat/where_is_my_404
REST API: bring back 404 errors
Remi Gacogne [Tue, 2 Sep 2025 11:03:00 +0000 (13:03 +0200)]
Merge pull request #15773 from karelbilek/kb/clarify_auth
dnsdist: Clarify different webserver auths
Remi Gacogne [Tue, 2 Sep 2025 11:00:29 +0000 (13:00 +0200)]
Merge pull request #16064 from rgacogne/ddist-properly-handle-truncation-sendmmsg
dnsdist: Properly handle truncation for UDP responses sent via `sendmmsg`
Miod Vallat [Tue, 2 Sep 2025 10:29:20 +0000 (12:29 +0200)]
Merge pull request #15891 from miodvallat/behind_the_backend
Improve lmdb dyndns test results
Miod Vallat [Tue, 2 Sep 2025 10:28:40 +0000 (12:28 +0200)]
Merge pull request #16024 from miodvallat/update_unless_don't
Correctly handle dnsupdate reject by Lua policy
Jeremy Muriel [Mon, 1 Sep 2025 14:50:06 +0000 (16:50 +0200)]
fix case sensitivity handling for IXFR requests in ixfrdist
TXT record values are case sensitive, but the compilation of
an IXFR difference in ixfrdist doesn't produce a difference
when the change is only a case modification.
This commit removes the toLower() call when comparing record content
to properly handle case-sensitive changes.
Miod Vallat [Tue, 2 Sep 2025 07:07:42 +0000 (09:07 +0200)]
Merge pull request #16050 from miodvallat/what_time_is_it
Display SOA check timestamps in human-readable form
Karel Bilek [Mon, 1 Sep 2025 21:28:46 +0000 (23:28 +0200)]
dnsdist: Clarify different webserver auths