]>
git.ipfire.org Git - thirdparty/pdns.git/log
Remi Gacogne [Fri, 5 Apr 2024 11:27:19 +0000 (13:27 +0200)]
dnsdist: Update secpoll and ChangeLog for 1.9.3
Remi Gacogne [Fri, 5 Apr 2024 08:19:42 +0000 (10:19 +0200)]
Merge pull request #14032 from rgacogne/ddist-192-changelog-secpoll
dnsdist: Update ChangeLog and secpoll for DNSdist 1.9.2
Remi Gacogne [Fri, 5 Apr 2024 07:29:31 +0000 (09:29 +0200)]
Merge pull request #14030 from rgacogne/enable-leak-detection-unit-tests
ci: Enable LeakSanitizer during dnsdist and recursor unit tests
Remi Gacogne [Fri, 5 Apr 2024 07:09:28 +0000 (09:09 +0200)]
Merge pull request #14034 from rgacogne/ddist-document-console-key-format
dnsdist: Document how to generate a console key without dnsdist
Otto Moerbeek [Fri, 5 Apr 2024 05:29:37 +0000 (07:29 +0200)]
Merge pull request #14025 from omoerbeek/stat_t-tidy
stat_t tidy
Otto Moerbeek [Fri, 5 Apr 2024 05:27:04 +0000 (07:27 +0200)]
Merge pull request #14026 from omoerbeek/rec-docs-no-query-cache
rec docs: we do not have a query cache
Fred Morcos [Thu, 4 Apr 2024 17:54:44 +0000 (19:54 +0200)]
Merge pull request #14035 from fredmorcos/meson-fix-lmdb-gettime
Meson fix: `lmdb-safe` needs gettime
Remi Gacogne [Thu, 4 Apr 2024 14:37:13 +0000 (16:37 +0200)]
dnsdist: Document the `-C /dev/null` trick to generate a key as well
As suggested by @phonedph1 (thanks!).
Peter van Dijk [Thu, 4 Apr 2024 14:19:51 +0000 (16:19 +0200)]
Merge pull request #14033 from rgacogne/auth-remotebackend-unit-tests-leak
auth: Use smart pointers in the remote backend unit tests
Fred Morcos [Thu, 4 Apr 2024 14:04:07 +0000 (16:04 +0200)]
Meson: Fix lmdb-safe needs gettime
Fred Morcos [Thu, 4 Apr 2024 13:56:56 +0000 (15:56 +0200)]
Merge pull request #14031 from fredmorcos/meson-fix-libdecaf-detection
Meson fix for `libdecaf` detection
Remi Gacogne [Thu, 4 Apr 2024 13:15:55 +0000 (15:15 +0200)]
dnsdist: Document how to generate a console key without dnsdist
Remi Gacogne [Thu, 4 Apr 2024 13:01:02 +0000 (15:01 +0200)]
auth: Use smart pointers in the remote backend unit tests
Peter van Dijk [Thu, 4 Apr 2024 12:34:27 +0000 (14:34 +0200)]
Merge pull request #13960 from cmouse/remote-unit-test
Convert remotebackend unit tests to use python
Fred Morcos [Thu, 4 Apr 2024 12:07:02 +0000 (14:07 +0200)]
Meson: Integrate libdecaf library and header detection
Remi Gacogne [Thu, 4 Apr 2024 10:40:45 +0000 (12:40 +0200)]
dnsdist: Update ChangeLog and secpoll for DNSdist 1.9.2
Fred Morcos [Thu, 4 Apr 2024 11:46:05 +0000 (13:46 +0200)]
Meson: Rework libdecaf header file detection
Peter van Dijk [Thu, 4 Apr 2024 11:46:04 +0000 (13:46 +0200)]
Merge pull request #13980 from karelbilek/d_xfr
Do shuffle TCP responses except *XFRs
Fred Morcos [Thu, 4 Apr 2024 09:57:15 +0000 (11:57 +0200)]
Meson: Improve (and fix) libdecaf detection
Peter van Dijk [Thu, 4 Apr 2024 11:31:22 +0000 (13:31 +0200)]
fix typo
Peter van Dijk [Thu, 4 Apr 2024 10:41:32 +0000 (12:41 +0200)]
Merge pull request #13596 from eli-schwartz/configure-correctness
configure.ac fixup: do not require bash
Fred Morcos [Thu, 4 Apr 2024 09:56:57 +0000 (11:56 +0200)]
Meson: Use include_directories for pgsqlbackend
Remi Gacogne [Thu, 4 Apr 2024 09:13:32 +0000 (11:13 +0200)]
Merge pull request #14029 from rgacogne/auth-pkcs11-finalize-modules
auth: Properly finalize PKCS11 modules before releasing them
Remi Gacogne [Thu, 4 Apr 2024 09:13:19 +0000 (11:13 +0200)]
Merge pull request #14028 from rgacogne/auth-backend-factories
auth: Wrap backend factories in smart pointers
Remi Gacogne [Tue, 2 Apr 2024 10:33:43 +0000 (12:33 +0200)]
ci: Enable LeakSanitizer during dnsdist and recursor unit tests
We need to fix some one-time allocations in the authoritative server
that are reported as leaked memory before we can enabled it there.
See:
- https://github.com/PowerDNS/pdns/pull/14028
- https://github.com/PowerDNS/pdns/pull/14029
There is also a leak in the remotebackend unit tests that I will
investigate after https://github.com/PowerDNS/pdns/pull/13960 has
been merged.
Remi Gacogne [Tue, 2 Apr 2024 14:20:14 +0000 (16:20 +0200)]
auth: Properly finalize PKCS11 modules before releasing them
This gets rid of two leaks reported by LeakSanitizer when running our
unit tests:
```
Direct leak of 48 byte(s) in 1 object(s) allocated from:
#0 0x5fe6c6e7d099 in malloc (/pdns/pdns/testrunner+0x220099) (BuildId:
08d4c369b5f2f19f183aa5d6ab931a6653b70ab9 )
#1 0x7e6cdc6a0964 (/usr/lib/libp11-kit.so.0+0x36964) (BuildId:
307da6c0b5c7d87a1b0fd0a63e0bda93c9375e8a )
Indirect leak of 72 byte(s) in 1 object(s) allocated from:
#0 0x5fe6c6e7d401 in calloc (/pdns/pdns/testrunner+0x220401) (BuildId:
08d4c369b5f2f19f183aa5d6ab931a6653b70ab9 )
#1 0x7e6cdc6a09b6 (/usr/lib/libp11-kit.so.0+0x369b6) (BuildId:
307da6c0b5c7d87a1b0fd0a63e0bda93c9375e8a )
```
Remi Gacogne [Tue, 2 Apr 2024 14:05:51 +0000 (16:05 +0200)]
auth: Wrap backend factories in smart pointers
Aki Tuomi [Thu, 21 Mar 2024 17:41:56 +0000 (19:41 +0200)]
tasks: Dump all remotebackend logs, including server logs
Aki Tuomi [Thu, 21 Mar 2024 11:35:23 +0000 (13:35 +0200)]
tasks: Replace ruby with python
Aki Tuomi [Thu, 21 Mar 2024 17:27:10 +0000 (19:27 +0200)]
remotebackend: Remove stray files
Aki Tuomi [Thu, 21 Mar 2024 14:11:18 +0000 (16:11 +0200)]
remotebackend: Convert regression tests to python
Aki Tuomi [Wed, 20 Mar 2024 13:49:27 +0000 (15:49 +0200)]
remotebackend: Convert unit tests to python
Aki Tuomi [Wed, 20 Mar 2024 21:36:51 +0000 (23:36 +0200)]
remotebackend: Do not send extra NUL with zeromq
Aki Tuomi [Wed, 20 Mar 2024 20:39:54 +0000 (22:39 +0200)]
remotebackend: Use asString for serial
Aki Tuomi [Wed, 20 Mar 2024 13:43:00 +0000 (15:43 +0200)]
remotebackend: Fix example.com ID
It is going to be 3, not 2.
Otto Moerbeek [Wed, 3 Apr 2024 13:43:21 +0000 (15:43 +0200)]
rec docs: we do not have a query cache
Otto Moerbeek [Wed, 3 Apr 2024 12:25:15 +0000 (14:25 +0200)]
A few type fixes, mostly cosmetical
Otto Moerbeek [Wed, 27 Mar 2024 13:21:42 +0000 (14:21 +0100)]
Tidy stat_t
Eli Schwartz [Mon, 11 Dec 2023 23:18:11 +0000 (18:18 -0500)]
configure: remove broken bashism
In a configure check that was carefully written for pre-unix-wars
versions of the bourne shell, some code which was only valid using GNU
bash was included.
The `==` operator is a bash-specific alias for `=`. It behaves exactly
the same, except more confusing. It contains no added functionality,
other than making an otherwise /bin/sh compatible script only work when
/bin/sh is a symlink to /bin/bash.
Otto Moerbeek [Tue, 2 Apr 2024 14:33:04 +0000 (16:33 +0200)]
Merge pull request #14018 from omoerbeek/rec-proxy-exception
Rec: add setting to exclude specific listen socket addresses from requiring proxy protocol
Otto Moerbeek [Tue, 2 Apr 2024 13:20:16 +0000 (15:20 +0200)]
Typo
Co-authored-by: Remi Gacogne <github@coredump.fr>
Otto Moerbeek [Tue, 2 Apr 2024 12:33:35 +0000 (14:33 +0200)]
Merge pull request #14020 from omoerbeek/rec-compiling-rust-dcos
rec: mention rust compiler in compiling docs
Otto Moerbeek [Tue, 2 Apr 2024 11:52:57 +0000 (13:52 +0200)]
rec: mention rust compiler in compiling docs
Fixes #14019
Otto Moerbeek [Tue, 2 Apr 2024 08:33:45 +0000 (10:33 +0200)]
Add test for proxy exception mechanism
Otto Moerbeek [Tue, 2 Apr 2024 08:02:07 +0000 (10:02 +0200)]
rec: allow exception to proxy protocal usage for specific listen addresses
Remi Gacogne [Tue, 2 Apr 2024 08:58:42 +0000 (10:58 +0200)]
Merge pull request #14006 from rgacogne/fdwrapper-negative-values
FDWrapper: Do not try to close negative file descriptors
Remi Gacogne [Tue, 2 Apr 2024 07:54:15 +0000 (09:54 +0200)]
FDWrapper: Always reset the internal descriptor to -1
Even if it was a different negative value, which happens for example
with the bpf helper functions which return `-errno`.
Remi Gacogne [Fri, 29 Mar 2024 16:28:49 +0000 (17:28 +0100)]
Merge pull request #14001 from rgacogne/ddist-ffi-policy-no-server
dnsdist: Support "no server available" result from Lua FFI LB policies
Remi Gacogne [Fri, 29 Mar 2024 15:54:22 +0000 (16:54 +0100)]
dnsdist: Delint test-dnsdistlbpolicies_cc.cc
Remi Gacogne [Fri, 29 Mar 2024 15:35:55 +0000 (16:35 +0100)]
dnsdist: Fix clang-tidy warnings
Remi Gacogne [Fri, 29 Mar 2024 15:28:15 +0000 (16:28 +0100)]
Merge pull request #13922 from rgacogne/ddist-cachemiss-rule-chain
dnsdist: Add a new query rules chain triggered after a cache miss
Remi Gacogne [Fri, 29 Mar 2024 15:06:47 +0000 (16:06 +0100)]
Merge pull request #14005 from rgacogne/ddist-tcp-incoming-release
dnsdist: Release incoming TCP connection right away on backend failure
Remi Gacogne [Fri, 29 Mar 2024 15:04:10 +0000 (16:04 +0100)]
Merge pull request #14003 from rgacogne/ddist-fix-in-doh-crash
dnsdist: Fix a null-deref in incoming DoH w/ nghttp2
Remi Gacogne [Fri, 29 Mar 2024 15:03:24 +0000 (16:03 +0100)]
Merge pull request #14004 from rgacogne/ddist-tcp-downstream-release
dnsdist: Release failed TCP backend connections more quickly
Remi Gacogne [Fri, 29 Mar 2024 14:57:19 +0000 (15:57 +0100)]
dnsdist: Clarify how to return 'no server available' from the FFI policies
Remi Gacogne [Thu, 14 Mar 2024 15:03:41 +0000 (16:03 +0100)]
dnsdist: Add regression tests for the new cache-miss rules chain
Remi Gacogne [Fri, 8 Mar 2024 15:14:17 +0000 (16:14 +0100)]
dnsdist: Add a new query rules chain triggered after a cache miss
This new chain of rules allows postponing the decision of what to
do with the query to after a cache-lookup has been done. This is
particularly useful when dealing with abuse: we might want to allow
cache hits to be processed normally since they are cheap while dropping/
refusing/routing to a different pool queries that result in a cache
miss.
Remi Gacogne [Fri, 29 Mar 2024 14:14:55 +0000 (15:14 +0100)]
FDWrapper: Do not try to close negative file descriptors
It turns out that some of the BPF helper functions return
a negative `errno` value in case of failure, and since we
wrap the return value into a `FDWrapper` right away this
led to a warning from Valgrind about trying to close an
invalid file descriptor.
Remi Gacogne [Fri, 29 Mar 2024 14:08:29 +0000 (15:08 +0100)]
dnsdist: Release failed TCP backend connections more quickly
After a timeout we cannot reuse the TCP connection to the backend
anyway, so let's release it immediately.
Remi Gacogne [Fri, 29 Mar 2024 13:22:40 +0000 (14:22 +0100)]
dnsdist: Release incoming TCP connection right away on backend failure
We used to keep a shared pointer to the incoming TCP connection around
in `TCPConnectionToBackend::d_currentQuery.d_sender` even after all queries
sent to the backend failed, which prevented the incoming TCP connection
from being closed as soon as it should have.
Remi Gacogne [Fri, 29 Mar 2024 13:12:29 +0000 (14:12 +0100)]
dnsdist: Fix a null-deref in incoming DoH w/ nghttp2
When an incoming DoH connection using the `nghttp2` provider is waiting
for a response from a backend that results in a I/O error or timeout,
and the incoming connection also fails due to a I/O error or timeout,
dnsdist could in some cases try to dereference a null pointer, leading
to a crash.
Remi Gacogne [Thu, 28 Mar 2024 16:12:48 +0000 (17:12 +0100)]
dnsdist: Support "no server available" result from Lua FFI LB policies
Remi Gacogne [Thu, 28 Mar 2024 15:51:39 +0000 (16:51 +0100)]
Merge pull request #13923 from rgacogne/ddist-xfr-response-chain
dnsdist: Add a new response chain for XFR responses
Remi Gacogne [Thu, 28 Mar 2024 15:51:19 +0000 (16:51 +0100)]
Merge pull request #13999 from rgacogne/ddist-inc-http1-counter-alpn
dnsdist: Fix DNS over HTTP connections/queries counters with `nghttp2`
Remi Gacogne [Thu, 28 Mar 2024 10:37:59 +0000 (11:37 +0100)]
Merge pull request #13998 from romeroalx/fix-dockerfile-rpmsbom
Dockerfile.rpmsbom: fix grep syntax for authoritative on rhel>7
Remi Gacogne [Thu, 28 Mar 2024 10:37:35 +0000 (11:37 +0100)]
dnsdist: Fix formatting in dnsdist-nghttp2-in.cc
Remi Gacogne [Thu, 28 Mar 2024 10:25:34 +0000 (11:25 +0100)]
dnsdist: Add a regression test for DoH connection counters
Remi Gacogne [Thu, 28 Mar 2024 10:24:44 +0000 (11:24 +0100)]
dnsdist: Properly increase the HTTP connections counter w/ nghttp2
Remi Gacogne [Thu, 28 Mar 2024 09:30:10 +0000 (10:30 +0100)]
dnsdist: Remove commented out include directive
Remi Gacogne [Thu, 28 Mar 2024 09:27:15 +0000 (10:27 +0100)]
dnsdist: Increase the HTTP/1.1 query counter when DoH with 1.1 ALPN
This way we can keep track of how many HTTP/1.1 connections attempt
we see. We will not actually process the DNS over HTTP/1.1 payload
anyway when the `nghttp2` provider is used.
romeroalx [Thu, 28 Mar 2024 08:59:21 +0000 (09:59 +0100)]
fix grep syntax Dockerfile.rpmsbom
Remi Gacogne [Thu, 28 Mar 2024 08:46:51 +0000 (09:46 +0100)]
Merge pull request #13983 from rgacogne/generate-sbom
Generate Software Bill Of Materials (SBOMs) for our RPM packages
Otto Moerbeek [Wed, 27 Mar 2024 10:54:29 +0000 (11:54 +0100)]
Merge pull request #13969 from omoerbeek/rec-nod-threads
rec: use shared NOD (and/or UDR) DB, to avoid multiple copies in memory and on disk
Otto Moerbeek [Wed, 27 Mar 2024 10:08:46 +0000 (11:08 +0100)]
Explain the d_cachedir_mutex is only used for protecting init() calls
Otto Moerbeek [Wed, 27 Mar 2024 07:03:28 +0000 (08:03 +0100)]
Merge pull request #13984 from rgacogne/rec-fix-nsec3s-count-closest-encloser
rec: Correctly count NSEC3s considered when chasing the closest encloser
Otto Moerbeek [Wed, 27 Mar 2024 06:27:54 +0000 (07:27 +0100)]
Merge pull request #13985 from omoerbeek/rec-system-res-fixup
rec: fixup res-system-resolve.cc on FreeBSD: resolve.h needs netinet/in.h
Fred Morcos [Tue, 26 Mar 2024 19:31:35 +0000 (20:31 +0100)]
Merge pull request #13959 from fredmorcos/meson
Add Meson as a build system for auth
Otto Moerbeek [Tue, 26 Mar 2024 15:39:58 +0000 (16:39 +0100)]
rec: fixup res-system-resolve.cc on FreeBSD: resolve.h needs netinet/in.h
Otto Moerbeek [Tue, 26 Mar 2024 15:00:08 +0000 (16:00 +0100)]
Merge pull request #13982 from Habbie/resqueryunderscores
rec: also look for __res_query symbol
Remi Gacogne [Tue, 26 Mar 2024 14:36:07 +0000 (15:36 +0100)]
SBOM: Dynamically generate the list of auth-related packages
Remi Gacogne [Tue, 26 Mar 2024 13:44:15 +0000 (14:44 +0100)]
rec: Correctly count NSEC3s considered when chasing the closest encloser
We need to count the number of NSEC3s that are present in the response,
not the number of times we have to consider possible NSEC3s when
looking for the NSEC3 closest encloser, label by label.
Peter van Dijk [Tue, 26 Mar 2024 10:49:48 +0000 (11:49 +0100)]
rec: also look for __res_query symbol
Remi Gacogne [Tue, 26 Mar 2024 10:25:14 +0000 (11:25 +0100)]
SBOM: Fix the builder target variable
Remi Gacogne [Tue, 26 Mar 2024 09:47:11 +0000 (10:47 +0100)]
Fix syntax errors
Remi Gacogne [Tue, 26 Mar 2024 09:18:40 +0000 (10:18 +0100)]
Disable SBOM generation on el-7 (almost EOL), fix it on el-8
Remi Gacogne [Mon, 25 Mar 2024 19:04:13 +0000 (20:04 +0100)]
Hopefully fix SBOM generation
Remi Gacogne [Mon, 25 Mar 2024 13:51:05 +0000 (14:51 +0100)]
Attempt to generate SBOMs after building packages
Otto Moerbeek [Tue, 26 Mar 2024 06:58:00 +0000 (07:58 +0100)]
Merge pull request #13921 from omoerbeek/rec-system-resolve
Rec: add feature to allow names (resolved by system resolver) in forwarding config
Peter van Dijk [Mon, 25 Mar 2024 18:02:19 +0000 (19:02 +0100)]
Merge pull request #12849 from PowerDNS/dependabot/pip/regression-tests.api/requests-2.31.0
build(deps): bump requests from 2.20.0 to 2.31.0 in /regression-tests.api
Peter van Dijk [Mon, 25 Mar 2024 17:57:09 +0000 (18:57 +0100)]
Merge pull request #13981 from rgacogne/fix-rec-builds
Fix recursor packages builds
Remi Gacogne [Mon, 25 Mar 2024 16:01:19 +0000 (17:01 +0100)]
Fix recursor builds: fix invalid path for builder-support/helpers
Remi Gacogne [Mon, 25 Mar 2024 15:24:47 +0000 (16:24 +0100)]
Fix recursor builds: we now require `jq` during the `dist` phase
dependabot[bot] [Mon, 25 Mar 2024 14:57:28 +0000 (14:57 +0000)]
build(deps): bump requests in /regression-tests.api
Bumps [requests](https://github.com/psf/requests) from 2.20.0 to 2.31.0.
- [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.20.0...v2.31.0)
---
updated-dependencies:
- dependency-name: requests
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Peter van Dijk [Mon, 25 Mar 2024 14:53:06 +0000 (15:53 +0100)]
Merge pull request #10933 from swegener/64-bit-time-support
m4: Enable 64-bit time_t on 32-bit systems with glibc-2.34
Otto Moerbeek [Mon, 25 Mar 2024 14:40:30 +0000 (15:40 +0100)]
Use FDWrapper, modify its reset() to return the close() return value
Remi Gacogne [Mon, 25 Mar 2024 14:28:37 +0000 (15:28 +0100)]
Merge pull request #13972 from rgacogne/external-libs-to-json
Move the version (and hashes) of external dependencies to JSON files
Otto Moerbeek [Mon, 25 Mar 2024 14:25:27 +0000 (15:25 +0100)]
Update pdns/recursordist/settings/docs-new-preamble-in.rst
Co-authored-by: Remi Gacogne <github@coredump.fr>
Karel Bilek [Mon, 25 Mar 2024 13:21:01 +0000 (14:21 +0100)]
Do shuffle TCP responses except *XFRs
Fixes #13003
Otto Moerbeek [Mon, 25 Mar 2024 13:34:28 +0000 (14:34 +0100)]
Comment fixes, some of them only made sense for the non-shared setup
Otto Moerbeek [Mon, 25 Mar 2024 13:07:54 +0000 (14:07 +0100)]
Merge pull request #13844 from omoerbeek/rec-sl-only
rec: remove the possiblility to disable structured logging