]>
git.ipfire.org Git - thirdparty/pdns.git/log
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>
Otto [Fri, 26 Nov 2021 12:28:53 +0000 (13:28 +0100)]
Prepend labels starting with an underscore
Otto [Wed, 24 Nov 2021 16:29:38 +0000 (17:29 +0100)]
Compute step sizes for QM a la RFC 9156
Remi Gacogne [Wed, 24 Nov 2021 13:36:32 +0000 (14:36 +0100)]
Merge pull request #10997 from rgacogne/ddist-dump-cached-session-and-connection
dnsdist: Add a function to know how many TLS sessions are currently cached
Remi Gacogne [Wed, 24 Nov 2021 13:36:01 +0000 (14:36 +0100)]
Merge pull request #11001 from rgacogne/ddist-warn-memory-leak-gnutls
dnsdist: Warn that GnuTLS 3.7.x leaks memory when validating certs
Remi Gacogne [Wed, 24 Nov 2021 13:35:50 +0000 (14:35 +0100)]
Merge pull request #10999 from rgacogne/ddist-fix-leak-in-outgoing-tls-session-reuse
dnsdist: Fix a memory leak when reusing TLS tickets for outgoing connections
Remi Gacogne [Wed, 24 Nov 2021 13:35:38 +0000 (14:35 +0100)]
Merge pull request #10993 from rgacogne/ddist-fix-10988
dnsdist: Fix compiler/static analyzer warnings
Otto Moerbeek [Tue, 23 Nov 2021 12:42:49 +0000 (13:42 +0100)]
Merge pull request #10986 from omoerbeek/gh-check-formatting
Check formatting on GH
Peter van Dijk [Tue, 23 Nov 2021 12:41:32 +0000 (13:41 +0100)]
Merge pull request #11012 from Habbie/nsec3param-minimal
auth: new default nsec3param settings
Otto Moerbeek [Tue, 23 Nov 2021 11:15:12 +0000 (12:15 +0100)]
Merge pull request #11026 from omoerbeek/rec-regr-timing1
rec: Loosen timing checks that I have seen tripping in tsan enabled tests.
Otto [Tue, 23 Nov 2021 10:53:29 +0000 (11:53 +0100)]
Give steps a name
Otto Moerbeek [Tue, 23 Nov 2021 10:25:23 +0000 (11:25 +0100)]
Merge pull request #11010 from omoerbeek/rec-zero-scope-negcache
rec: Do negcache negative results, even when wasVariable() is true
Otto [Tue, 23 Nov 2021 10:24:10 +0000 (11:24 +0100)]
Fir error reporting when starting up fails
Otto [Tue, 23 Nov 2021 10:03:44 +0000 (11:03 +0100)]
Loosen timing checks that I have seen tripping in tsan enabled tests.
There are likely more.
Otto Moerbeek [Tue, 23 Nov 2021 09:56:03 +0000 (10:56 +0100)]
Merge pull request #11019 from omoerbeek/rec-regr-vs-libfaketime
rec: Rec regr vs libfaketime
Otto Moerbeek [Tue, 23 Nov 2021 08:07:45 +0000 (09:07 +0100)]
Merge pull request #11018 from omoerbeek/rec-tcp-notify-followup
rec: Fix logic botch introduced by notify handling
Otto Moerbeek [Mon, 22 Nov 2021 14:28:42 +0000 (15:28 +0100)]
Cleanup libfaketime handling in rec regression tests
- Use the MT variant for libfaketime, we are MT after all
- It is only needed for auth and LD_PRELOAD is set by the tests where it matters
- It interacts badly with libfstrm and tsan in the recursor
- No more separate run of the dnstap test is needed
Otto [Mon, 22 Nov 2021 14:18:07 +0000 (15:18 +0100)]
When we drop a notify over TCP, terminate the connection
Otto [Mon, 22 Nov 2021 13:09:55 +0000 (14:09 +0100)]
Fix logic botch introduced by notify handing
See #10751, some extra scrutiny review is needed to make sure no
other similat issue remains.
Peter van Dijk [Mon, 22 Nov 2021 11:09:29 +0000 (12:09 +0100)]
Merge pull request #11003 from pieterlexis/upstream-changelog
docs: Use upstream changelog package
Remi Gacogne [Mon, 22 Nov 2021 08:25:07 +0000 (09:25 +0100)]
Merge pull request #11008 from rgacogne/ddist-raise-socket-buffers
dnsdist: Add a function to set the UDP recv/snd buffer sizes
Otto Moerbeek [Mon, 22 Nov 2021 07:02:08 +0000 (08:02 +0100)]
Merge pull request #11014 from kpfleming/rec-doc-improvement
rec: Add xref between allow-notify-for-file and forward-zones-file
Kevin P. Fleming [Sun, 21 Nov 2021 09:21:50 +0000 (04:21 -0500)]
rec: Add xref between allow-notify-for-file and forward-zones-file
Remi Gacogne [Fri, 19 Nov 2021 14:27:07 +0000 (15:27 +0100)]
Allow rmem, wmem in the spell checker
Remi Gacogne [Fri, 19 Nov 2021 14:07:31 +0000 (15:07 +0100)]
dnsdist: Keep the system default values for `SO_RCVBUF` and `SO_SNDBUF`
Peter van Dijk [Fri, 19 Nov 2021 11:56:39 +0000 (12:56 +0100)]
auth: new default nsec3param settings, fixes #10864
Otto Moerbeek [Fri, 19 Nov 2021 11:26:21 +0000 (12:26 +0100)]
Merge pull request #10990 from omoerbeek/rec-notify-regrr
rec: Basic notify test
Otto Moerbeek [Fri, 19 Nov 2021 11:08:44 +0000 (12:08 +0100)]
Merge pull request #11005 from omoerbeek/rec-taskq-timeval
rec: Include sys/time.h in taskqueue.hh
Otto [Fri, 19 Nov 2021 10:57:28 +0000 (11:57 +0100)]
Do cache negcache results, even when wasVariable() is true
See https://datatracker.ietf.org/doc/html/rfc7871#section-7.4
Fixes #10994
Remi Gacogne [Fri, 19 Nov 2021 08:53:26 +0000 (09:53 +0100)]
rec: Fix the size of the UDP receive buffer
Remi Gacogne [Fri, 19 Nov 2021 08:43:17 +0000 (09:43 +0100)]
Merge pull request #11007 from rgacogne/ddist-fix-bounds-checking
dnsdist: Fix Lua parameters bound checks
Remi Gacogne [Thu, 18 Nov 2021 16:38:56 +0000 (17:38 +0100)]
dnsdist: Add a function to set the UDP recv/snd buffer sizes
And raise them to
16777216 by default.
Remi Gacogne [Thu, 18 Nov 2021 16:01:32 +0000 (17:01 +0100)]
auth,rec: Refactor the setSocket*Buffer functions
Remi Gacogne [Thu, 18 Nov 2021 15:12:42 +0000 (16:12 +0100)]
dnsdist: Fix Lua parameters bound checks
Otto [Thu, 18 Nov 2021 14:42:18 +0000 (15:42 +0100)]
Include sys/time.h; needed on musl; fixes #11000
Pieter Lexis [Thu, 18 Nov 2021 12:19:23 +0000 (13:19 +0100)]
docs: Use upstream changelog package
Peter van Dijk [Thu, 18 Nov 2021 11:25:40 +0000 (12:25 +0100)]
Merge pull request #10996 from aerique/feature/update-debian-bullseye-for-repo-script
Add `rec-45` for Debian Bullseye to repo test script.
Remi Gacogne [Thu, 18 Nov 2021 10:56:33 +0000 (11:56 +0100)]
dnsdist: Warn that GnuTLS 3.7.x leaks memory when validating certs
In some configurations that we can't detect (PKCS11 support enabled,
with a default PKCS11 trust store), GnuTLS from 3.7.0 to at least
3.7.2 leaks memory when validating a server certificate. The issue
has been reported to GnuTLS and acknowledged, but there is no
available fix yet.
Remi Gacogne [Wed, 17 Nov 2021 18:03:46 +0000 (19:03 +0100)]
dnsdist: Fix a memory leak when reusing TLS tickets for outgoing connections
We were not properly freeing the memory of TLS session tickets reused
for outgoing TLS (DoT / DoH) connections.
Reported by Stéphane Bortzmeyer (many thanks!).
Remi Gacogne [Wed, 17 Nov 2021 14:53:27 +0000 (15:53 +0100)]
dnsdist: Add a function to know how many TLS sessions are currently cached
Also dump the number of cached (active and idle) outgoing connections
when requested.
Otto Moerbeek [Wed, 17 Nov 2021 14:26:44 +0000 (15:26 +0100)]
Merge pull request #10995 from rgacogne/rec-doc-typo-allow-notify-from
rec: Fix a typo in the documentation for 'allow-notify-from'
Erik Winkels [Wed, 17 Nov 2021 13:09:55 +0000 (14:09 +0100)]
Add `rec-45` for Debian Bullseye to repo test script.
Otto Moerbeek [Wed, 17 Nov 2021 11:39:58 +0000 (12:39 +0100)]
Merge pull request #10992 from omoerbeek/rec-prep-4.6.0-beta2
rec: Prep for rec-4.6.0-beta2
Remi Gacogne [Wed, 17 Nov 2021 08:56:55 +0000 (09:56 +0100)]
rec: Fix a typo in the documentation for 'allow-notify-from'
Remi Gacogne [Tue, 16 Nov 2021 16:36:03 +0000 (17:36 +0100)]
dnsdist: Fix compiler/static analyzer warnings
Otto [Tue, 16 Nov 2021 13:10:44 +0000 (14:10 +0100)]
Prep for rec-4.6.0-beta2
Remi Gacogne [Tue, 16 Nov 2021 14:43:12 +0000 (15:43 +0100)]
Merge pull request #10987 from rgacogne/ddist17-b1-changelog-secpoll
dnsdist: Add ChangeLog and secpoll update for 1.7.0-beta1
Otto Moerbeek [Tue, 16 Nov 2021 13:30:47 +0000 (14:30 +0100)]
Positive instead of negative test
Co-authored-by: Pieter Lexis <pieter@plexis.eu>
Otto [Tue, 16 Nov 2021 12:35:58 +0000 (13:35 +0100)]
Do not count notifies in record cache hits/misses
Otto [Tue, 16 Nov 2021 12:07:40 +0000 (13:07 +0100)]
Basic notify test.
It turns out a notify increments cache-hits, that feel a bit strange.
Remi Gacogne [Tue, 16 Nov 2021 09:27:15 +0000 (10:27 +0100)]
dnsdist: Fix the description of 10920 in the ChangeLog, remove useless entries
Remi Gacogne [Tue, 16 Nov 2021 09:24:56 +0000 (10:24 +0100)]
spellcheck: Allow 'XDP', 'Grié'
Remi Gacogne [Tue, 16 Nov 2021 09:17:17 +0000 (10:17 +0100)]
Merge pull request #10883 from rgacogne/ddist-pinned-maps
dnsdist: Implement filesystem pinning for eBPF maps
Remi Gacogne [Tue, 16 Nov 2021 09:04:58 +0000 (10:04 +0100)]
dnsdist: Add ChangeLog and secpoll update for 1.7.0-beta1
Otto [Tue, 16 Nov 2021 07:30:29 +0000 (08:30 +0100)]
Use clang-11
Otto Moerbeek [Tue, 16 Nov 2021 08:05:28 +0000 (09:05 +0100)]
Merge pull request #10896 from omoerbeek/more-secpoll-check
More strict secpoll.zone check
Remi Gacogne [Mon, 15 Nov 2021 17:16:35 +0000 (18:16 +0100)]
dnsdist: Switch to a uint8_t for the XDP match action type
Remi Gacogne [Mon, 15 Nov 2021 17:11:02 +0000 (18:11 +0100)]
dnsdist: Apply suggestions from code review on the new eBPF map type
Remi Gacogne [Mon, 15 Nov 2021 16:28:23 +0000 (17:28 +0100)]
contrib/xdp.py: Apply the change suggested by Pieter (thanks!)
Co-authored-by: Pieter Lexis <pieter@plexis.eu>
Remi Gacogne [Fri, 29 Oct 2021 14:56:08 +0000 (16:56 +0200)]
dnsdist: Add a sample XDP program and associated python script in contrib
Both contributed by Pierre Grié <pierre.grie@nameshield.net>.
Remi Gacogne [Thu, 28 Oct 2021 15:58:53 +0000 (17:58 +0200)]
dnsdist: Add a new eBPF map format, support external eBPF programs
Supporting external eBPF programs makes it possible to populate the
eBPF tables from dnsdist, manually or via our dynamic blocking mechanisms,
but to actually do the filtering in an external program, like an XDP one.
We cannot increase the size of eBPF programs if we want to stay
below 4k instructions for older kernels, so this commit implements
a compatibility layer with the new map format.
The 4k limit for unprivileged was removed in 5.2 but the complexity limit remains:
The complexity limit was actually changed several times since the
32k value from its introduction in Linux 3.18: it was raised to 64k
in Linux 4.7, then to 96k in Linux 4.12, again to 128k in Linux 4.14,
and at last to 1M in Linux 5.2.
Remi Gacogne [Fri, 22 Oct 2021 15:03:27 +0000 (17:03 +0200)]
dnsdist: Implement filesystem pinning for eBPF maps
This makes the filter (v4, v6 and qnames) maps persistent across a
restart and allow external programs to read and update them without
the need to use dnsdist's console.
Otto [Tue, 16 Nov 2021 07:23:35 +0000 (08:23 +0100)]
Check formatting on GH
Otto Moerbeek [Tue, 16 Nov 2021 06:30:34 +0000 (07:30 +0100)]
indent
Peter van Dijk [Mon, 15 Nov 2021 16:30:28 +0000 (17:30 +0100)]
Merge pull request #10981 from Habbie/2136-rrset-ttl
auth 2136: apply new TTL to whole RRset, not only to the added record
Otto Moerbeek [Mon, 15 Nov 2021 16:18:51 +0000 (17:18 +0100)]
Merge pull request #10980 from omoerbeek/rec-ede-issue
rec: Return the proper ede on validation failure
Peter van Dijk [Mon, 15 Nov 2021 15:28:58 +0000 (16:28 +0100)]
auth 2136: apply new TTL to whole RRset, not only to the added record
fixes #10921
Peter van Dijk [Mon, 15 Nov 2021 15:28:47 +0000 (16:28 +0100)]
auth 2136: improve some log messages
Remi Gacogne [Mon, 15 Nov 2021 13:16:21 +0000 (14:16 +0100)]
Merge pull request #10907 from rgacogne/ddist-handle-existing-edns-mac-setedns
dnsdist: Handle existing EDNS content for SetMacAddrAction/SetEDNSOptionAction
Remi Gacogne [Mon, 15 Nov 2021 13:13:36 +0000 (14:13 +0100)]
Merge pull request #10920 from rgacogne/ddist-cleanup-conns
dnsdist: Remove unreachable code in HTTP/2 connections cleanup
Otto Moerbeek [Tue, 26 Oct 2021 06:05:33 +0000 (08:05 +0200)]
no else after exit
Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Otto [Mon, 25 Oct 2021 13:20:18 +0000 (15:20 +0200)]
tweaks and undo error entry
Otto [Mon, 25 Oct 2021 12:53:53 +0000 (14:53 +0200)]
Move check to a shell script
Otto [Mon, 25 Oct 2021 12:33:45 +0000 (14:33 +0200)]
More strict secpoll check; hope I got the yaml quoting right
Otto Moerbeek [Mon, 15 Nov 2021 12:35:02 +0000 (13:35 +0100)]
some more ()'s for readability
Co-authored-by: Remi Gacogne <github@coredump.fr>
Otto [Mon, 15 Nov 2021 12:08:32 +0000 (13:08 +0100)]
Add a test for ede sig expired that does not rely on external servers
Otto Moerbeek [Mon, 15 Nov 2021 10:45:48 +0000 (11:45 +0100)]
Merge pull request #10975 from omoerbeek/rec-fewer-circle-bulktests
rec: Run fewer CircleCI bulk tests
Otto Moerbeek [Mon, 15 Nov 2021 10:40:41 +0000 (11:40 +0100)]
Merge pull request #10973 from omoerbeek/rec-asan-ubsan-to-strategy
rec: enable tsan for GH actions rec build and tests
Peter van Dijk [Mon, 15 Nov 2021 10:40:22 +0000 (11:40 +0100)]
Merge pull request #10954 from Habbie/update-contributing
some updates to CONTRIBUTING.md
Otto Moerbeek [Mon, 15 Nov 2021 10:27:59 +0000 (11:27 +0100)]
Add test
Otto Moerbeek [Mon, 15 Nov 2021 10:16:18 +0000 (11:16 +0100)]
Merge pull request #10751 from kpfleming/issue-7014
rec: Add support for NOTIFY queries to wipe cache entries
Remi Gacogne [Mon, 15 Nov 2021 09:17:05 +0000 (10:17 +0100)]
dnsdist: Apply suggestions from code review (thanks, Otto!)
Otto [Wed, 3 Nov 2021 14:57:03 +0000 (15:57 +0100)]
Return the proper ede on validation failure; fixes #10936
Kevin P. Fleming [Sat, 13 Nov 2021 12:11:38 +0000 (07:11 -0500)]
Update pdns/recursordist/RECURSOR-MIB.txt
Co-authored-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Fri, 12 Nov 2021 19:01:54 +0000 (20:01 +0100)]
Merge pull request #10972 from franklouwers/feature/update-docs
Clarify recursor docs for forward-zones-recurse
Otto Moerbeek [Fri, 12 Nov 2021 19:01:14 +0000 (20:01 +0100)]
Merge pull request #10977 from omoerbeek/dnsdist-unit-test-connect
dnsdist: Disable the actual connect() in the test_dnsdisttcp_cc_c unit tests.
Otto [Fri, 12 Nov 2021 12:19:47 +0000 (13:19 +0100)]
Disable the actual connect() in the test_dnsdisttcp_cc_c unit tests.
They are not needed and cause (at least on OpenBSD) firewall state table
clashes: they remain in a embryotic state because no actual activity
occurs on them due to the rest of the tests using mockup code.
tcpiohandler.cc is not linked into the tests, so define it locally in
test-dnsdisttcp_cc.cc as well.
Kevin P. Fleming [Fri, 12 Nov 2021 12:20:19 +0000 (07:20 -0500)]
rec: Add support for NOTIFY operations to wipe cache entries
NOTIFY operations can be sent to trigger removal of cache entries which
match the zone specified in the operation. All entries, regardless of
type, in or below the specified zone, are removed. Control over
permission to send such operations is provided by an ACL, and control over
zones which can be wiped is provided by a new configuration setting.
The default configuration ignores all NOTIFY operations.
This patch adds:
* 'allow-notify-from' and 'allow-notify-from-file' settings, operating
almost identically to 'allow-from' and 'allow-from-file' (the only
difference being the default value).
* 'allow-notify-for' and 'allow-notify-for-file' settings, which provide
a list of zones for which NOTIFY operations are allowed.
* modification to 'forward-zones-file' setting, allowing zones specified
there to optionally allow NOTIFY operations.
* 'source-disallowed-notify' metric, counting the number of NOTIFY operations
which have been denied by the ACL.
* 'zone-disallowed-notify' metric, counting the number of NOTIFY operations
which have been denied by the zone list.
* API support for modifying 'allow-notify-from' ACL.
* Regression tests for new ACL settings.
Peter van Dijk [Fri, 12 Nov 2021 08:13:29 +0000 (09:13 +0100)]
Merge pull request #10969 from Habbie/doc-nits-11-2021
rec, auth: some doc updates
Kevin P. Fleming [Fri, 24 Sep 2021 20:59:45 +0000 (16:59 -0400)]
rec: Refactor cache-wiping code into a common function
Eliminates multiple copies of the code and eliminates
inconsistencies between them.
Kevin P. Fleming [Fri, 24 Sep 2021 20:52:03 +0000 (16:52 -0400)]
rec: Allow worker threads to send tasks to handler thread
Extend the ThreadMSG mechanism to allow worker threads to submit
tasks to be executed by the handler thread (one-way only, no
answers can be returned).
Otto [Wed, 10 Nov 2021 12:56:26 +0000 (13:56 +0100)]
print stderr and stdout for api test
Otto Moerbeek [Wed, 10 Nov 2021 13:54:20 +0000 (14:54 +0100)]
Merge pull request #10971 from omoerbeek/rec-curl-dep
rec: We need libcurl dev lib for the zone-to-cache function.
Otto [Wed, 10 Nov 2021 12:34:04 +0000 (13:34 +0100)]
Disable bulk test with TSAN for now and add some debug code to api test
Otto [Wed, 10 Nov 2021 11:13:04 +0000 (12:13 +0100)]
Supress g_stats data races
Otto [Wed, 10 Nov 2021 11:36:21 +0000 (12:36 +0100)]
Run fewer CircleCI bulk tests. These are covered by builbot anyway
Otto [Wed, 10 Nov 2021 10:24:30 +0000 (11:24 +0100)]
Enable tsan build plus tests for rec GH actions
Otto [Wed, 10 Nov 2021 09:07:58 +0000 (10:07 +0100)]
Remove other remains of GnuTLS config that was never useful
Peter van Dijk [Wed, 10 Nov 2021 09:11:23 +0000 (10:11 +0100)]
Merge pull request #10970 from Habbie/auth-4.5.2-secpoll-docs
auth-4.5.2: secpoll and changelog
Otto [Wed, 10 Nov 2021 08:38:28 +0000 (09:38 +0100)]
Move asan plus ubsan settings to strategy, in preparation for also doing tsan