]>
git.ipfire.org Git - thirdparty/pdns.git/log
Remi Gacogne [Mon, 8 Mar 2021 09:08:16 +0000 (10:08 +0100)]
rec: Update the outgoing protobuf tests
We no longer send DS queries to determine the zone cuts before
resolving.
Remi Gacogne [Fri, 5 Mar 2021 22:35:09 +0000 (23:35 +0100)]
rec: DNAME redirects DNS names subordinate to its owner name
Remi Gacogne [Fri, 5 Mar 2021 16:25:43 +0000 (17:25 +0100)]
rec: Update the validation state if we have not validated any record
Remi Gacogne [Fri, 5 Mar 2021 16:24:04 +0000 (17:24 +0100)]
rec: An opt-out NSEC3 is a valid (insecure) proof for an expanded wildcard
Remi Gacogne [Fri, 5 Mar 2021 16:18:09 +0000 (17:18 +0100)]
rec: We can't validate a record signed by a DNSKEY we are retrieving
Remi Gacogne [Thu, 4 Mar 2021 15:04:13 +0000 (16:04 +0100)]
rec: Update queries count now that the negindic validation status is right
We used to look for zone cuts when we did not need to.
Remi Gacogne [Thu, 4 Mar 2021 15:02:48 +0000 (16:02 +0100)]
rec: Fix the validation status computation with negative indication
We need to know whether the denial had signatures to decide whether
we need to lool for a zone cut.
Remi Gacogne [Thu, 4 Mar 2021 15:01:02 +0000 (16:01 +0100)]
rec: Fix aggressive NSEC unit and regression tests
We don't get the SOA and NSEC(3) since we don't ask for the DS before-hand,
so we need to do a specific query to get it.
Remi Gacogne [Wed, 24 Feb 2021 15:55:06 +0000 (16:55 +0100)]
rec: Fix a typo in a comment
Remi Gacogne [Thu, 4 Feb 2021 17:29:34 +0000 (18:29 +0100)]
rec: Clean up the validation of denial (NXD) in the SyncRes
Remi Gacogne [Thu, 4 Feb 2021 15:21:13 +0000 (16:21 +0100)]
rec: Make sure we don't miss insecure cuts, fix several DNSSEC issues
Remi Gacogne [Wed, 3 Feb 2021 17:34:58 +0000 (18:34 +0100)]
rec: Get rid of early zone cut computation
This commits removes the early zone cut computation using DS queries.
It instead determines the status of a record when it is either received
from an authoritative server or retrieved from a cache, detecting missed
zone cuts when the expected signatures are not present.
This results in roughly 8% less outgoing queries in quick testing.
One remaining issue is that we do not detect a missing zone cut when
we get signatures but the DS record has not been pusblished. We should
likely try to find a DS denial when the signer is not expected, or
perhaps always?
We also need some optimizations, like perhaps caching the (N)TA,
and updating the zone cuts when we see a DS or denial of a DS in
an answer.
Pieter Lexis [Wed, 3 Mar 2021 21:14:44 +0000 (22:14 +0100)]
Merge pull request #10116 from pieterlexis/lmdb-docs
docs: improve rendering of lmdb page
Remi Gacogne [Wed, 3 Mar 2021 16:22:25 +0000 (17:22 +0100)]
Merge pull request #10133 from rgacogne/ddist-cache-shards-purge-expired
dnsdist: Clean up expired entries from all the packet cache's shards
Remi Gacogne [Wed, 3 Mar 2021 15:14:07 +0000 (16:14 +0100)]
dnsdist: Use modern C++-for loops, as suggested by Otto
Remi Gacogne [Wed, 3 Mar 2021 13:49:03 +0000 (14:49 +0100)]
dnsdist: Remove now unused shard index, we scan every shard anyway
Otto Moerbeek [Wed, 3 Mar 2021 12:25:19 +0000 (13:25 +0100)]
Merge pull request #10118 from pieterlexis/rec-deprecate-process-no-validate
rec: Change dnssec default to `process`
Remi Gacogne [Wed, 3 Mar 2021 12:14:48 +0000 (13:14 +0100)]
Merge pull request #10139 from rgacogne/ddist-remove-trailing-test-overflow
dnsdist: Fix size check during trailing data addition, regression tests
Otto Moerbeek [Wed, 3 Mar 2021 11:42:26 +0000 (12:42 +0100)]
s/contented/contended
Otto Moerbeek [Wed, 3 Mar 2021 11:31:41 +0000 (12:31 +0100)]
Merge pull request #10138 from omoerbeek/format-modules
Move to clang-format-11 and start format checks for pdns/modules
Pieter Lexis [Wed, 3 Mar 2021 11:04:06 +0000 (12:04 +0100)]
extend and fix OutgoingProtobufNoQueriesTest.testA
Pieter Lexis [Wed, 3 Mar 2021 10:33:48 +0000 (11:33 +0100)]
protobuf test: fix and expand the OutgoingProtobufDefaultTest.testA test
Pieter Lexis [Wed, 3 Mar 2021 10:33:02 +0000 (11:33 +0100)]
protobuf test: print message and fix a small bug
Remi Gacogne [Wed, 3 Mar 2021 10:26:25 +0000 (11:26 +0100)]
dnsdist: Revert 'Remove the useless separate entries counter from the cache'
We should not be getting the size of the map without locking it, so
keeping a separate counter is better for now.
Otto [Wed, 3 Mar 2021 10:21:10 +0000 (11:21 +0100)]
Formatting fixes in recursordist
Otto [Wed, 3 Mar 2021 10:05:55 +0000 (11:05 +0100)]
Lets move to bullseye which has more modern clang-format-11
Otto Moerbeek [Wed, 3 Mar 2021 10:12:48 +0000 (11:12 +0100)]
Merge pull request #10137 from omoerbeek/cpp-warnings
Fix a few unused lambda captures and signed/unsigned warnings
Remi Gacogne [Wed, 3 Mar 2021 09:59:11 +0000 (10:59 +0100)]
dnsdist: Fix size check during trailing data addition, regression tests
Otto [Wed, 3 Mar 2021 09:45:04 +0000 (10:45 +0100)]
Start format checks for pdns/modules
Remi Gacogne [Wed, 3 Mar 2021 09:33:12 +0000 (10:33 +0100)]
dnsdist: Prevent an infinite loop when a cache shard is below the limit
Otto [Wed, 3 Mar 2021 08:58:37 +0000 (09:58 +0100)]
Fix a few unused lambda captures and signed/unsigned warnings
Remi Gacogne [Wed, 3 Mar 2021 08:31:44 +0000 (09:31 +0100)]
dnsdist: Make sure the TTD is expired in the cache cleaning unit tests
We were using a too small time margin in the test, causing some issues
to not be expired when the test takes more than one second to insert
the cache entries.
Use a one-hour margin instead.
Remi Gacogne [Wed, 3 Mar 2021 08:07:11 +0000 (09:07 +0100)]
Merge pull request #10131 from rgacogne/ddist-tcp-counters
dnsdist: Do not update the TCP error counters on idle states
Remi Gacogne [Wed, 3 Mar 2021 08:07:02 +0000 (09:07 +0100)]
Merge pull request #10134 from rgacogne/ddist-fix-loop-copy-warning
dnsdist: Prevent a copy in DownstreamConnectionsManager::clear()
Remi Gacogne [Tue, 2 Mar 2021 18:54:41 +0000 (19:54 +0100)]
dnsdist: Prevent a copy in DownstreamConnectionsManager::clear()
We don't care about performance in that place but it prevents a warning.
Remi Gacogne [Tue, 2 Mar 2021 17:16:59 +0000 (18:16 +0100)]
dnsdist: Use modern C++ loops in the packet cache code
Remi Gacogne [Tue, 2 Mar 2021 17:08:17 +0000 (18:08 +0100)]
dnsdist: Remove the useless separate entries counter from the cache
Getting the size of the map is a constant-time operation and should
be as accurate so let's just use that.
Remi Gacogne [Tue, 2 Mar 2021 17:03:17 +0000 (18:03 +0100)]
dnsdist: Remove entries from all the packet cache's shards as well
Remi Gacogne [Tue, 2 Mar 2021 16:50:54 +0000 (17:50 +0100)]
dnsdist: Clean up expired entries from all the packet cache's shards
Otherwise we might remove enough entries from the first shards only
and stop there, which means that the other shards might remain full.
This might be fine if we clean up often enough since the next cleaning
run will start with the remaining shards, but that's sub-optimal when
we are often nearly full because it will prevent new entries from being
inserted in the shards that are full.
Otto Moerbeek [Tue, 2 Mar 2021 16:44:36 +0000 (17:44 +0100)]
Merge pull request #10132 from omoerbeek/sdig-single-write
sdig: write 2-byte header and request in one write call.
Otto [Tue, 2 Mar 2021 15:31:13 +0000 (16:31 +0100)]
Write 2-byte header and request in one write call.
Remi Gacogne [Tue, 2 Mar 2021 14:55:04 +0000 (15:55 +0100)]
dnsdist: Do not update the TCP error counters on idle states
Remi Gacogne [Tue, 2 Mar 2021 14:23:28 +0000 (15:23 +0100)]
Merge pull request #10130 from rgacogne/ddist-src-itf-selection
dnsdist: Remove forgotten warning about source interface selection
Remi Gacogne [Tue, 2 Mar 2021 12:51:23 +0000 (13:51 +0100)]
dnsdist: Remove forgotten warning about source interface selection
Pieter Lexis [Thu, 25 Feb 2021 12:18:48 +0000 (13:18 +0100)]
Fix tests
Pieter Lexis [Wed, 24 Feb 2021 11:00:20 +0000 (12:00 +0100)]
rec: Change dnssec default to `process`
Remi Gacogne [Tue, 2 Mar 2021 12:29:46 +0000 (13:29 +0100)]
Merge pull request #10108 from rgacogne/ddist-tcp-fixes
dnsdist: Fix several bugs in the TCP code path, add unit tests
Remi Gacogne [Wed, 24 Feb 2021 14:20:03 +0000 (15:20 +0100)]
dnsdist: Also update the TTD on a 'write' IO update
Remi Gacogne [Wed, 24 Feb 2021 13:46:38 +0000 (14:46 +0100)]
dnsdist: Re-enable TCP unit tests causing a lot of queries
Remi Gacogne [Wed, 24 Feb 2021 13:38:39 +0000 (14:38 +0100)]
Fix TCP_FASTOPEN_CONNECT detection, add a fastOpen option to sdig
Remi Gacogne [Mon, 22 Feb 2021 10:05:20 +0000 (11:05 +0100)]
dnsdist: Fix sorting in Makefile.am (again)
Remi Gacogne [Mon, 22 Feb 2021 09:37:16 +0000 (10:37 +0100)]
dnsdist: dnsdist-tcp-downstream.cc sorts _before_ dnsdist-tcp.cc
Remi Gacogne [Fri, 19 Feb 2021 15:37:42 +0000 (16:37 +0100)]
dnsdist: More TCP unit tests, clean up the existing ones
Remi Gacogne [Thu, 18 Feb 2021 18:15:22 +0000 (19:15 +0100)]
dnsdist: Fix some non-realistic TCP unit tests
Remi Gacogne [Thu, 18 Feb 2021 17:11:30 +0000 (18:11 +0100)]
dnsdist: Add a unit test for TCP I/O errors with pending queries
Remi Gacogne [Thu, 18 Feb 2021 16:45:06 +0000 (17:45 +0100)]
dnsdist: Add a unit test for outgoing proxy protocol over TCP
Remi Gacogne [Thu, 18 Feb 2021 16:39:04 +0000 (17:39 +0100)]
dnsdist: Fix the addition of the proxy protocol payload when reconnecting
Remi Gacogne [Thu, 18 Feb 2021 13:55:11 +0000 (14:55 +0100)]
dnsdist: Mark GnuTLS DoT connections as closed for reading as well
Remi Gacogne [Wed, 17 Feb 2021 18:01:09 +0000 (19:01 +0100)]
dnsdist: Clean up XFR handling
Remi Gacogne [Wed, 17 Feb 2021 16:22:16 +0000 (17:22 +0100)]
dnsdist: Remove redundant test in the TCP path
Remi Gacogne [Wed, 17 Feb 2021 16:21:26 +0000 (17:21 +0100)]
dnsdist: Add more TCP OOOR unit tests
Remi Gacogne [Tue, 16 Feb 2021 17:54:48 +0000 (18:54 +0100)]
dnsdist: More TCP unit tests
Remi Gacogne [Tue, 16 Feb 2021 17:53:10 +0000 (18:53 +0100)]
dnsdist: Fix a possible nullptr-dereference in TCP handling
We need to be careful about the client going away (closes the connection,
for example) while we are sending queued responses.
Remi Gacogne [Mon, 15 Feb 2021 17:49:58 +0000 (18:49 +0100)]
dnsdist: More TCP out-of-order unit tests
Remi Gacogne [Mon, 15 Feb 2021 14:47:56 +0000 (15:47 +0100)]
dnsdist: Stricter IO checks in the TCP unit tests and more OOOR tests
Remi Gacogne [Mon, 15 Feb 2021 14:45:58 +0000 (15:45 +0100)]
dnsdist: Send a TCP query to the backend if we are not reading an answer
Remi Gacogne [Mon, 15 Feb 2021 14:37:27 +0000 (15:37 +0100)]
dnsdist: Add the TCP response size to the verbose message
Remi Gacogne [Thu, 11 Feb 2021 18:04:37 +0000 (19:04 +0100)]
dnsdist: Add a lot more of TCP unit tests
Remi Gacogne [Fri, 12 Feb 2021 16:56:18 +0000 (17:56 +0100)]
dnsdist: Better handling of backend TCP responses
Remi Gacogne [Thu, 11 Feb 2021 18:03:07 +0000 (19:03 +0100)]
dnsdist: Better handling of TCP responses mixed with queries
Remi Gacogne [Thu, 11 Feb 2021 18:02:03 +0000 (19:02 +0100)]
dnsdist: Clean up the Downstream TCP code by using a TCPIOHandler
Remi Gacogne [Wed, 10 Feb 2021 17:57:02 +0000 (18:57 +0100)]
dnsdist: Add more TCP unit tests
Remi Gacogne [Wed, 10 Feb 2021 17:56:03 +0000 (18:56 +0100)]
dnsdist: No need to retry if the last IO operation failed
Remi Gacogne [Tue, 9 Feb 2021 17:56:09 +0000 (18:56 +0100)]
dnsdist: [WIP] Add unit tests for the TCP stack
Remi Gacogne [Mon, 8 Feb 2021 16:44:11 +0000 (17:44 +0100)]
dnsdist: Fix exceptions handling in TCP/DoT worker threads
Remi Gacogne [Mon, 8 Feb 2021 15:52:45 +0000 (16:52 +0100)]
dnsdist: Add a bit more output to the TCP states debug log
Remi Gacogne [Mon, 8 Feb 2021 15:25:31 +0000 (16:25 +0100)]
dnsdist: Report the error when the GnuTLS handshake failed
Remi Gacogne [Mon, 8 Feb 2021 15:09:32 +0000 (16:09 +0100)]
dnsdist: Minor clean-ups in dnsdist-tcp.cc
Remi Gacogne [Mon, 8 Feb 2021 15:01:07 +0000 (16:01 +0100)]
dnsdist: Add an option to set the size of the TCP internal pipe's buffer
Remi Gacogne [Mon, 8 Feb 2021 14:35:00 +0000 (15:35 +0100)]
dnsdist: Move TCPClientCollection ctor to dnsdist-tcp.cc
Remi Gacogne [Mon, 8 Feb 2021 14:26:13 +0000 (15:26 +0100)]
dnsdist: Prefix the static TCP client counting vars with 's_'
Remi Gacogne [Mon, 8 Feb 2021 14:24:28 +0000 (15:24 +0100)]
dnsdist: Make sure we close the TLS layer before the descriptor
Remi Gacogne [Tue, 2 Mar 2021 09:21:48 +0000 (10:21 +0100)]
Merge pull request #10047 from rgacogne/rec-aggressive-nsec-caching
rec: Implement rfc 8198 - Aggressive Use of DNSSEC-Validated Cache
Otto Moerbeek [Fri, 26 Feb 2021 11:39:26 +0000 (12:39 +0100)]
Merge pull request #10112 from omoerbeek/rec-less-cdname-logging
rec: Be less verbose telling we are looking up CNAMEs or DNAMEs
Remi Gacogne [Wed, 24 Feb 2021 17:20:30 +0000 (18:20 +0100)]
rec: Skip the aggressive NSEC cache for internal and forward zones
Otto Moerbeek [Wed, 24 Feb 2021 16:39:20 +0000 (17:39 +0100)]
Merge pull request #10111 from omoerbeek/rec-drop-from-lua
rec: Handle policy (if needed) after postresolve and document the hooks better
Remi Gacogne [Wed, 24 Feb 2021 15:32:06 +0000 (16:32 +0100)]
Merge pull request #9361 from cmouse/tostring
Tostring
Otto Moerbeek [Wed, 24 Feb 2021 15:31:27 +0000 (16:31 +0100)]
Update pdns/recursordist/docs/lua-scripting/hooks.rst
Co-authored-by: Remi Gacogne <rgacogne+github@valombre.net>
Otto Moerbeek [Wed, 24 Feb 2021 15:27:56 +0000 (16:27 +0100)]
Merge pull request #10113 from omoerbeek/rec-protobuf-vstate
rec: Add validation state to protobuf message.
Remi Gacogne [Wed, 24 Feb 2021 15:25:54 +0000 (16:25 +0100)]
Merge pull request #10103 from rgacogne/ddist-doc-sessions-management
dnsdist: Add a "TLS sessions management" guide
Remi Gacogne [Wed, 24 Feb 2021 15:18:36 +0000 (16:18 +0100)]
rec: Fix handling of the DNAME bit in parent NSEC(3)s
Aki Tuomi [Wed, 29 Jul 2020 10:47:30 +0000 (13:47 +0300)]
dnsdist: Fix tests to use tostring
Aki Tuomi [Wed, 29 Jul 2020 09:51:44 +0000 (12:51 +0300)]
dnsdist: Add __tostring to TimedIPRules
Aki Tuomi [Wed, 29 Jul 2020 09:50:40 +0000 (12:50 +0300)]
dnsdist: Use __tostring instead of toString
LuaWrapper supports __tostring for objects to make
str() work.
Remi Gacogne [Wed, 24 Feb 2021 10:47:17 +0000 (11:47 +0100)]
dnsdist: Clarify that sessions and tickets are supported, how the STEK should be stored
Remi Gacogne [Wed, 24 Feb 2021 10:34:19 +0000 (11:34 +0100)]
rec: Enable the aggressive NSEC cache by default, if DNSSEC is enabled
Remi Gacogne [Wed, 24 Feb 2021 10:12:46 +0000 (11:12 +0100)]
rec: Add regression tests for the aggressive NSEC cache
Remi Gacogne [Wed, 24 Feb 2021 09:50:38 +0000 (10:50 +0100)]
rec: Clean up the wildcard denial validation code
Pieter Lexis [Tue, 23 Feb 2021 19:51:47 +0000 (20:51 +0100)]
docs: improve rendering of lmdb page
Remi Gacogne [Tue, 23 Feb 2021 17:27:02 +0000 (18:27 +0100)]
rec: Fix the generation of positive answer from a NSEC+wildcard