]>
git.ipfire.org Git - thirdparty/pdns.git/log
Peter van Dijk [Fri, 4 Feb 2022 11:40:20 +0000 (12:40 +0100)]
dnsdist Docker image: install ca-certificates
(cherry picked from commit
d256ad02c53c470b9fb035fe4b29daeb686e9734 )
Peter van Dijk [Thu, 27 Jan 2022 13:02:08 +0000 (14:02 +0100)]
Merge pull request #11094 from Habbie/backport-11081-to-dnsdist-1.7.x
dnsdist-1.7: Docker images: remove capability requirements
Remi Gacogne [Tue, 18 Jan 2022 11:55:37 +0000 (12:55 +0100)]
Merge pull request #11195 from rgacogne/ddist17-openssl3
dnsdist-1.7.x: Fix compilation with OpenSSL 3.0.0
Remi Gacogne [Mon, 17 Jan 2022 14:44:01 +0000 (15:44 +0100)]
dnsdist-1.7.x: Fix compilation with OpenSSL 3.0.0
Remi Gacogne [Wed, 12 Jan 2022 08:14:16 +0000 (09:14 +0100)]
Merge pull request #11156 from rgacogne/ddist17-warning-ratio
dnsdist-1.7.x: Test correct member in DynBlockRatioRule::warningRatioExceeded
Doug Freed [Mon, 27 Dec 2021 17:00:37 +0000 (12:00 -0500)]
Test correct member in DynBlockRatioRule::warningRatioExceeded
Also sprinkle in some more checks of d_enabled.
Fixes #11131
(cherry picked from commit
b1fd5841e92719049751836cce728b136aaddb4a )
Remi Gacogne [Fri, 17 Dec 2021 10:14:07 +0000 (11:14 +0100)]
Merge pull request #11104 from rgacogne/ddist17-doh-tc-check-query-size
dnsdist-1.7.x: Check the size of the query when re-sending a DoH query
Remi Gacogne [Thu, 16 Dec 2021 10:03:11 +0000 (11:03 +0100)]
Merge pull request #11106 from rgacogne/ddist17-unbreak-compilation-without-doh
dnsdist-1.7.x: Fix compilation without incoming DoH support
Remi Gacogne [Thu, 16 Dec 2021 08:36:25 +0000 (09:36 +0100)]
dnsdist: Fix compilation without incoming DoH support
(cherry picked from commit
d0ae90801838ed9104051fa11fa577f3a96a9289 )
Remi Gacogne [Wed, 15 Dec 2021 15:32:29 +0000 (16:32 +0100)]
Merge pull request #11103 from rgacogne/ddist17-fix-dropped-doh-cross-responses
dnsdist-1.7.x: Fix a double-free when a DoH cross-protocol response is dropped
Remi Gacogne [Wed, 15 Dec 2021 13:57:54 +0000 (14:57 +0100)]
Merge pull request #11085 from rgacogne/ddist17-remove-non-ddist-ci
dnsdist-1.7.x: Remove non dnsdist-related CI steps
Remi Gacogne [Thu, 9 Dec 2021 10:14:57 +0000 (11:14 +0100)]
dnsdist: Account for the proxy protocol payload when checking the query size
(cherry picked from commit
4546141949cce7e2518f94d23361c02cb11a65c4 )
Remi Gacogne [Wed, 8 Dec 2021 14:36:37 +0000 (15:36 +0100)]
dnsdist: Check the size of the query when re-sending a DoH query
When the UDP response to a DoH query was truncated, we re-send the
query via TCP, passing it to a TCP worker. We need to edit the ID
to its original value before that, and while there is no reason
that the query is smaller than a dnsheader, we need to check its size,
not the size of the response.
(cherry picked from commit
5d552300959a5133546bb65ddeb8ce918d598c08 )
Remi Gacogne [Wed, 15 Dec 2021 11:19:11 +0000 (12:19 +0100)]
dnsdist: Clarify that if the call failed we still own the DOHUnit
(cherry picked from commit
9d53151a282e9a98f75d28e8fcbff7901a07b592 )
Remi Gacogne [Wed, 15 Dec 2021 10:49:29 +0000 (11:49 +0100)]
dnsdist: Add comments on reference counting around our internal pipe
(cherry picked from commit
e36f950460e7fa8e53c9b6751e244d15f6bcd24c )
Remi Gacogne [Wed, 15 Dec 2021 09:54:07 +0000 (10:54 +0100)]
dnsdist: Use an alias for the DOHUnit unique pointer
(cherry picked from commit
9f46a693ffc6a9e7614f787726b210731fe10a8d )
Remi Gacogne [Wed, 15 Dec 2021 09:53:28 +0000 (10:53 +0100)]
dnsdist: Fix typo spotted by Otto
(cherry picked from commit
1fa2cd69bfd3a4edfa54e84795962c74e31794b6 )
Remi Gacogne [Wed, 8 Dec 2021 14:31:18 +0000 (15:31 +0100)]
dnsdist: Increment the DoH ref counter before writing to the pipe
As far as I can tell this is not actually needed, as we decrement
it right away, but it prevents TSAN from reporting a race when the
UDP response comes very fast, is truncated, and the query is then
passed to a TCP worker. TSAN seems to think that the thread is still
sending the UDP query when we touch it again in the TCP worker, which
does not really make sense to me.
My guess is that the memory barrier needed to update the ref counter
makes TSAN happy, but I might be missing something.
(cherry picked from commit
7a90dbde7b01321783d73d71520abd3fa380a9c8 )
Remi Gacogne [Wed, 8 Dec 2021 11:31:00 +0000 (12:31 +0100)]
dnsdist: Wrap the DOHUnit object in a unique_ptr whenever possible
(cherry picked from commit
871e5e481310f1e51bfb76319d5f49a27d21804d )
Remi Gacogne [Wed, 8 Dec 2021 10:15:08 +0000 (11:15 +0100)]
dnsdist: Refactoring of the DoH unit handling
(cherry picked from commit
2171e7c7ef360c5646646c6504d29d83a74e18c2 )
Remi Gacogne [Wed, 8 Dec 2021 10:13:34 +0000 (11:13 +0100)]
dnsdist: Fix a leak when a UDP response for DoH is truncated
(cherry picked from commit
65ef9d4617349aac5e350e07fcce3a7e7ee3be67 )
Remi Gacogne [Tue, 7 Dec 2021 16:41:22 +0000 (17:41 +0100)]
dnsdist: Fix a double-free when a DoH cross-protocol response is dropped
(cherry picked from commit
dbd2a418d299891e5af3b2376f41bb7464dae45d )
Nico Vaatstra [Thu, 9 Dec 2021 11:39:29 +0000 (12:39 +0100)]
Additional note on Docker Engine version where the requirement of the additional capability was dropped
(cherry picked from commit
07b24e5743c08c828c73a93e724a86a5b83b680a )
Nico Vaatstra [Wed, 8 Dec 2021 15:28:42 +0000 (16:28 +0100)]
Remove capability requirements from Docker images
(cherry picked from commit
f28c81ed0242b6838eafdb61933a6f63b68040cf )
Remi Gacogne [Thu, 9 Dec 2021 13:24:35 +0000 (14:24 +0100)]
dnsdist-1.7.x: Remove non dnsdist-related CI steps
Remi Gacogne [Wed, 8 Dec 2021 15:16:01 +0000 (16:16 +0100)]
Merge pull request #11078 from rgacogne/ddist-ffi-spoof-raw-no-const
dnsdist: Fix const-correctness of dnsdist_ffi_raw_value_t's value
Remi Gacogne [Wed, 8 Dec 2021 11:41:23 +0000 (12:41 +0100)]
dnsdist: Fix const-correctness of dnsdist_ffi_raw_value_t's value
This prevent an allocation and a copy since we can now directly pass
a Lua string.
Pieter Lexis [Tue, 7 Dec 2021 12:12:02 +0000 (13:12 +0100)]
Merge pull request #11073 from jsoref/grammar
Minor fixes
Josh Soref [Tue, 7 Dec 2021 09:21:44 +0000 (04:21 -0500)]
Minor fixes
Guided by app.grammarly.com
Otto Moerbeek [Mon, 6 Dec 2021 14:27:52 +0000 (15:27 +0100)]
Merge pull request #11070 from omoerbeek/rec-regr-logs
rec: Regression tests: startup/cleanup fixes
Peter van Dijk [Mon, 6 Dec 2021 11:56:02 +0000 (12:56 +0100)]
Merge pull request #11068 from Habbie/bind-hybrid-zone-cache
auth: prevent bind-hybrid+zone-cache
Peter van Dijk [Mon, 6 Dec 2021 11:55:05 +0000 (12:55 +0100)]
Merge pull request #11067 from Habbie/pdnsutil-ds-sha1-verbose
pdnsutil: skip SHA1 DSes except in verbose mode, fixes #11045
Peter van Dijk [Mon, 6 Dec 2021 11:54:33 +0000 (12:54 +0100)]
Merge pull request #11066 from zeha/auth-api-zonecache-flush-small
Auth: add zone to zonecache on flush API endpoint
Peter van Dijk [Mon, 6 Dec 2021 11:49:09 +0000 (12:49 +0100)]
Merge pull request #11071 from PowerDNS/omoerbeek-patch-1
Wrong title of check
Otto Moerbeek [Mon, 6 Dec 2021 08:29:36 +0000 (09:29 +0100)]
Merge pull request #11069 from omoerbeek/rec-no-eventtrace-on-no-lua
rec: Do not generate eventtrace records if no Lua hook is defined
Otto Moerbeek [Fri, 3 Dec 2021 14:29:09 +0000 (15:29 +0100)]
Cleanup start and stop code
- more clearly print startup logs in case of exec error
- do not try to kill a process that's already dead
- do not call exit, but throw an AssertionError on startup issues
Also print logs on no exception
Otto Moerbeek [Fri, 3 Dec 2021 16:18:07 +0000 (17:18 +0100)]
Wrong title of check
Chris Hofstaedtler [Fri, 3 Dec 2021 12:52:38 +0000 (13:52 +0100)]
auth API: add zone to zonecache in flush endpoint
Peter van Dijk [Fri, 3 Dec 2021 11:51:10 +0000 (12:51 +0100)]
auth: prevent bind-hybrid+zone-cache, fixes #10658
Chris Hofstaedtler [Fri, 3 Dec 2021 12:45:34 +0000 (13:45 +0100)]
auth API: purge entire zone from cache, not just zone-level records
Otto Moerbeek [Fri, 3 Dec 2021 12:26:32 +0000 (13:26 +0100)]
Merge pull request #11064 from omoerbeek/docs-secpoll-status
secpoll: for pre-releases, use status 2 when supserseded.
Otto [Fri, 3 Dec 2021 12:24:45 +0000 (13:24 +0100)]
Do not generate eventtrace records if no Lua hook is defined
Peter van Dijk [Fri, 3 Dec 2021 11:38:25 +0000 (12:38 +0100)]
pdnsutil: skip SHA1 DSes except in verbose mode, fixes #11045
Otto [Fri, 3 Dec 2021 08:18:41 +0000 (09:18 +0100)]
For pre-releases, use status 2 when supserseded.
Otto Moerbeek [Fri, 3 Dec 2021 09:32:21 +0000 (10:32 +0100)]
Merge pull request #11063 from omoerbeek/rec-prep-4.6.0-rc1
rec: Prep for rec-4.6.0-rc1
Remi Gacogne [Fri, 3 Dec 2021 09:11:16 +0000 (10:11 +0100)]
Merge pull request #11054 from rgacogne/ddist-fix-webserver-headers-doc
dnsdist: Fix 'custom_headers' -> 'customHeaders' in the webserver doc
Otto Moerbeek [Fri, 3 Dec 2021 08:45:51 +0000 (09:45 +0100)]
Update pdns/recursordist/docs/changelog/4.6.rst
Co-authored-by: Remi Gacogne <github@coredump.fr>
Otto [Wed, 1 Dec 2021 15:21:09 +0000 (16:21 +0100)]
Prep for rec-4.6.0-rc1
Otto Moerbeek [Wed, 1 Dec 2021 12:13:40 +0000 (13:13 +0100)]
Merge pull request #10982 from omoerbeek/systemd-dir-env-cond
Condition to HAVE_SYSTEMD_WITH_RUNTIME_DIR_ENV is reversed
Otto [Mon, 15 Nov 2021 10:48:22 +0000 (11:48 +0100)]
Condition to HAVE_SYSTEMD_WITH_RUNTIME_DIR_ENV is reversed
Remi Gacogne [Wed, 1 Dec 2021 08:53:43 +0000 (09:53 +0100)]
dnsdist: Fix 'custom_headers' -> 'customHeaders' in the webserver doc
`setWebserverConfig()` accepts a 'customHeaders' key, and not a
'custom_headers' one. Also update the documentation for `webserver()`
where it does not really matter so they are in sync.
Remi Gacogne [Tue, 30 Nov 2021 13:01:41 +0000 (14:01 +0100)]
Merge pull request #11039 from rgacogne/ddist-split-advanced-regression
dnsdist: Split the huge test_Advanced regression test file
Otto Moerbeek [Tue, 30 Nov 2021 11:53:30 +0000 (12:53 +0100)]
Merge pull request #11043 from omoerbeek/rec-regr-fast-startup-teardown
rec: Regression tests: smarter and faster startup and teardown of auth and rec
Otto Moerbeek [Tue, 30 Nov 2021 11:02:40 +0000 (12:02 +0100)]
Merge pull request #11050 from omoerbeek/rec-catch-guard-ex
rec: Catch an exception in guard destructor as seen by coverity.
Otto Moerbeek [Tue, 30 Nov 2021 11:00:15 +0000 (12:00 +0100)]
Merge pull request #11033 from omoerbeek/circleci-drop-formatting
CircleCI: drop formatting check, superseded by GH workflows
Otto [Tue, 30 Nov 2021 10:55:59 +0000 (11:55 +0100)]
Wait for web server to come online before proceeding
Otto [Tue, 30 Nov 2021 06:55:10 +0000 (07:55 +0100)]
Set timeout on TCP connect attempt
Otto [Mon, 29 Nov 2021 11:14:55 +0000 (12:14 +0100)]
Wait for webserver to come up
Otto [Mon, 29 Nov 2021 09:56:23 +0000 (10:56 +0100)]
Wait until outgoing requests stabilizes before starting tests, rec might stil be busy resolving hints.
Otto [Mon, 29 Nov 2021 08:47:40 +0000 (09:47 +0100)]
Smarter and faster startup and teardown of auth and rec
Instead of having a fixed 1 or 2s delay, poll the TCP port to see
if rec or auth has started up in a semi-tight loop: a loop with a
small sleep. For teardown we poll the wait status using poll() in
a similar loop.
Otto [Tue, 30 Nov 2021 09:03:57 +0000 (10:03 +0100)]
Catch an exception in guard destructor as seen by coverity.
Otto Moerbeek [Tue, 30 Nov 2021 06:59:08 +0000 (07:59 +0100)]
Merge pull request #11046 from phonedph1/patch-31
Update dq.rst
Peter van Dijk [Mon, 29 Nov 2021 22:09:04 +0000 (23:09 +0100)]
Merge pull request #11047 from phonedph1/patch-32
Update dq.rst
phonedph1 [Mon, 29 Nov 2021 22:08:16 +0000 (15:08 -0700)]
Update dq.rst
phonedph1 [Mon, 29 Nov 2021 22:02:14 +0000 (15:02 -0700)]
Update dq.rst
Otto Moerbeek [Mon, 29 Nov 2021 15:30:04 +0000 (16:30 +0100)]
Merge pull request #11044 from omoerbeek/rec-regr-auth-v6
rec: regression test: Fix v6 setup and start using a more modern auth on circleci
Otto [Mon, 29 Nov 2021 13:48:09 +0000 (14:48 +0100)]
Fix error in test zone that auth-45 does not like
Remi Gacogne [Mon, 29 Nov 2021 13:00:47 +0000 (14:00 +0100)]
Merge pull request #11035 from rgacogne/ddist-17-beta2
dnsdist: Add ChangeLog and secpoll for 1.7.0-beta2
Otto [Mon, 29 Nov 2021 11:52:09 +0000 (12:52 +0100)]
One more occurence of --local-ipv6
Otto Moerbeek [Mon, 29 Nov 2021 11:16:58 +0000 (12:16 +0100)]
Merge pull request #11036 from omoerbeek/rec-qm-9156
rec: Compute step sizes for QM a la RFC 9156
Otto [Mon, 29 Nov 2021 10:56:25 +0000 (11:56 +0100)]
Fix v6 setup and start using a more modern auth on circleci
Otto Moerbeek [Mon, 29 Nov 2021 09:58:06 +0000 (10:58 +0100)]
Merge pull request #11042 from jsoref/recursordist-lua-scripting-doc-grammar
doc: grammar tweaks for recursordist lua-scripting
Otto Moerbeek [Mon, 29 Nov 2021 09:15:22 +0000 (10:15 +0100)]
Apply suggestions from code review
Co-authored-by: Remi Gacogne <github@coredump.fr>
Josh Soref [Sun, 28 Nov 2021 20:14:39 +0000 (15:14 -0500)]
doc: grammar tweaks for recursordist lua-scripting
Otto Moerbeek [Sun, 28 Nov 2021 14:02:53 +0000 (15:02 +0100)]
Merge pull request #11041 from omoerbeek/rec-lua-blocking-docs
rec: Warn about blocking calls from Lua
Otto [Sun, 28 Nov 2021 08:20:31 +0000 (09:20 +0100)]
Warn about blocking calls from Lua
Remi Gacogne [Fri, 26 Nov 2021 15:53:48 +0000 (16:53 +0100)]
Merge pull request #11037 from rgacogne/ddist-healthcheck-reuse-tls-session
dnsdist: Reuse and save the TLS session tickets in DoT healthchecks
Otto [Fri, 26 Nov 2021 14:14:36 +0000 (15:14 +0100)]
Alos drop formatting job from the global jobs:
Otto Moerbeek [Fri, 26 Nov 2021 14:04:16 +0000 (15:04 +0100)]
Merge pull request #11030 from omoerbeek/rec-incoming-tcp-finalize
Rec incoming tcp bookkeeping
Remi Gacogne [Fri, 26 Nov 2021 13:48:16 +0000 (14:48 +0100)]
dnsdist: Use `time()` instead of `gettimeofday()`, as suggested by Otto
Remi Gacogne [Fri, 26 Nov 2021 13:29:51 +0000 (14:29 +0100)]
dnsdist: Split the huge test_Advanced regression test file
- The Lua FFI tests moved to `test_LuaFFI.py`
- the rules and actions to `test_RulesActions.py`
- and test_Advanced now contains only tests non directly related to
specific rules and actions
Otto Moerbeek [Fri, 26 Nov 2021 13:08:56 +0000 (14:08 +0100)]
typo in comment
Co-authored-by: Remi Gacogne <github@coredump.fr>
Otto Moerbeek [Fri, 26 Nov 2021 12:56:58 +0000 (13:56 +0100)]
Merge pull request #11038 from omoerbeek/rec-ci-mo-tsan-for-now
rec: Disable tsan regression runs for rec for now,
Remi Gacogne [Fri, 26 Nov 2021 12:51:13 +0000 (13:51 +0100)]
dnsdist: Update the outgoing DoT tests now that we save TLS tickets during healthchecks
Otto [Fri, 26 Nov 2021 12:28:53 +0000 (13:28 +0100)]
Prepend labels starting with an underscore
Otto [Fri, 26 Nov 2021 11:21:23 +0000 (12:21 +0100)]
Disable tsan regression runs for rec for now, there is a failure
mode that if it hits makes almost all remaining test fail. Symptom
is that the auths do not start up properly.
Remi Gacogne [Fri, 26 Nov 2021 11:15:09 +0000 (12:15 +0100)]
dnsdist: Reuse and save the TLS session tickets in DoT healthchecks
This reduces the cost of the healthchecks themselves while saving the
TLS session reduces the cost of opening of a DoT connection for actual
queries later on.
In the future a refactoring of the TCP/DoT healthcheck code to be more
like the "black box" approach used for DoH would be nice to have.
Otto [Fri, 26 Nov 2021 10:40:32 +0000 (11:40 +0100)]
Only call setDropOnIdle() if we're actually have a tcp connection.
Also add extra consistency check, d_tcp and d_tcpcOnnection should
likely be squashed into a single thing.
Otto [Wed, 24 Nov 2021 16:29:38 +0000 (17:29 +0100)]
Compute step sizes for QM a la RFC 9156
Otto [Fri, 26 Nov 2021 09:22:15 +0000 (10:22 +0100)]
If we fall through handleRunningTCPQuestion(), we neeed to keep the connection,
there are more bytes to come. handleTCPReadResult() is now a method of a guard.
Remi Gacogne [Fri, 26 Nov 2021 09:03:02 +0000 (10:03 +0100)]
dnsdist: Add ChangeLog and secpoll for 1.7.0-beta2
Peter van Dijk [Thu, 25 Nov 2021 10:47:04 +0000 (11:47 +0100)]
Merge pull request #11028 from Habbie/auth-4.4.1-secpoll-docs
auth 4.4.2 secpoll&docs
Peter van Dijk [Tue, 23 Nov 2021 13:54:06 +0000 (14:54 +0100)]
auth 4.4.2 secpoll&docs
Remi Gacogne [Wed, 24 Nov 2021 16:00:46 +0000 (17:00 +0100)]
Merge pull request #11031 from rgacogne/ddist-fix-missing-visibility
dnsdist: Add missing visibility attribute on `dnsdist_ffi_dnsquestion_get_qname_hash`
Remi Gacogne [Wed, 24 Nov 2021 14:58:40 +0000 (15:58 +0100)]
Merge pull request #11006 from rgacogne/ddist-show-web-config
dnsdist: Add 'showWebserverConfig'
Otto [Wed, 24 Nov 2021 14:50:21 +0000 (15:50 +0100)]
CircleCI: drop formatting check, superseded by GH workflows
Otto [Wed, 24 Nov 2021 14:33:38 +0000 (15:33 +0100)]
Better names
Remi Gacogne [Wed, 24 Nov 2021 14:20:55 +0000 (15:20 +0100)]
dnsdist: Fix g++/LTO warning about uninitialized dnsheaders in the unit test
Remi Gacogne [Wed, 24 Nov 2021 14:19:56 +0000 (15:19 +0100)]
dnsdist: Add missing visibility attribute on dnsdist_ffi_dnsquestion_get_qname_hash
Making it unusable from Lua FFI when dnsdist is compiled with
`-fvisibility=hidden`.
Otto [Wed, 24 Nov 2021 10:12:16 +0000 (11:12 +0100)]
Use guard objects to do the TCP connection bookkeeping and cleanup if needed.
If a policy drop is to be handled for a TCP connection, do not
answer that query, but do handle already in-flight queries and then close.