]>
git.ipfire.org Git - thirdparty/pdns.git/log
Remi Gacogne [Wed, 15 Sep 2021 08:15:52 +0000 (10:15 +0200)]
dnsdist: Handle exception raised in IOStateGuard's destructor
Reported by Coverity (CID 372512).
Remi Gacogne [Tue, 14 Sep 2021 10:39:11 +0000 (12:39 +0200)]
Merge pull request #10635 from rgacogne/ddist-doh-backend-rebased
dnsdist: Implementation of DoH between dnsdist and the backend
Remi Gacogne [Tue, 14 Sep 2021 07:51:49 +0000 (09:51 +0200)]
dnsdist: Convert the TLS session cache to LockGuarded
Remi Gacogne [Mon, 13 Sep 2021 13:49:01 +0000 (15:49 +0200)]
dnsdist: Add missing metrics to the API regression tests
Remi Gacogne [Thu, 9 Sep 2021 14:43:28 +0000 (16:43 +0200)]
dnsdist: Add metrics for outgoing DoH and cross-protocol flows
Remi Gacogne [Wed, 8 Sep 2021 14:52:12 +0000 (16:52 +0200)]
dnsdist: Remove duplicated member
Reported by cppcheck.
Remi Gacogne [Wed, 8 Sep 2021 14:51:01 +0000 (16:51 +0200)]
Apply performance advices from cppcheck
I'm pretty sure the compiler is smart enough to do that by itself,
but it does not hurt and makes the warnings go away.
Remi Gacogne [Tue, 7 Sep 2021 10:19:40 +0000 (12:19 +0200)]
dnsdist: Prevent TSAN from complaining about carbon metrics
Remi Gacogne [Tue, 7 Sep 2021 10:19:03 +0000 (12:19 +0200)]
dnsdist: Fix a warning about array init for HTTP/2 headers
Remi Gacogne [Tue, 7 Sep 2021 10:18:04 +0000 (12:18 +0200)]
dnsdist: Fix wrong reference counting in DoH cross-protocol handling
Remi Gacogne [Tue, 7 Sep 2021 10:16:57 +0000 (12:16 +0200)]
dnsdist: Cleaning the connections cache is done per thread
Remi Gacogne [Tue, 7 Sep 2021 07:50:44 +0000 (09:50 +0200)]
Add 'nghttp' to the spell-checker list of expected words
Remi Gacogne [Mon, 6 Sep 2021 16:12:45 +0000 (18:12 +0200)]
dnsdist: Don't warn about outgoing DoH worker then there isn't any
Remi Gacogne [Mon, 6 Sep 2021 16:12:28 +0000 (18:12 +0200)]
dnsdist: Add more outgoing DoH documentation
Remi Gacogne [Mon, 6 Sep 2021 15:44:34 +0000 (17:44 +0200)]
dnsdist: The number of concurrent streams is hardcoded in libh2o
Remi Gacogne [Mon, 6 Sep 2021 14:50:07 +0000 (16:50 +0200)]
dnsdist: Fix formatting
Remi Gacogne [Mon, 6 Sep 2021 14:46:38 +0000 (16:46 +0200)]
dnsdist: Implement Proxy Protocol support for outgoing DoH
Remi Gacogne [Mon, 6 Sep 2021 07:48:22 +0000 (09:48 +0200)]
dnsdist: Fix formatting
It actually makes it harder to read the lists of events in the HTTP/2
unit tests, but I can't find a proper way to fix that.
Remi Gacogne [Sat, 4 Sep 2021 09:54:24 +0000 (11:54 +0200)]
dnsdist: Replace useless switch() with an if statement
Remi Gacogne [Fri, 3 Sep 2021 15:39:06 +0000 (17:39 +0200)]
Add DoH to the spell-check patterns
Remi Gacogne [Fri, 3 Sep 2021 15:35:18 +0000 (17:35 +0200)]
dnsdist: Add an outgoing DoH workers setting, minimal documentation
Remi Gacogne [Tue, 31 Aug 2021 15:16:09 +0000 (17:16 +0200)]
dnsdist: Add unit tests for outgoing DoH
Remi Gacogne [Mon, 30 Aug 2021 15:39:19 +0000 (17:39 +0200)]
dnsdist: Unify the conflicting FDWrapper from rec and dnsdist
Remi Gacogne [Mon, 30 Aug 2021 15:04:01 +0000 (17:04 +0200)]
dnsdist: Process responses in the right thread for incoming TCP/DoT queries
Remi Gacogne [Fri, 27 Aug 2021 14:54:03 +0000 (16:54 +0200)]
dnsdist: Add regression tests for DoH between dnsdist and the backend
Remi Gacogne [Fri, 27 Aug 2021 09:39:23 +0000 (11:39 +0200)]
dnsdist: Use the 'checkTimeout' value for health-check queries
Remi Gacogne [Thu, 26 Aug 2021 13:34:49 +0000 (15:34 +0200)]
dnsdist: Add support for outgoing X-Forwarded-* headers
Remi Gacogne [Wed, 25 Aug 2021 14:47:42 +0000 (16:47 +0200)]
dnsdist: Fix build on ancient GnuTLS versions (< 3.5.0)
Remi Gacogne [Wed, 25 Aug 2021 14:28:04 +0000 (16:28 +0200)]
dnsdist: Build with nghttp2 support in GitHub actions
Remi Gacogne [Wed, 25 Aug 2021 14:14:46 +0000 (16:14 +0200)]
dnsdist: Add initial support for TCP/DoT -> DoH
Remi Gacogne [Wed, 25 Aug 2021 12:06:49 +0000 (14:06 +0200)]
dnsdist: Accept more than one TLS ticket from the same connection
Remi Gacogne [Wed, 25 Aug 2021 10:24:43 +0000 (12:24 +0200)]
dnsdist: Fix formatting in dnsdist-nghttp2.cc
Remi Gacogne [Wed, 25 Aug 2021 09:00:27 +0000 (11:00 +0200)]
dnsdist: Build with nghttp2 support when available
Remi Gacogne [Wed, 25 Aug 2021 08:49:13 +0000 (10:49 +0200)]
dnsdist: Proper detection of nghttp2 support
Remi Gacogne [Tue, 24 Aug 2021 15:39:49 +0000 (17:39 +0200)]
dnsdist: Implement health-checks for DoH backends
Remi Gacogne [Fri, 6 Aug 2021 15:01:03 +0000 (17:01 +0200)]
dnsdist: Better downstream DoH support, better DoT/DoH ALPN handling
Remi Gacogne [Mon, 19 Jul 2021 16:06:53 +0000 (18:06 +0200)]
Working DoH between dnsdist and the backend!
Remi Gacogne [Fri, 9 Jul 2021 14:52:52 +0000 (16:52 +0200)]
dnsdist: Proof of concept of DNS over HTTP/2 client
Remi Gacogne [Mon, 19 Jul 2021 16:06:05 +0000 (18:06 +0200)]
dnsdist: Properly close the cross-connections pipes in case of error
Remi Gacogne [Thu, 19 Aug 2021 09:06:05 +0000 (11:06 +0200)]
dnsdist: Fix TLS session counters for incoming DoH
Increase the 'new' / 'resumed' counters once per connection, not
once per query.
Remi Gacogne [Mon, 12 Jul 2021 13:49:41 +0000 (15:49 +0200)]
tcpiohandler: Add support for partial reads
Remi Gacogne [Mon, 13 Sep 2021 12:54:25 +0000 (14:54 +0200)]
Merge pull request #10697 from rgacogne/ddist-fix-doc-versions
dnsdist: Use the correct version in the doc for backported features
Peter van Dijk [Mon, 13 Sep 2021 11:08:48 +0000 (13:08 +0200)]
Merge pull request #10543 from RobinGeuze/actuallyUseQCinUeberbackend
auth: actually use the QueryCache for the UeberBackend unit tests
Pieter Lexis [Mon, 13 Sep 2021 10:17:54 +0000 (12:17 +0200)]
Merge pull request #10709 from pieterlexis/svcb-types
docs: add SVCB and HTTP to supported types
Peter van Dijk [Mon, 13 Sep 2021 10:11:32 +0000 (12:11 +0200)]
Merge pull request #10710 from Habbie/gh-actions-ccache
gh actions: use ccache
Peter van Dijk [Fri, 10 Sep 2021 11:32:40 +0000 (13:32 +0200)]
gh actions: enable ccache
Pieter Lexis [Mon, 13 Sep 2021 09:09:07 +0000 (11:09 +0200)]
Merge branch 'add-svcb-https-to-record-types' of https://github.com/kpfleming/pdns into svcb-types
Remi Gacogne [Mon, 13 Sep 2021 08:15:19 +0000 (10:15 +0200)]
Merge pull request #10701 from rgacogne/rec-aggressive-nsec3-duplicate
rec: Fix the aggressive cache returning duplicated NSEC3 records
Remi Gacogne [Mon, 13 Sep 2021 07:41:32 +0000 (09:41 +0200)]
Merge pull request #10687 from rgacogne/cast-qualifier
Clean up a bit of "cast from type [...] casts away qualifiers" warnings
Remi Gacogne [Mon, 13 Sep 2021 07:38:12 +0000 (09:38 +0200)]
Merge pull request #10705 from rgacogne/ddist-outstanding-tcp
dnsdist: Fix outstanding counter issue when a TCP connection dies
Otto Moerbeek [Mon, 13 Sep 2021 07:19:14 +0000 (09:19 +0200)]
Merge pull request #10714 from gmelikov/gmelikov-patch-1
DNSQuestion docs: Remove duplicate `qname`
Kevin P. Fleming [Fri, 10 Sep 2021 22:28:57 +0000 (18:28 -0400)]
pdns: Document that SVCB and HTTPS RRs are supported
These two record types (not yet standardized) have been supported
since the 4.4.0 release, but were not listed in the 'Supported
Record Types' appendix in the documentation.
George Melikov [Fri, 10 Sep 2021 16:06:39 +0000 (19:06 +0300)]
DNSQuestion docs: Remove duplicate `qname`
Pieter Lexis [Fri, 10 Sep 2021 11:20:28 +0000 (13:20 +0200)]
docs: add SVCB and HTTP to supported types
Peter van Dijk [Fri, 10 Sep 2021 12:40:35 +0000 (14:40 +0200)]
Merge pull request #10484 from mind04/pdns-random
pdns: remove randombackend
Peter van Dijk [Fri, 10 Sep 2021 11:52:27 +0000 (13:52 +0200)]
Merge pull request #10688 from Habbie/gh-actions-collect
gh actions: make a single "collect" endpoint to simplify required checks for merges
Peter van Dijk [Fri, 10 Sep 2021 11:47:41 +0000 (13:47 +0200)]
Merge pull request #10708 from Habbie/artifact-expiry
gh actions: limit retention on uploaded artifacts
Kees Monshouwer [Thu, 3 Jun 2021 07:11:19 +0000 (09:11 +0200)]
pdns: remove randombackend
Peter van Dijk [Fri, 10 Sep 2021 08:32:59 +0000 (10:32 +0200)]
gh actions: limit retention on uploaded artifacts
Peter van Dijk [Thu, 9 Sep 2021 13:04:33 +0000 (15:04 +0200)]
Merge pull request #10707 from Habbie/dummy-spelling-workflow
gh actions: add dummy spelling workflow so we can prevent old versions from running
Peter van Dijk [Thu, 9 Sep 2021 13:02:13 +0000 (15:02 +0200)]
gh actions: add dummy spelling workflow so we can prevent old versions from running
Remi Gacogne [Thu, 9 Sep 2021 09:51:00 +0000 (11:51 +0200)]
dnsdist: Fix outstanding counter issue when a TCP connection dies
When the client closes the TCP connection while we are still waiting
for the backend to send at least one response, and the backend connection
then terminates anormally, we could have not properly reset the outstanding
counter of that backend.
Remi Gacogne [Wed, 8 Sep 2021 09:11:53 +0000 (11:11 +0200)]
rec: Fix the aggressive cache returning duplicated NSEC3 records
No need to include the same record twice when it provides, at the same
time, a proof that the closest encloser exists and that the next closer
does not, and/or that the wildcard does not exist either.
This happens right away in a zone with a single record, like reported
by Matt Nordhoff, but it might happen in other cases as well.
Remi Gacogne [Wed, 8 Sep 2021 07:38:56 +0000 (09:38 +0200)]
Merge pull request #10695 from rgacogne/ddist-tc-tcp
dnsdist: Ignore TCAction over TCP
Remi Gacogne [Tue, 7 Sep 2021 15:30:30 +0000 (17:30 +0200)]
dnsdist: Fix EDNS tests on self-generated answers for TC over TCP
Remi Gacogne [Tue, 7 Sep 2021 14:59:59 +0000 (16:59 +0200)]
dnsdist: Use the correct version in the doc for backported features
These have been backported to 1.6.1:
- #10560
- #10550
Remi Gacogne [Tue, 7 Sep 2021 14:28:07 +0000 (16:28 +0200)]
dnsdist: Ignore TCAction over TCP
Peter van Dijk [Wed, 1 Sep 2021 11:54:12 +0000 (13:54 +0200)]
gh actions: make a single "collect" endpoint to simplify required checks for merges
Remi Gacogne [Wed, 1 Sep 2021 11:47:54 +0000 (13:47 +0200)]
Clean up a bit of cast from type [...] casts away qualifiers" warnings
Obtained with -Wcast-qual.
Peter van Dijk [Wed, 1 Sep 2021 11:05:18 +0000 (13:05 +0200)]
Merge pull request #10536 from Habbie/gh-builder-upload
gh actions builder: upload built packages as artifacts
Remi Gacogne [Wed, 1 Sep 2021 07:43:38 +0000 (09:43 +0200)]
Merge pull request #10597 from rgacogne/ddist-svc
dnsdist: Implement SpoofSVCAction to return SVC responses
Peter van Dijk [Wed, 1 Sep 2021 07:34:28 +0000 (09:34 +0200)]
Merge pull request #10683 from Habbie/gh-actions-2
CI: move dnsdist tsan build+test from CircleCI to GH Actions
Peter van Dijk [Tue, 31 Aug 2021 15:17:17 +0000 (17:17 +0200)]
CI: move dnsdist tsan build+test from CircleCI to GH Actions
Peter van Dijk [Tue, 31 Aug 2021 09:17:08 +0000 (11:17 +0200)]
Merge pull request #10678 from jsoref/replace-apt-key-with-curl--o
Replace apt-key with curl -o
Josh Soref [Sun, 29 Aug 2021 14:49:48 +0000 (10:49 -0400)]
Replace apt-key with curl -o
apt-key is deprecated
Josh Soref [Sun, 29 Aug 2021 14:48:46 +0000 (10:48 -0400)]
docker: merge apt-get update & install layers
Otherwise the one could be stale relative to the other
Remi Gacogne [Mon, 30 Aug 2021 10:02:37 +0000 (12:02 +0200)]
Merge pull request #10681 from rgacogne/fix-ddist-coverity-build
dnsdist: Fix the Coverity build by adding the dev version of GnuTLS
Remi Gacogne [Mon, 30 Aug 2021 08:32:51 +0000 (10:32 +0200)]
dnsdist: Fix the Coverity build by adding the dev version of GnuTLS
Peter van Dijk [Mon, 30 Aug 2021 08:01:57 +0000 (10:01 +0200)]
Merge pull request #10672 from Habbie/lmdb-no-resize
lmdb-safe: resizing while there might be open transactions is unsafe
Peter van Dijk [Sun, 29 Aug 2021 20:00:10 +0000 (22:00 +0200)]
Merge pull request #10679 from jsoref/apt-get
docker: apt does not have a stable cli
Peter van Dijk [Sun, 29 Aug 2021 19:59:32 +0000 (21:59 +0200)]
Merge pull request #10677 from jsoref/advice
Try to improve advice
Josh Soref [Sun, 29 Aug 2021 15:24:14 +0000 (11:24 -0400)]
docker: apt does not have a stable cli
Josh Soref [Sun, 29 Aug 2021 14:33:16 +0000 (10:33 -0400)]
Try to improve advice
Remi Gacogne [Tue, 20 Jul 2021 08:20:32 +0000 (10:20 +0200)]
dnsdist: Fix formatting of SVC code, uglify tests for older compilers
Remi Gacogne [Mon, 19 Jul 2021 14:27:29 +0000 (16:27 +0200)]
dnsdist: Implement SpoofSVCAction to return SVC responses
Remi Gacogne [Fri, 27 Aug 2021 08:35:43 +0000 (10:35 +0200)]
Merge pull request #10338 from rgacogne/ddist-downstream-tls
dnsdist: Implement cross-protocol queries
Remi Gacogne [Fri, 27 Aug 2021 08:24:06 +0000 (10:24 +0200)]
Merge pull request #10674 from rgacogne/ddist-tls-provider-binding
dnsdist: Check that the expected TLS provider is in use in the regression tests
Remi Gacogne [Fri, 27 Aug 2021 08:23:54 +0000 (10:23 +0200)]
Merge pull request #10656 from rgacogne/ddist-mplexer-exception-dtor
dnsdist: Catch FDMultiplexerException in IOStateHandler's destructor
Remi Gacogne [Thu, 26 Aug 2021 15:54:07 +0000 (17:54 +0200)]
dnsdist: Enable GnuTLS support on Circle CI as well
Remi Gacogne [Thu, 26 Aug 2021 14:26:04 +0000 (16:26 +0200)]
dnsdist: Check that the expected TLS provider is in use in the regression tests
Remi Gacogne [Thu, 26 Aug 2021 14:25:36 +0000 (16:25 +0200)]
dnsdist: Provide bindings to know which TLS provider is in use
Remi Gacogne [Thu, 26 Aug 2021 15:18:18 +0000 (17:18 +0200)]
Merge pull request #10670 from rgacogne/ddist-gnutls-github-actions
dnsdist: Enable GnuTLS support in GitHub actions
Remi Gacogne [Thu, 26 Aug 2021 15:14:42 +0000 (17:14 +0200)]
Document the handshake handling differences between our TLS providers
Peter van Dijk [Thu, 26 Aug 2021 14:54:12 +0000 (16:54 +0200)]
Merge pull request #10673 from Habbie/dnsdist-tests-generate-cdb
dnsdist test: generate CDB files
Remi Gacogne [Wed, 25 Aug 2021 14:29:04 +0000 (16:29 +0200)]
dnsdist: Remove invalid static_assert in the DoH code (thanks Otto!)
Remi Gacogne [Thu, 8 Jul 2021 07:30:42 +0000 (09:30 +0200)]
dnsdist: Fix formatting in the 'dnsdist' namespace
Remi Gacogne [Thu, 1 Jul 2021 16:37:29 +0000 (18:37 +0200)]
dnsdist: Fix local response rules being copied in UDPTCPCrossQuerySender
Remi Gacogne [Fri, 11 Jun 2021 12:24:28 +0000 (14:24 +0200)]
dnsdist: Fix compilation with GnuTLS < 3.4.0
Remi Gacogne [Fri, 11 Jun 2021 10:25:34 +0000 (12:25 +0200)]
dnsdist: Use callbacks to retrieve TLS tickets sent by the server
In TLS 1.3, tickets can be sent at any moment of the TLS session,
and more importantly are not guaranteed to be sent before a few
bytes have been exchanged. In addition, GnuTLS invalidates a session
if the remote closes the connection in a unexpected way (which Python
seems to do, for example) so we can't rely on the ticket being available
at the end of the exchange either.
We now instead use callbacks so we can be notified as soon as a new
ticket arrives, and deal with it. We store inside the TLS connection
object so we can retrieve it at the end of the exchange, when
deciding whether the whole TCP connection can be reused or if we want
to tear it down and store the ticket for later resumption instead.
Remi Gacogne [Fri, 11 Jun 2021 10:24:46 +0000 (12:24 +0200)]
dnsdist: Check TLS session resumption for Outgoing TLS connections