]> git.ipfire.org Git - thirdparty/pdns.git/log
thirdparty/pdns.git
4 weeks agorec meson: check python version to be at least 3.8 15748/head
Otto Moerbeek [Mon, 30 Jun 2025 11:41:04 +0000 (13:41 +0200)] 
rec meson: check python version to be at least 3.8

Fixes #15732

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 weeks agoMerge pull request #15668 from omoerbeek/opentelemetry-trace rec-5.3.0-alpha1
Otto Moerbeek [Tue, 24 Jun 2025 09:36:07 +0000 (11:36 +0200)] 
Merge pull request #15668 from omoerbeek/opentelemetry-trace

rec: generate trace data in OpenTelemetry format

5 weeks agoUse get_view() instead of get_data() 15668/head
Otto Moerbeek [Tue, 24 Jun 2025 08:53:37 +0000 (10:53 +0200)] 
Use get_view() instead of get_data()

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 weeks agoMerge pull request #15717 from rgacogne/ddist-generate-files-when-building-release...
Remi Gacogne [Tue, 24 Jun 2025 08:29:55 +0000 (10:29 +0200)] 
Merge pull request #15717 from rgacogne/ddist-generate-files-when-building-release-tarball

dnsdist: Generate files when building the release tarball

5 weeks agoUse std::copy instead of memcpy
Otto Moerbeek [Tue, 24 Jun 2025 07:56:22 +0000 (09:56 +0200)] 
Use std::copy instead of memcpy

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 weeks agoProcess review comments by rgacogne and Habbie
Otto Moerbeek [Tue, 24 Jun 2025 07:21:41 +0000 (09:21 +0200)] 
Process review comments by rgacogne and Habbie

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
5 weeks agoMerge pull request #15686 from omoerbeek/rec-auth-stop
Otto Moerbeek [Mon, 23 Jun 2025 18:00:22 +0000 (20:00 +0200)] 
Merge pull request #15686 from omoerbeek/rec-auth-stop

rec and auth: implement stop command as alias for quit(-nicely)

5 weeks agodnsdist: We no longer need to call `set-configure-ac-version.sh` during tarball gener... 15717/head
Remi Gacogne [Mon, 23 Jun 2025 15:29:29 +0000 (17:29 +0200)] 
dnsdist: We no longer need to call `set-configure-ac-version.sh` during tarball generation

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 weeks agoMerge pull request #15696 from miodvallat/rmdb_dash_rf
Miod Vallat [Mon, 23 Jun 2025 14:00:58 +0000 (16:00 +0200)] 
Merge pull request #15696 from miodvallat/rmdb_dash_rf

better rm in LMDB #2

5 weeks agoClose race window during which various flag values might be incorrect. 15696/head
Miod Vallat [Mon, 23 Jun 2025 08:27:52 +0000 (10:27 +0200)] 
Close race window during which various flag values might be incorrect.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
5 weeks agoTry and speedup deletion if flag-deleted by not doing get requests.
Miod Vallat [Thu, 19 Jun 2025 13:14:32 +0000 (15:14 +0200)] 
Try and speedup deletion if flag-deleted by not doing get requests.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
5 weeks agoMerge pull request #15716 from miodvallat/commited_to_abortion
Miod Vallat [Mon, 23 Jun 2025 12:32:16 +0000 (14:32 +0200)] 
Merge pull request #15716 from miodvallat/commited_to_abortion

auth backend transaction fixes in error cases

5 weeks agodnsdist: Generate files when building the release tarball
Remi Gacogne [Mon, 23 Jun 2025 08:42:56 +0000 (10:42 +0200)] 
dnsdist: Generate files when building the release tarball

Some build systems are very unhappy with `dnsdist-rust-lib/rust/src/lib.rs`
not existing before actually starting the build process (mostly because
of `cargo-vendor`), so let's make their life easier.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
5 weeks agoMerge pull request #15715 from omoerbeek/rec-coverity-validate-skew
Otto Moerbeek [Mon, 23 Jun 2025 09:02:19 +0000 (11:02 +0200)] 
Merge pull request #15715 from omoerbeek/rec-coverity-validate-skew

rec: avoid implicit truncating cast of inception skew

5 weeks agoBe sure to always abort transactions if we don't plan to commit them. 15716/head
Miod Vallat [Mon, 23 Jun 2025 07:49:59 +0000 (09:49 +0200)] 
Be sure to always abort transactions if we don't plan to commit them.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
5 weeks agorec: avoid implicit truncating cast of inception skew 15715/head
Otto Moerbeek [Mon, 23 Jun 2025 07:07:00 +0000 (09:07 +0200)] 
rec: avoid implicit truncating cast of inception skew

Avoid coverity complaint:
store_truncates_time_t: A time_t value is stored in an integer with too few bits to accommodate it.
The expression sig.d_siginception - g_signatureInceptionSkew is cast to unsigned int.

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoMerge pull request #15711 from rgacogne/ddist-document-python-yaml-needed
Remi Gacogne [Fri, 20 Jun 2025 15:43:43 +0000 (17:43 +0200)] 
Merge pull request #15711 from rgacogne/ddist-document-python-yaml-needed

dnsdist: Python with YAML is no longer optional to build dnsdist

6 weeks agoAdd `rustc` to the spell-checker list 15711/head
Remi Gacogne [Fri, 20 Jun 2025 14:54:04 +0000 (16:54 +0200)] 
Add `rustc` to the spell-checker list

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agodnsdist: As suggested by Otto, we need `rustc` and `cargo`, not just Rust
Remi Gacogne [Fri, 20 Jun 2025 14:51:16 +0000 (16:51 +0200)] 
dnsdist: As suggested by Otto, we need `rustc` and `cargo`, not just Rust

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agodnsdist: Python with YAML is no longer optional to build dnsdist
Remi Gacogne [Fri, 20 Jun 2025 14:37:31 +0000 (16:37 +0200)] 
dnsdist: Python with YAML is no longer optional to build dnsdist

6 weeks agoMerge pull request #15709 from omoerbeek/libssl-depends-on-libcrypto
Otto Moerbeek [Fri, 20 Jun 2025 14:23:23 +0000 (16:23 +0200)] 
Merge pull request #15709 from omoerbeek/libssl-depends-on-libcrypto

libssl depends on libcrypto

6 weeks agolibssl depends on libcrypto 15709/head
Otto Moerbeek [Fri, 20 Jun 2025 13:50:14 +0000 (15:50 +0200)] 
libssl depends on libcrypto

Otherwise all kinds of meson setup logic goes wrong,
symptom: DoH connection from 127.0.0.1:44825 expected ALPN value 'h2', got ''

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoMerge pull request #15706 from rgacogne/rec-fix-zonetocache-unit-tests
Otto Moerbeek [Fri, 20 Jun 2025 12:03:49 +0000 (14:03 +0200)] 
Merge pull request #15706 from rgacogne/rec-fix-zonetocache-unit-tests

rec: Prevent a crash in the ZoneToCache unit tests

6 weeks agoMerge pull request #15703 from rgacogne/ddist-fix-documentation-workflow
Remi Gacogne [Fri, 20 Jun 2025 11:49:07 +0000 (13:49 +0200)] 
Merge pull request #15703 from rgacogne/ddist-fix-documentation-workflow

dnsdist: Fix the documentation workflow

6 weeks agoMerge pull request #15705 from omoerbeek/lmdb-unsafe
Otto Moerbeek [Fri, 20 Jun 2025 11:30:04 +0000 (13:30 +0200)] 
Merge pull request #15705 from omoerbeek/lmdb-unsafe

auth: rename bswap64 to pdns_bswap64.

6 weeks agorec: Prevent a crash in the ZoneToCache unit tests 15706/head
Remi Gacogne [Fri, 20 Jun 2025 11:23:01 +0000 (13:23 +0200)] 
rec: Prevent a crash in the ZoneToCache unit tests

Since 753ad2390bfbc90f6bc1b68f980ef4bcdc2cfddc ZoneToCache checks
whether a given zone has a recursive forward rule, so we need the
Domain map to be properly initialized in all tests, as they can be
executed in random order.

Fixes:
```
ThreadSanitizer:DEADLYSIGNAL
==35969==ERROR: ThreadSanitizer: SEGV on unknown address 0x000000000018 (pc 0x5568e9f8bb04 bp 0x4c00000000000 sp 0x7ffcc13b77f0 T35969)
==35969==The signal is caused by a READ memory access.
==35969==Hint: address points to the zero page.
    #0 std::_Hashtable<DNSName, std::pair<DNSName const, SyncRes::AuthDomain>, std::allocator<std::pair<DNSName const, SyncRes::AuthDomain> >, std::__detail::_Select1st, std::equal_to<DNSName>, std::hash<DNSName>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::empty() const /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/bits/hashtable.h:653:23 (testrunner+0x47fb04)
    #1 std::unordered_map<DNSName, SyncRes::AuthDomain, std::hash<DNSName>, std::equal_to<DNSName>, std::allocator<std::pair<DNSName const, SyncRes::AuthDomain> > >::empty() const /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/bits/unordered_map.h:306:21 (testrunner+0x47fb04)
    #2 SyncRes::getBestAuthZone(DNSName*) /__w/pdns/pdns/pdns/recursordist/pdns-recursor-0.0.0-git1/syncres.cc:2464:29 (testrunner+0x47fb04)
    #3 SyncRes::isRecursiveForward(DNSName const&) /__w/pdns/pdns/pdns/recursordist/pdns-recursor-0.0.0-git1/syncres.cc:1098:21 (testrunner+0x47fb04)
    #4 ZoneData::ZoneToCache(RecZoneToCache::Config const&) /__w/pdns/pdns/pdns/recursordist/pdns-recursor-0.0.0-git1/rec-zonetocache.cc:423:28 (testrunner+0x404931)
    #5 RecZoneToCache::ZoneToCache(RecZoneToCache::Config const&, RecZoneToCache::State&) /__w/pdns/pdns/pdns/recursordist/pdns-recursor-0.0.0-git1/rec-zonetocache.cc:473:10 (testrunner+0x4059fd)
    #6 rec_zonetocache::zonemdGenericTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pdns::ZoneMD::Config, pdns::ZoneMD::Config, unsigned long) /__w/pdns/pdns/pdns/recursordist/pdns-recursor-0.0.0-git1/test-rec-zonetocache.cc:157:3 (testrunner+0x7a7113)
    #7 rec_zonetocache::test_zonetocachegeneric::test_method() /__w/pdns/pdns/pdns/recursordist/pdns-recursor-0.0.0-git1/test-rec-zonetocache.cc:177:3 (testrunner+0x7a60a5)
    #8 rec_zonetocache::test_zonetocachegeneric_invoker() /__w/pdns/pdns/pdns/recursordist/pdns-recursor-0.0.0-git1/test-rec-zonetocache.cc:173:1 (testrunner+0x7a60a5)
    #9 boost::detail::function::void_function_invoker0<void (*)(), void>::invoke(boost::detail::function::function_buffer&) /usr/include/boost/function/function_template.hpp:117:11 (testrunner+0x57dfab)
    #10 <null> <null> (libboost_unit_test_framework.so.1.74.0+0x323fd)
    #11 boost::execution_monitor::catch_signals(boost::function<int ()> const&) <null> (libboost_unit_test_framework.so.1.74.0+0x30b0c)
    #12 boost::execution_monitor::execute(boost::function<int ()> const&) <null> (libboost_unit_test_framework.so.1.74.0+0x30b90)
    #13 boost::execution_monitor::vexecute(boost::function<void ()> const&) <null> (libboost_unit_test_framework.so.1.74.0+0x30c60)
    #14 boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long) <null> (libboost_unit_test_framework.so.1.74.0+0x5f1a0)
    #15 <null> <null> (libboost_unit_test_framework.so.1.74.0+0x37cdf)
    #16 <null> <null> (libboost_unit_test_framework.so.1.74.0+0x381d0)
    #17 <null> <null> (libboost_unit_test_framework.so.1.74.0+0x381d0)
    #18 boost::unit_test::framework::run(unsigned long, bool) <null> (libboost_unit_test_framework.so.1.74.0+0x3bf36)
    #19 boost::unit_test::unit_test_main(bool (*)(), int, char**) <null> (libboost_unit_test_framework.so.1.74.0+0x5e10d)
    #20 main /__w/pdns/pdns/pdns/recursordist/pdns-recursor-0.0.0-git1/testrunner.cc:84:10 (testrunner+0xc85591)
    #21 <null> <null> (libc.so.6+0x27249)
    #22 __libc_start_main <null> (libc.so.6+0x27304)
    #23 _start <null> (testrunner+0x1b79e0)
```

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agoTypo in comment 15705/head
Otto Moerbeek [Fri, 20 Jun 2025 10:48:45 +0000 (12:48 +0200)] 
Typo in comment

Co-authored-by: Miod Vallat <miod.vallat@powerdns.com>
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoauth: rename bswap64 to pdns_bswap64.
Otto Moerbeek [Fri, 20 Jun 2025 10:44:48 +0000 (12:44 +0200)] 
auth: rename bswap64 to pdns_bswap64.

Using bswap64 causes infinite reursion if your system has a #define bswap64 __builtin_bswap64

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agodocumentation: DNSdist needs python-yaml 15703/head
Remi Gacogne [Fri, 20 Jun 2025 09:54:50 +0000 (11:54 +0200)] 
documentation: DNSdist needs python-yaml

6 weeks agodnsdist: Fix the documentation workflow
Remi Gacogne [Fri, 20 Jun 2025 09:43:18 +0000 (11:43 +0200)] 
dnsdist: Fix the documentation workflow

We need to generate the parts of the documentation sources that are no
longer present in the repository before building it.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agoMerge pull request #15701 from rgacogne/ddist-20-b1-changelog-secpoll
Remi Gacogne [Fri, 20 Jun 2025 09:32:42 +0000 (11:32 +0200)] 
Merge pull request #15701 from rgacogne/ddist-20-b1-changelog-secpoll

dnsdist: Update ChangeLog and security polling zone for 2.0.0-beta1

6 weeks agoMerge pull request #15700 from omoerbeek/coverity-20250620
Otto Moerbeek [Fri, 20 Jun 2025 08:23:31 +0000 (10:23 +0200)] 
Merge pull request #15700 from omoerbeek/coverity-20250620

Two Coverity issues, the truncation is meant to be

6 weeks agoTwo Coverity issues, the truncation is meant to be 15700/head
Otto Moerbeek [Fri, 20 Jun 2025 07:15:34 +0000 (09:15 +0200)] 
Two Coverity issues, the truncation is meant to be

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoMerge pull request #15697 from Habbie/pickselfweighted-added-5 dnsdist-2.0.0-beta1
Peter van Dijk [Thu, 19 Jun 2025 15:24:09 +0000 (17:24 +0200)] 
Merge pull request #15697 from Habbie/pickselfweighted-added-5

auth docs: note that pickselfweighted() is new in auth 5

6 weeks agoauth docs: note that pickselfweighted() is new in auth 5 15697/head
Peter van Dijk [Thu, 19 Jun 2025 14:53:18 +0000 (16:53 +0200)] 
auth docs: note that pickselfweighted() is new in auth 5

6 weeks agoMerge pull request #15684 from PowerDNS/dependabot/pip/regression-tests.recursor...
Otto Moerbeek [Thu, 19 Jun 2025 14:17:38 +0000 (16:17 +0200)] 
Merge pull request #15684 from PowerDNS/dependabot/pip/regression-tests.recursor-dnssec/protobuf-5.29.5

build(deps): bump protobuf from 5.28.2 to 5.29.5 in /regression-tests.recursor-dnssec

6 weeks agoDrop unused argument.
Miod Vallat [Thu, 19 Jun 2025 12:50:16 +0000 (14:50 +0200)] 
Drop unused argument.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agoMake lmdb del() operations throw upon error.
Miod Vallat [Thu, 19 Jun 2025 10:29:47 +0000 (12:29 +0200)] 
Make lmdb del() operations throw upon error.

In the current state of the code, in flag-deleted mode, failures always
throw; but in regular mode, in the unlikely event of an error during
deletion from cursor, the returned value would be either ignored or...
used to throw an exception.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agoMerge pull request #15693 from miodvallat/rmdb
Miod Vallat [Thu, 19 Jun 2025 14:05:55 +0000 (16:05 +0200)] 
Merge pull request #15693 from miodvallat/rmdb

better rm in LMDB

6 weeks agodnsdist: Update ChangeLog and security polling zone for 2.0.0-beta1 15701/head
Remi Gacogne [Thu, 19 Jun 2025 13:41:34 +0000 (15:41 +0200)] 
dnsdist: Update ChangeLog and security polling zone for 2.0.0-beta1

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agoUse faster logic in deleteDomainRecords(). 15693/head
Miod Vallat [Thu, 19 Jun 2025 13:30:26 +0000 (15:30 +0200)] 
Use faster logic in deleteDomainRecords().

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agoDistinguish argument value and return value
Otto Moerbeek [Thu, 19 Jun 2025 09:03:43 +0000 (11:03 +0200)] 
Distinguish argument value and return value

Having full attribute names is something for later (maybe).

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoTidy
Otto Moerbeek [Thu, 19 Jun 2025 08:49:53 +0000 (10:49 +0200)] 
Tidy

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoMerge pull request #15692 from omoerbeek/rec-yaml-aliases
Otto Moerbeek [Thu, 19 Jun 2025 08:47:59 +0000 (10:47 +0200)] 
Merge pull request #15692 from omoerbeek/rec-yaml-aliases

rec: introduce aliases for camelCase field names

6 weeks agoMerge pull request #15690 from rgacogne/ddist-meta-api
Remi Gacogne [Thu, 19 Jun 2025 08:40:27 +0000 (10:40 +0200)] 
Merge pull request #15690 from rgacogne/ddist-meta-api

dnsdist: Add Lua APIs to set Meta tags in protobuf messages

6 weeks agoUse std::copy and std::fill, as suggested by rgacogne
Otto Moerbeek [Thu, 19 Jun 2025 08:36:25 +0000 (10:36 +0200)] 
Use std::copy and std::fill, as suggested by rgacogne

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoEncode TraceID and SpanID into a single EDNS option record, as suggested by Habbie
Otto Moerbeek [Thu, 19 Jun 2025 08:28:53 +0000 (10:28 +0200)] 
Encode TraceID and SpanID into a single EDNS option record, as suggested by Habbie

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agodnsdist: Apply Otto's suggestions (thanks!) 15690/head
Remi Gacogne [Thu, 19 Jun 2025 07:56:07 +0000 (09:56 +0200)] 
dnsdist: Apply Otto's suggestions (thanks!)

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agoMerge pull request #15691 from rgacogne/ddist-completion-chains
Remi Gacogne [Thu, 19 Jun 2025 07:42:59 +0000 (09:42 +0200)] 
Merge pull request #15691 from rgacogne/ddist-completion-chains

dnsdist: Generate completion and help for rule chains

6 weeks agoMerge pull request #15695 from omoerbeek/dnsdist-meson-libcrypto
Otto Moerbeek [Thu, 19 Jun 2025 07:32:28 +0000 (09:32 +0200)] 
Merge pull request #15695 from omoerbeek/dnsdist-meson-libcrypto

dnsdist meson: followup to #15685 to avoid compiler warnings

6 weeks agoMerge pull request #15646 from Habbie/rrsig-times-1982
Otto Moerbeek [Thu, 19 Jun 2025 07:28:06 +0000 (09:28 +0200)] 
Merge pull request #15646 from Habbie/rrsig-times-1982

rec validate: use rfc1982 math for RRSIG timestamps

6 weeks agoMerge pull request #15652 from omoerbeek/rec-ztc-vs-recforward
Otto Moerbeek [Thu, 19 Jun 2025 07:24:09 +0000 (09:24 +0200)] 
Merge pull request #15652 from omoerbeek/rec-ztc-vs-recforward

rec: when using ZTC, do not store non-auth data if the name is subject to recursive forwarding

6 weeks agoAdd missed zoneSizeHint 15692/head
Otto Moerbeek [Thu, 19 Jun 2025 07:06:41 +0000 (09:06 +0200)] 
Add missed zoneSizeHint

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agodnsdist meson: followup to #15685 to avoid compiler warnings 15695/head
Otto Moerbeek [Thu, 19 Jun 2025 07:01:38 +0000 (09:01 +0200)] 
dnsdist meson: followup to #15685 to avoid compiler warnings

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoSimple test for replaceRRSet ANY operation.
Miod Vallat [Wed, 18 Jun 2025 12:00:48 +0000 (14:00 +0200)] 
Simple test for replaceRRSet ANY operation.

Also exercize the newest pdnsutil syntax while there.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agoCorrectly handle QType::ANY in replaceRRSet().
Miod Vallat [Wed, 18 Jun 2025 09:47:30 +0000 (11:47 +0200)] 
Correctly handle QType::ANY in replaceRRSet().

Co-Authored-By: HÃ¥kan Lindqvist <h@qw.se>
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agoRework deleteDomainRecords() interface.
Miod Vallat [Wed, 18 Jun 2025 09:26:49 +0000 (11:26 +0200)] 
Rework deleteDomainRecords() interface.

NFC yet, will benefit upcoming commits.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agodnsdist: Reorder files in Makefile.am 15691/head
Remi Gacogne [Tue, 17 Jun 2025 14:23:28 +0000 (16:23 +0200)] 
dnsdist: Reorder files in Makefile.am

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agodnsdist: Yet another formatting mistake
Remi Gacogne [Tue, 17 Jun 2025 14:21:14 +0000 (16:21 +0200)] 
dnsdist: Yet another formatting mistake

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agodnsdist: Appease code formatting daemon
Remi Gacogne [Tue, 17 Jun 2025 14:19:10 +0000 (16:19 +0200)] 
dnsdist: Appease code formatting daemon

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agodnsdist: Generate completion and help for rule chains
Remi Gacogne [Tue, 17 Jun 2025 14:11:43 +0000 (16:11 +0200)] 
dnsdist: Generate completion and help for rule chains

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agodnsdist: Move completion-related code to a separate file
Remi Gacogne [Tue, 17 Jun 2025 13:03:33 +0000 (15:03 +0200)] 
dnsdist: Move completion-related code to a separate file

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agoAdd docs, typos
Otto Moerbeek [Tue, 17 Jun 2025 12:39:59 +0000 (14:39 +0200)] 
Add docs, typos

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoMerge pull request #15689 from omoerbeek/auth-no-more-instances-vec
Otto Moerbeek [Tue, 17 Jun 2025 12:12:40 +0000 (14:12 +0200)] 
Merge pull request #15689 from omoerbeek/auth-no-more-instances-vec

auth: stop maintaining vector of ueberbackend instances

6 weeks agoMerge pull request #15687 from rgacogne/ddist-remove-generated-doc-files
Remi Gacogne [Tue, 17 Jun 2025 10:24:59 +0000 (12:24 +0200)] 
Merge pull request #15687 from rgacogne/ddist-remove-generated-doc-files

dnsdist: Remove generated YAML documentation files

6 weeks agorec: provide snake_case aliases for CamelCase names in YAML config
Otto Moerbeek [Wed, 30 Apr 2025 13:12:37 +0000 (15:12 +0200)] 
rec: provide snake_case aliases for CamelCase names in YAML config

6 weeks agodnsdist: Add Lua APIs to set Meta tags in protobuf messages
Remi Gacogne [Mon, 16 Jun 2025 09:01:31 +0000 (11:01 +0200)] 
dnsdist: Add Lua APIs to set Meta tags in protobuf messages

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agoauth: stop maintaining vector of backend instances 15689/head
Otto Moerbeek [Tue, 17 Jun 2025 09:47:11 +0000 (11:47 +0200)] 
auth: stop maintaining vector of backend instances

Unused. Fixes #15688

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agodnsdist: Remove generated YAML documentation files 15687/head
Remi Gacogne [Tue, 17 Jun 2025 08:48:12 +0000 (10:48 +0200)] 
dnsdist: Remove generated YAML documentation files

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agoMerge pull request #15682 from pieterlexis/superfluous-code-block
Remi Gacogne [Tue, 17 Jun 2025 09:29:58 +0000 (11:29 +0200)] 
Merge pull request #15682 from pieterlexis/superfluous-code-block

doc(dnsdist): remove superfluous code block in YAML config

6 weeks agoMerge pull request #15685 from omoerbeek/dnsdist-ssl-crypto
Otto Moerbeek [Tue, 17 Jun 2025 08:52:44 +0000 (10:52 +0200)] 
Merge pull request #15685 from omoerbeek/dnsdist-ssl-crypto

meson: Pick -lcrypto up from the spot defined by dep_libcrypto

6 weeks agodnsdist: remove superfluous code block in YAML config 15682/head
Remi Gacogne [Tue, 17 Jun 2025 08:41:40 +0000 (10:41 +0200)] 
dnsdist: remove superfluous code block in YAML config

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
6 weeks agorec and auth: implement stop command as alias for quit(-nicely) 15686/head
Otto Moerbeek [Tue, 17 Jun 2025 08:24:52 +0000 (10:24 +0200)] 
rec and auth: implement stop command as alias for quit(-nicely)

Fixes #15674

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoMerge pull request #15676 from nokia/restartcnt
Remi Gacogne [Tue, 17 Jun 2025 08:14:37 +0000 (10:14 +0200)] 
Merge pull request #15676 from nokia/restartcnt

dnsdist: add a count to track the number of query restarts

6 weeks agoMerge pull request #15670 from nokia/policy
Remi Gacogne [Tue, 17 Jun 2025 08:11:11 +0000 (10:11 +0200)] 
Merge pull request #15670 from nokia/policy

dnsdist: add route policy of first ordered then weighted

6 weeks agoPick -lcrypto up from the spot defined by dep_libcrypto 15685/head
Otto Moerbeek [Tue, 17 Jun 2025 07:59:29 +0000 (09:59 +0200)] 
Pick -lcrypto up from the spot defined by dep_libcrypto

Also avoid a bunch of warning: as compile commands don't take -L:
c++: warning: argument unused during compilation: '-L/usr/local/eboringssl/lib' [-Wunused-command-line -argument]

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
6 weeks agoIndentation correction 15676/head
Oliver Chen [Tue, 17 Jun 2025 04:00:14 +0000 (04:00 +0000)] 
Indentation correction

6 weeks agobuild(deps): bump protobuf in /regression-tests.recursor-dnssec 15684/head
dependabot[bot] [Tue, 17 Jun 2025 04:00:00 +0000 (04:00 +0000)] 
build(deps): bump protobuf in /regression-tests.recursor-dnssec

Bumps [protobuf](https://github.com/protocolbuffers/protobuf) from 5.28.2 to 5.29.5.
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Changelog](https://github.com/protocolbuffers/protobuf/blob/main/protobuf_release.bzl)
- [Commits](https://github.com/protocolbuffers/protobuf/compare/v5.28.2...v5.29.5)

---
updated-dependencies:
- dependency-name: protobuf
  dependency-version: 5.29.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
6 weeks agoAdd regression test for the restart counting
Oliver Chen [Tue, 17 Jun 2025 03:49:48 +0000 (03:49 +0000)] 
Add regression test for the restart counting

6 weeks agoOptimize policy with already sorted servers and add tag testing 15670/head
Oliver Chen [Tue, 17 Jun 2025 03:01:02 +0000 (03:01 +0000)] 
Optimize policy with already sorted servers and add tag testing

6 weeks agodoc(dnsdist): remove superfluous code block in YAML config
Pieter Lexis [Mon, 16 Jun 2025 20:24:58 +0000 (22:24 +0200)] 
doc(dnsdist): remove superfluous code block in YAML config

6 weeks agoMerge pull request #15679 from miodvallat/fragmented_sun
Miod Vallat [Mon, 16 Jun 2025 13:56:45 +0000 (15:56 +0200)] 
Merge pull request #15679 from miodvallat/fragmented_sun

Provide an IP_OFFMASK value for systems lacking it

6 weeks agoMerge pull request #15681 from miodvallat/geoipfeetshooting
Miod Vallat [Mon, 16 Jun 2025 12:46:27 +0000 (14:46 +0200)] 
Merge pull request #15681 from miodvallat/geoipfeetshooting

Lua GeoIPQueryAttribute documentation update

6 weeks agoFix documentation build warning. 15681/head
Miod Vallat [Mon, 16 Jun 2025 12:13:59 +0000 (14:13 +0200)] 
Fix documentation build warning.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agoMention that GeoIPQueryAttribute symbolic constants in Lua are v5+.
Miod Vallat [Mon, 16 Jun 2025 12:13:09 +0000 (14:13 +0200)] 
Mention that GeoIPQueryAttribute symbolic constants in Lua are v5+.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agoProvide an IP_OFFMASK value for systems lacking it. 15679/head
Miod Vallat [Mon, 16 Jun 2025 10:58:58 +0000 (12:58 +0200)] 
Provide an IP_OFFMASK value for systems lacking it.

Fixes: #8060
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
6 weeks agoMerge pull request #15662 from rgacogne/ddist-apply-yaml-items-early
Remi Gacogne [Mon, 16 Jun 2025 07:32:28 +0000 (09:32 +0200)] 
Merge pull request #15662 from rgacogne/ddist-apply-yaml-items-early

dnsdist: Apply generic YAML configuration items early

6 weeks agoChange integer type from uint8_t to int in the docs
Oliver Chen [Mon, 16 Jun 2025 06:08:12 +0000 (06:08 +0000)] 
Change integer type from uint8_t to int in the docs

6 weeks agoMerge pull request #15672 from miodvallat/silencing_the_signing
Miod Vallat [Mon, 16 Jun 2025 06:04:22 +0000 (08:04 +0200)] 
Merge pull request #15672 from miodvallat/silencing_the_signing

Stop listing the trusted keys at the end of tests

6 weeks agoMerge pull request #15661 from omoerbeek/rec-nta-retrieval
Otto Moerbeek [Mon, 16 Jun 2025 05:50:46 +0000 (07:50 +0200)] 
Merge pull request #15661 from omoerbeek/rec-nta-retrieval

rec: fix negativetrustanchor.server CH TXT query processing (disabled by default)

6 weeks agodnsdist: add a count to track the number of query restarts
Oliver Chen [Mon, 16 Jun 2025 00:52:24 +0000 (00:52 +0000)] 
dnsdist: add a count to track the number of query restarts

7 weeks agoAddress PR review comments
Oliver Chen [Sat, 14 Jun 2025 13:18:58 +0000 (13:18 +0000)] 
Address PR review comments

7 weeks agoMerge pull request #15654 from Habbie/rec-build-amazon2023-and-assorted-nits
Peter van Dijk [Fri, 13 Jun 2025 21:10:09 +0000 (23:10 +0200)] 
Merge pull request #15654 from Habbie/rec-build-amazon2023-and-assorted-nits

rec: amazon2023 build fix + nits

7 weeks agoMake clang-tidy checks happy
Oliver Chen [Fri, 13 Jun 2025 13:30:11 +0000 (13:30 +0000)] 
Make clang-tidy checks happy

7 weeks agoStop listing the trusted keys at the end of tests. 15672/head
Miod Vallat [Fri, 13 Jun 2025 12:44:33 +0000 (14:44 +0200)] 
Stop listing the trusted keys at the end of tests.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
7 weeks agodnsdist: add route policy of first ordered then weighted
Oliver Chen [Fri, 13 Jun 2025 11:20:48 +0000 (11:20 +0000)] 
dnsdist: add route policy of first ordered then weighted

User may require two levels of routing policy to select downstream
servers. First choose the least ordered, then distribute queries
according to weights among the same ordered servers. It also added
special filtering on selecting servers for query restart. If user
sets the required tag in the restarted query then the policy will
not select server(s) that had been tried before.

7 weeks agoMerge pull request #15640 from rgacogne/ddist-remove-records-on-rcode-action
Remi Gacogne [Fri, 13 Jun 2025 10:58:43 +0000 (12:58 +0200)] 
Merge pull request #15640 from rgacogne/ddist-remove-records-on-rcode-action

dnsdist: Clean up existing records when turning query into response

7 weeks agoMerge pull request #15221 from omoerbeek/loc-lat-long
Otto Moerbeek [Fri, 13 Jun 2025 10:34:37 +0000 (12:34 +0200)] 
Merge pull request #15221 from omoerbeek/loc-lat-long

Compute LOC text representation without using floating point for latitude and longitude

7 weeks agodnsdist: Apply Otto's suggestion of reordering ancount/arcount 15640/head
Remi Gacogne [Fri, 13 Jun 2025 10:05:46 +0000 (12:05 +0200)] 
dnsdist: Apply Otto's suggestion of reordering ancount/arcount

Co-authored-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Signed-off-by: Remi Gacogne <github@coredump.fr>
7 weeks agoMerge pull request #15602 from rgacogne/ddist-fix-edns-self-gen-from-packet
Remi Gacogne [Fri, 13 Jun 2025 10:05:07 +0000 (12:05 +0200)] 
Merge pull request #15602 from rgacogne/ddist-fix-edns-self-gen-from-packet

dnsdist: Do not replace EDNS in answers self-generated from a packet