]>
git.ipfire.org Git - thirdparty/pdns.git/log
Remi Gacogne [Mon, 23 Jan 2023 11:12:54 +0000 (12:12 +0100)]
dnsdist: Apply Otto's remarks to the new carbon code
- We now explicitly convert to double, making sure that we will not
overflow by restricting the value of the counter
- Clear the endpoints list when the carbon threads are started, to
make clear we do not need them anymore
- Move the endpoints passed to the carbon threads, to make static
analysis tools happy.
Remi Gacogne [Mon, 16 Jan 2023 17:20:28 +0000 (18:20 +0100)]
dnsdist: Better handling of multiple carbon servers
Remi Gacogne [Mon, 16 Jan 2023 08:52:52 +0000 (09:52 +0100)]
Merge pull request #12412 from fredmorcos/openssl3-tls-mac
OpenSSL 3.0: TLS MAC handling
Remi Gacogne [Mon, 16 Jan 2023 08:51:28 +0000 (09:51 +0100)]
Merge pull request #12416 from Habbie/variable-mirror
build-and-test-all: add functionality to quickly switch ubuntu mirrors
Peter van Dijk [Fri, 13 Jan 2023 10:06:14 +0000 (11:06 +0100)]
build-and-test-all: add functionality to quickly switch ubuntu mirrors
Remi Gacogne [Fri, 13 Jan 2023 15:51:01 +0000 (16:51 +0100)]
Merge pull request #12405 from rgacogne/ddist-frontend-responses
dnsdist: Proper accounting of response and cache hits
Remi Gacogne [Fri, 13 Jan 2023 15:50:24 +0000 (16:50 +0100)]
Merge pull request #12386 from rgacogne/single-doh-acceptor
dnsdist: Merge the 'main' and 'client' DoH threads in single acceptor mode
Remi Gacogne [Fri, 13 Jan 2023 14:40:17 +0000 (15:40 +0100)]
Merge pull request #12384 from rgacogne/ddist-cap-ttl
dnsdist: Add the ability to cap the TTL of records after insertion into the cache
Remi Gacogne [Fri, 13 Jan 2023 08:32:12 +0000 (09:32 +0100)]
Merge pull request #12411 from fredmorcos/openssl3-ipcipher-ca6-crypto
Support OpenSSL 3.0 for ipcipher CA6 encryption/decryption
Fred Morcos [Mon, 9 Jan 2023 12:56:37 +0000 (13:56 +0100)]
OpenSSL 3.0: TLS MAC handling
Fred Morcos [Mon, 9 Jan 2023 11:33:34 +0000 (12:33 +0100)]
libssl: Cleanup TLS-related code
Fred Morcos [Mon, 9 Jan 2023 11:31:21 +0000 (12:31 +0100)]
libssl: Formatting TLS-related code
Remi Gacogne [Thu, 12 Jan 2023 14:56:58 +0000 (15:56 +0100)]
Merge pull request #12403 from rgacogne/spell-allow-eaca
spell-checker: Allow EACA (from the PGP public keys in the docs)
Fred Morcos [Thu, 3 Nov 2022 09:21:03 +0000 (10:21 +0100)]
OpenSSL 3.0: decryptCA6
Fred Morcos [Thu, 3 Nov 2022 08:03:52 +0000 (09:03 +0100)]
OpenSSL 3.0: encryptCA6
Remi Gacogne [Mon, 9 Jan 2023 16:26:53 +0000 (17:26 +0100)]
spell-checker: Allow prometheus values
Remi Gacogne [Mon, 9 Jan 2023 16:26:34 +0000 (17:26 +0100)]
dnsdist: Fix a typo in the prometheus type
Remi Gacogne [Mon, 9 Jan 2023 16:19:46 +0000 (17:19 +0100)]
dnsdist: Update the prometheus sample in the documentation
It was very old and not up-to-date.
Remi Gacogne [Mon, 9 Jan 2023 16:17:21 +0000 (17:17 +0100)]
dnsdist: Only record one hit or miss per query in the cache metrics
The scope-zero feature and the DoH paths can actually do more than
one lookup per query, and until now this led to an increase of the
per-cache metric for every lookup, while the global `cache-hits`
and `cache-misses` metrics were only updated once per query.
This has led to several questions and misunderstandings, so we now
only update the per-cache metrics once per query as well.
Remi Gacogne [Mon, 9 Jan 2023 16:15:03 +0000 (17:15 +0100)]
dnsdist: Properly record cache-hits as responses
For a very long time we have not been adding cache-hits to the
responses counter, which is wrong. Let's fix it now.
Fred Morcos [Wed, 11 Jan 2023 14:59:19 +0000 (15:59 +0100)]
Cleanup ipcipher.hh
Remi Gacogne [Sat, 2 Jul 2022 14:09:56 +0000 (16:09 +0200)]
dnsdist: Merge the 'main' and 'client' DoH threads
When we are in "single acceptor thread" mode, merge the 'main' and
'client' DoH threads into a single one. We use separate threads to
reduce the separate the handling of the HTTP/2 traffic from the DNS
handling, to reduce latency, but that does not really make sense on
small devices with a single, limited CPU core. On these we prefer
using as few threads as possible to reduce the context switches and
the memory usage.
Remi Gacogne [Fri, 2 Dec 2022 14:29:45 +0000 (15:29 +0100)]
dnsdist: Remove ttlCapTypes from the internal state
Remi Gacogne [Fri, 24 Jun 2022 13:50:10 +0000 (15:50 +0200)]
dnsdist: Use unordered sets to speed things up a bit
Remi Gacogne [Fri, 11 Feb 2022 14:34:26 +0000 (15:34 +0100)]
dnsdist: Implement the ability to cap TTLs for some record types only
Remi Gacogne [Wed, 12 Jan 2022 13:58:34 +0000 (14:58 +0100)]
dnsdist: Add MaxReturnedTTLResponseAction to cap the TTL after packet cache
Remi Gacogne [Wed, 11 Jan 2023 13:14:11 +0000 (14:14 +0100)]
Merge pull request #12383 from rgacogne/ddist-stronger-udp-path
dnsdist: Stronger guarantees against data race in the UDP path
Remi Gacogne [Wed, 11 Jan 2023 13:13:28 +0000 (14:13 +0100)]
Merge pull request #12401 from fredmorcos/openssl-3-prep
Openssl 3 prep work
Remi Gacogne [Wed, 11 Jan 2023 11:31:59 +0000 (12:31 +0100)]
dnsdist: Really fix the formatting this time
Remi Gacogne [Wed, 11 Jan 2023 11:30:29 +0000 (12:30 +0100)]
dnsdist: Fix formatting
Remi Gacogne [Wed, 11 Jan 2023 11:27:23 +0000 (12:27 +0100)]
dnsdist: Apply suggestions from Otto's code review (thanks!)
Remi Gacogne [Fri, 6 Jan 2023 10:56:34 +0000 (11:56 +0100)]
dnsdist: Set a proper HTTP error code on Proxy Protocol failure
Remi Gacogne [Wed, 28 Sep 2022 15:21:16 +0000 (17:21 +0200)]
dnsdist: Stronger guarantees against data race in the UDP path
Remi Gacogne [Wed, 11 Jan 2023 10:20:36 +0000 (11:20 +0100)]
Merge pull request #12410 from rgacogne/unbreak-ci
CI: Work-around the "503 Service Unavailable" erros on azure.archive.ubuntu.com
Remi Gacogne [Wed, 11 Jan 2023 08:54:39 +0000 (09:54 +0100)]
Merge pull request #12402 from rgacogne/ddist-dq-time
dnsdist: Add bindings for the current and query times in DQ/DR
Remi Gacogne [Tue, 10 Jan 2023 08:37:23 +0000 (09:37 +0100)]
CI: Work-around the "503 Service Unavailable" erros on azure.archive.ubuntu.com
Remi Gacogne [Tue, 10 Jan 2023 16:21:48 +0000 (17:21 +0100)]
Merge pull request #12400 from rgacogne/ddist-reduce-ttl
dnsdist: Add SetReducedTTLResponseAction
Remi Gacogne [Mon, 9 Jan 2023 14:14:28 +0000 (15:14 +0100)]
dnsdist: Add Lua bindings for the current time and query time
Fred Morcos [Mon, 9 Jan 2023 14:49:09 +0000 (15:49 +0100)]
Print compiler version at the end of configure
Remi Gacogne [Tue, 10 Jan 2023 15:26:23 +0000 (16:26 +0100)]
dnsdist: Better description of SetReducedTTLResponseAction
Co-authored-by: Charles-Henri Bruyand <charleshenri.bruyand+github@gmail.com>
Fred Morcos [Tue, 3 Jan 2023 15:02:54 +0000 (16:02 +0100)]
Include failure message when creating DSRCs
Fred Morcos [Mon, 5 Dec 2022 14:32:26 +0000 (15:32 +0100)]
Lint cleanups of test-signers.cc
Fred Morcos [Wed, 9 Nov 2022 16:45:58 +0000 (17:45 +0100)]
OpenSSL signers test for getPubKeyHash()
Fred Morcos [Tue, 22 Nov 2022 15:55:07 +0000 (16:55 +0100)]
Cleanup DNSCryptoKeyEngine
Fred Morcos [Tue, 22 Nov 2022 09:55:14 +0000 (10:55 +0100)]
Print checkKey() error messages in signer tests
Fred Morcos [Tue, 22 Nov 2022 09:56:39 +0000 (10:56 +0100)]
Cleanup test_generic_signers in test-signers.cc
Fred Morcos [Tue, 11 Oct 2022 11:32:29 +0000 (13:32 +0200)]
Cleanup of ipcipher.cc
Fred Morcos [Fri, 30 Dec 2022 15:21:45 +0000 (16:21 +0100)]
Cleanup includes in misc.cc
Fred Morcos [Tue, 22 Nov 2022 11:18:47 +0000 (12:18 +0100)]
Add OpenSSL error handler
Remi Gacogne [Tue, 10 Jan 2023 14:40:24 +0000 (15:40 +0100)]
Merge pull request #12385 from rgacogne/ddist-ffi-metrics
dnsdist: Add a Lua FFI interface for metrics
Remi Gacogne [Tue, 10 Jan 2023 09:08:40 +0000 (10:08 +0100)]
Merge pull request #12387 from rgacogne/ddist-oom-udp
dnsdist: Handle out-of-memory exceptions in the UDP receiver thread
Otto Moerbeek [Mon, 9 Jan 2023 18:56:57 +0000 (19:56 +0100)]
Merge pull request #12399 from omoerbeek/rec-threadnames
rec: Name recursor threads consistently with a "rec/" prefix.
Otto Moerbeek [Mon, 9 Jan 2023 18:56:33 +0000 (19:56 +0100)]
Merge pull request #12392 from omoerbeek/bind-errno-cleanup
Be more careful saving errno in makeClientSocket() and closesocket()
Peter van Dijk [Mon, 9 Jan 2023 17:42:40 +0000 (18:42 +0100)]
Merge pull request #12367 from jsoref/pdns_control-ccounts-comma
Add missing comma to pdns_control ccounts
Remi Gacogne [Mon, 9 Jan 2023 14:19:59 +0000 (15:19 +0100)]
spell-checker: Allow EACA (from the PGP public keys in the docs)
Fred Morcos [Tue, 11 Oct 2022 11:32:15 +0000 (13:32 +0200)]
Formatting of various files like ipcipher and opensslsigners
Fred Morcos [Mon, 5 Dec 2022 09:04:06 +0000 (10:04 +0100)]
Relax clang-tidy regarding magic numbers
Fred Morcos [Mon, 5 Dec 2022 09:03:49 +0000 (10:03 +0100)]
Add _build dir to docs/.gitignore
Otto Moerbeek [Mon, 9 Jan 2023 12:19:28 +0000 (13:19 +0100)]
Name recursor threads consistently with a "rec/" prefix.
Use thread names without capitals, as they look a bit ugly otherwise.
Threads started by libfstrm are not named, as they are created internally by the lib.
Partly supsersedes #11138
Remi Gacogne [Mon, 9 Jan 2023 11:17:44 +0000 (12:17 +0100)]
Merge pull request #12397 from rgacogne/fix-cachecleaner
cachecleaner: Add cmath, needed for std::ceil and std::round
Remi Gacogne [Mon, 9 Jan 2023 11:16:31 +0000 (12:16 +0100)]
Merge pull request #12354 from rgacogne/ddist-unique-ednsoptions
dnsdist: Move DNSQuestion's EDNS options to a unique pointer
Remi Gacogne [Mon, 9 Jan 2023 11:09:28 +0000 (12:09 +0100)]
cachecleaner: Add cmath, needed for std::ceil and std::round
Remi Gacogne [Mon, 9 Jan 2023 10:31:12 +0000 (11:31 +0100)]
dnsdist: Move the exception handling out of handleOnePacket()
Remi Gacogne [Mon, 9 Jan 2023 10:24:42 +0000 (11:24 +0100)]
dnsdist: Use EDNSOptionViewMap in more places
As suggested by Otto.
Remi Gacogne [Mon, 9 Jan 2023 10:16:11 +0000 (11:16 +0100)]
Merge pull request #12365 from rgacogne/ddist-fix-tcp-queued-underflow-12357
dnsdist: Prevent an underflow of the TCP d_queued counter
Otto Moerbeek [Fri, 6 Jan 2023 16:08:30 +0000 (17:08 +0100)]
Merge pull request #12391 from omoerbeek/dnsdist-pgpkeys
dnsdist: update pgp keys listed in docs: add Otto, move Pieter and Bert to old keys
Remi Gacogne [Fri, 6 Jan 2023 15:46:53 +0000 (16:46 +0100)]
dnsdist: Add SetReducedTTLResponseAction
Otto Moerbeek [Fri, 6 Jan 2023 15:24:57 +0000 (16:24 +0100)]
dnsdist: update pgp keys listed in docs: add Otto, move Pieter and Bert to old keys
Otto Moerbeek [Fri, 6 Jan 2023 14:45:46 +0000 (15:45 +0100)]
Be more careful saving errno in makeClientSocket() and closesocket()
Otto Moerbeek [Fri, 6 Jan 2023 13:29:45 +0000 (14:29 +0100)]
Merge pull request #12374 from omoerbeek/rec-cache-clean
Rec: make cache cleaning more fair when under pressure
Otto Moerbeek [Fri, 6 Jan 2023 11:57:04 +0000 (12:57 +0100)]
Be more eager to evict expired entries in the first loop by continuing scanning the fraction of each shard we originally computed
Otto Moerbeek [Fri, 6 Jan 2023 10:12:25 +0000 (11:12 +0100)]
Merge pull request #12352 from zjs604381586/recursor-stale
Refresh of negcache stale entry might use wrong qtype
Otto Moerbeek [Fri, 6 Jan 2023 09:36:12 +0000 (10:36 +0100)]
Merge pull request #12378 from omoerbeek/pgp-keys
Update the pgp keys listed in docs
Otto Moerbeek [Fri, 6 Jan 2023 08:26:25 +0000 (09:26 +0100)]
Merge pull request #12313 from darnuria/clang-tidy/one-more-time
Clang-tidy: one more time
Otto Moerbeek [Wed, 4 Jan 2023 14:03:05 +0000 (15:03 +0100)]
Mention Bert and Pieter did sign old releases
Otto Moerbeek [Wed, 4 Jan 2023 12:50:55 +0000 (13:50 +0100)]
Update the keys listed: remove Bert and Pieter, add Remi and Otto
Otto Moerbeek [Tue, 3 Jan 2023 10:36:54 +0000 (11:36 +0100)]
Take shard size and number of remaining shards into account when cleaning, so that big shards get pruned more and if we are behind due to rounding etc we get more eager.
Otto Moerbeek [Tue, 3 Jan 2023 13:54:14 +0000 (14:54 +0100)]
Merge pull request #12373 from omoerbeek/rec-stack-usage-warning
rec: Warn on high (90%) mthread stack usage
Otto Moerbeek [Tue, 3 Jan 2023 11:36:14 +0000 (12:36 +0100)]
Warn on high (90%) mthread stack usage
Otto Moerbeek [Tue, 3 Jan 2023 10:35:14 +0000 (11:35 +0100)]
- Print shard info in cache dumps
- change # of shard of negcache to be 1/8th of main record cache, same for size
Otto Moerbeek [Tue, 3 Jan 2023 10:20:26 +0000 (11:20 +0100)]
Merge pull request #12334 from omoerbeek/rec-more-edns
rec: Generate EDE in more cases, specifically on unreachable auths or sythesized results.
Otto Moerbeek [Tue, 3 Jan 2023 08:24:05 +0000 (09:24 +0100)]
Make a distinction between "ordinary" negcache results and entire name results.
Otto Moerbeek [Mon, 2 Jan 2023 11:09:51 +0000 (12:09 +0100)]
Merge pull request #12368 from rgacogne/rec-add-missing-exception-reason-parse-auth-packet
rec: Add the 'parse packet from auth' error message to structured logging
Remi Gacogne [Wed, 28 Dec 2022 08:49:41 +0000 (09:49 +0100)]
rec: Add the 'parse packet from auth' error message to structured logging
Josh Soref [Wed, 28 Dec 2022 00:30:53 +0000 (19:30 -0500)]
Add missing comma to pdns_control ccounts
Remi Gacogne [Tue, 27 Dec 2022 16:01:55 +0000 (17:01 +0100)]
dnsdist: Prevent an underflow of the TCP d_queued counter
By incrementing it _before_ writing to the pipe, and decrementing
it in case of an error, we prevent a very possible underflow from
occurring if the reader manages to decrement before we can return
from write and increment it.
Axel Viala [Sun, 11 Dec 2022 15:12:44 +0000 (16:12 +0100)]
clang-tidy: uninitialized variables explicitly defaulted.
Also pass to one declaration per line at one site.
Axel Viala [Sun, 11 Dec 2022 14:56:31 +0000 (15:56 +0100)]
clang-tidy: IsTimeSpec function: curly + implicit conversions.
Review Apply @omoerbeek suggestion fix cast to unsigned char.
Axel Viala [Sun, 11 Dec 2022 14:56:06 +0000 (15:56 +0100)]
clang-tidy: Use auto on iterator for loop
Axel Viala [Sun, 11 Dec 2022 14:44:45 +0000 (15:44 +0100)]
Remove redundant headers
- recursor_cache.cc
- zoneparser-tng.cc
Axel Viala [Sun, 11 Dec 2022 11:41:28 +0000 (12:41 +0100)]
clang-tidy: nullptr where possible.
- ldapbackend.cc
- recursor_cache.cc
- recusor_cache.hh
- zoneparser-tng.cc
Axel Viala [Thu, 6 Oct 2022 11:50:43 +0000 (13:50 +0200)]
[clang-tidy:Ccast] Avoid a C cast and modernize.
Code inspired by how it's done in test-dnsrecords_cc.cc.
Axel Viala [Thu, 6 Oct 2022 11:48:58 +0000 (13:48 +0200)]
[clang-tidy:empty] use empty() in various places.
- dnsrecords.cc
- recursor_cache.cc
- dnsrecords.cc.
- zoneparser-tng.cc
empty
Axel Viala [Thu, 6 Oct 2022 11:33:02 +0000 (13:33 +0200)]
[clang-tidy:array] in dnsparser.cc use std::array.
Review by @omoerbeek: Fix size inconsistancy.
Axel Viala [Thu, 6 Oct 2022 11:32:14 +0000 (13:32 +0200)]
clang-tidy: modernize deprecated header invarious places
- time.h -> ctime.
- signal.h -> csignal
- errno.h -> cerrno
Axel Viala [Thu, 6 Oct 2022 11:23:10 +0000 (13:23 +0200)]
[clang-tidy:array] getTypeString std::array<static string> instead of char * C array.
Apply @Omoerbeek suggestion. char * -> static string &
Axel Viala [Wed, 5 Oct 2022 21:50:10 +0000 (23:50 +0200)]
[pdnsutils] Use const std::array for metadata whitelist.
Otto Moerbeek [Fri, 23 Dec 2022 07:06:09 +0000 (08:06 +0100)]
Merge pull request #12348 from omoerbeek/rec-tcounters-dnssec
rec: move dnssec and policy counters to TCounter object
Remi Gacogne [Thu, 22 Dec 2022 09:29:37 +0000 (10:29 +0100)]
Merge pull request #12292 from rgacogne/minicurl-smart
auth, rec: Wrap the CURL raw pointers in smart pointers
Remi Gacogne [Wed, 21 Dec 2022 13:50:31 +0000 (14:50 +0100)]
MiniCurl: Make it safe to reuse a MiniCurl object