]>
git.ipfire.org Git - thirdparty/pdns.git/log
Otto Moerbeek [Fri, 31 Jul 2020 09:13:05 +0000 (11:13 +0200)]
Tidy declaration of new exitCode field
Otto Moerbeek [Fri, 3 Jul 2020 10:52:48 +0000 (12:52 +0200)]
we gained an extra AAAA record in the cache
Otto Moerbeek [Fri, 3 Jul 2020 08:33:29 +0000 (10:33 +0200)]
Tell other threads to stop when a fatal issue occurs.
Theer are more spots where this should be done.
Pieter Lexis [Thu, 11 Jun 2020 08:50:16 +0000 (10:50 +0200)]
tests: detect IPv6
Pieter Lexis [Wed, 10 Jun 2020 12:34:48 +0000 (14:34 +0200)]
qla-v6 outgoing: increase chance of catching errors
Pieter Lexis [Wed, 10 Jun 2020 12:26:55 +0000 (14:26 +0200)]
rec: Clean up QLA
Otto Moerbeek [Wed, 10 Jun 2020 08:40:19 +0000 (10:40 +0200)]
Let the threads returns an error code if someting is wrong
which is picked up by serviceMain as an exit status.
There are a lot more places where the (fatal) error flow could be
improved/made consistent.
Otto Moerbeek [Wed, 10 Jun 2020 08:23:53 +0000 (10:23 +0200)]
Better error handling: return a bool and let caller decide.
Pieter Lexis [Wed, 10 Jun 2020 08:20:06 +0000 (10:20 +0200)]
rec: Fix IPv6-outgoing-only zero-scope ECS test
The recursor uses the outgoing address family to set the ECS address to
a localhost address when a client indicates that it wants no ECS (by
setting the all-zero scope).
Now that we _actually_ do v6-only outgoing when requested by configuration,
we need the regression test auths to listen on v6.
This change to the regression tests makes the ROOT auth listen on
[::1]:53, adds the hints, and for the ECS test, starts an IPv6 ECS
echo responder on [::1]:53000 and uses that address for the
forward-zone.
Otto Moerbeek [Wed, 10 Jun 2020 07:54:20 +0000 (09:54 +0200)]
Check usefullness of root hints.
e.g. if we are running IPv6 only, and only have IPv4 hints
things will not work. Base he decision on presence of A/AAAA
records mentioned as NS.
Pieter Lexis [Thu, 4 Jun 2020 12:44:29 +0000 (14:44 +0200)]
Fix test that used qla
Pieter Lexis [Tue, 2 Jun 2020 12:55:08 +0000 (14:55 +0200)]
rec: Disable outgoing v4 when QLA has no v4 addresses
Otto Moerbeek [Fri, 3 Jul 2020 08:10:01 +0000 (10:10 +0200)]
Merge pull request #9289 from omoerbeek/rec-tcp-error-warnings
rec: common TCP write problems should only be logged if wanted.
Otto Moerbeek [Fri, 3 Jul 2020 08:09:49 +0000 (10:09 +0200)]
Merge pull request #9288 from rgacogne/rec-negcache-dump-authority
rec: Dump the authority records of a negative cache entry as well
Remi Gacogne [Thu, 2 Jul 2020 11:34:11 +0000 (13:34 +0200)]
Merge pull request #9278 from rgacogne/ddist-doh-self-cleanup-vect
dnsdist: Prevent race between the DoH handling threads
Remi Gacogne [Wed, 1 Jul 2020 12:47:17 +0000 (14:47 +0200)]
rec: Dump the actual name of SOA and NSEC{,3} negative cache entries
Otto Moerbeek [Wed, 1 Jul 2020 12:03:17 +0000 (14:03 +0200)]
Fix zone
Otto Moerbeek [Wed, 1 Jul 2020 11:25:43 +0000 (13:25 +0200)]
Merge pull request #9287 from omoerbeek/rec-prep-
20200701
rec: prep for
20200701 releases
Otto Moerbeek [Wed, 1 Jul 2020 10:57:24 +0000 (12:57 +0200)]
Common TCP write problems should only be logged if wanted.
Remi Gacogne [Wed, 1 Jul 2020 09:37:36 +0000 (11:37 +0200)]
rec: Dump the authority records of a negative cache entry as well
Otto Moerbeek [Tue, 30 Jun 2020 15:09:06 +0000 (17:09 +0200)]
Fill in PRs now the numbers are known, plus a few corrections of old entries
Otto Moerbeek [Mon, 29 Jun 2020 10:11:57 +0000 (12:11 +0200)]
Prep for upcoming 4.1.17, 4.2.3, and 4.3.2 release
Remi Gacogne [Wed, 1 Jul 2020 07:45:53 +0000 (09:45 +0200)]
Merge pull request #9237 from rgacogne/rec-nxd-ent-denial
rec: Don't validate a NXD with a NSEC proving that the name is an ENT
Otto Moerbeek [Tue, 30 Jun 2020 13:34:59 +0000 (15:34 +0200)]
Merge pull request #9282 from omoerbeek/rec-acl
rec: fix acl handling
Otto Moerbeek [Tue, 30 Jun 2020 11:50:52 +0000 (13:50 +0200)]
rec: Add a regression test for the 'webserver-allow-from' ACL
Remi Gacogne [Mon, 29 Jun 2020 12:01:50 +0000 (14:01 +0200)]
dnsdist: Don't access the DoH object except from the main thread
Otto Moerbeek [Mon, 29 Jun 2020 13:45:48 +0000 (15:45 +0200)]
Merge pull request #9277 from omoerbeek/rec-rec_control_timeout
rec: zero means no timeout.
Otto Moerbeek [Mon, 29 Jun 2020 13:32:54 +0000 (15:32 +0200)]
Zero means no timeout.
Peter van Dijk [Mon, 29 Jun 2020 08:18:22 +0000 (10:18 +0200)]
Merge pull request #9276 from Habbie/rec-authzones-doc-nit
recursor: clarify that auth-zones are not served with an AA bit
Remi Gacogne [Fri, 26 Jun 2020 09:50:53 +0000 (11:50 +0200)]
dnsdist: Prevent a cleanup race between the DOHUnit and the request pool
- clean up the pointer in pool memory when releasing a DOHUnit so that we
don't try to access it later when the memory pool is destroyed ;
- clean up the 'self' pointer when the memory pool is destroyed so we
don't try to access it when the DOHUnit is released.
Peter van Dijk [Fri, 26 Jun 2020 12:50:43 +0000 (14:50 +0200)]
Merge pull request #9169 from mind04/pdns-metadata-any
auth: fetch all metadata at once
Peter van Dijk [Fri, 26 Jun 2020 12:37:36 +0000 (14:37 +0200)]
recursor: clarify that auth-zones are not served with an AA bit
Otto Moerbeek [Tue, 23 Jun 2020 13:08:17 +0000 (15:08 +0200)]
Merge pull request #9272 from omoerbeek/rec-ds-cname-cache
rec: alternative way to do "skip cname check" for DS and DNSKEY records.
Otto Moerbeek [Tue, 23 Jun 2020 09:44:56 +0000 (11:44 +0200)]
Test the DS/DNSKEY condition at the proper spot.
Otto Moerbeek [Tue, 23 Jun 2020 09:11:03 +0000 (11:11 +0200)]
Draft to study alternative way to do "skip cname check" for DS and
DNSKEY records.
The current code effectively disables lookup of cached CNAME results
for zone cut computations, which results in more queries than needed.
Should fix #9266 or at least give more insight.
Needs critical eyes badly!
Peter van Dijk [Mon, 22 Jun 2020 17:01:01 +0000 (19:01 +0200)]
Merge pull request #9269 from rgacogne/ddist-debug-tcp-limits-failures
dnsdist: Debug failures in the TCP Limits regression test on Circle
Remi Gacogne [Mon, 22 Jun 2020 15:34:26 +0000 (17:34 +0200)]
Merge pull request #9268 from rgacogne/rec-exceptions
rec: Better exception handling in houseKeeping / handlePolicyHit
Remi Gacogne [Mon, 22 Jun 2020 15:16:27 +0000 (17:16 +0200)]
dnsdist: Debug failures in the TCP Limits regression test on Circle
This test keeps failing on Circle CI but never locally, so let's try
to add some debug.
Remi Gacogne [Mon, 22 Jun 2020 13:09:13 +0000 (15:09 +0200)]
rec: Better exception handling in handlePolicyHit()
An ImmediateServFailException being raised during the call to
SyncRes::beginResolve() from handleRPZCustom() could lead to
the resolution process to stop without any response being sent:
Any other exception in a resolver context (www.example.net/A from 127.0.0.1:4242)
This commit turns into a ServFail answer instead.
Remi Gacogne [Mon, 22 Jun 2020 13:07:08 +0000 (15:07 +0200)]
rec: Better exception handling in houseKeeping
An uncaugth exception being raised in houseKeeping could prevent it
from being run again because 's_running' would stay true. That could
for example happen when an ImmediateServFailException was raised during
a call to primeRootNSZones().
Peter van Dijk [Mon, 22 Jun 2020 11:33:40 +0000 (13:33 +0200)]
Merge pull request #9256 from jsoref/spell-check-pr
spell-check: check pull requests
Peter van Dijk [Mon, 22 Jun 2020 11:22:42 +0000 (13:22 +0200)]
update spelling after merge of #9240
Peter van Dijk [Mon, 22 Jun 2020 11:07:20 +0000 (13:07 +0200)]
Merge pull request #9240 from LordGaav/add-cockroachdb-docs
Add instructions for running PowerDNS on CockroachDB using generic pgsql
Otto Moerbeek [Mon, 22 Jun 2020 09:13:27 +0000 (11:13 +0200)]
Merge pull request #9267 from omoerbeek/rec-prime-depth
rec: Control stack depth when priming.
Remi Gacogne [Mon, 22 Jun 2020 08:43:36 +0000 (10:43 +0200)]
Merge pull request #9259 from Habbie/support-link
github issue chooser: add link to support page
Otto Moerbeek [Mon, 22 Jun 2020 08:11:39 +0000 (10:11 +0200)]
Control stack depth when priming.
If you clear the cache for . in a tight loop, the priming code gets
called recursively in an unbounded fashion. This keeps track of the
stack depth and ServFails if needed.
Otto Moerbeek [Fri, 19 Jun 2020 09:55:49 +0000 (11:55 +0200)]
Merge pull request #9252 from pieterlexis/version-stat
Add version 'statistic' to prometheus
Remi Gacogne [Fri, 19 Jun 2020 09:22:53 +0000 (11:22 +0200)]
Merge pull request #9260 from rgacogne/remove-der-eater
Remove the thankfully not used anymore DEReater class
Remi Gacogne [Thu, 18 Jun 2020 15:41:57 +0000 (17:41 +0200)]
Merge pull request #9236 from omoerbeek/cachecleaner-cleanup
Cleanup cache cleaner pruneCollection function
Remi Gacogne [Thu, 18 Jun 2020 14:20:06 +0000 (16:20 +0200)]
Merge pull request #9255 from rgacogne/ddist-1.5.0-rc3
dnsdist: Update the ChangeLog and the secpoll zone for 1.5.0-rc3
Nick Douma [Thu, 18 Jun 2020 11:52:13 +0000 (13:52 +0200)]
Clarify what index to skip
Nick Douma [Thu, 18 Jun 2020 11:51:50 +0000 (13:51 +0200)]
Remove duplicate PRIMARY KEY statement
Peter van Dijk [Thu, 18 Jun 2020 09:22:07 +0000 (11:22 +0200)]
Merge pull request #9253 from Habbie/pdnsutil-run-destructors
pdnsutil: make sure we let all destructors run. Fixes #4973
Remi Gacogne [Thu, 18 Jun 2020 09:17:15 +0000 (11:17 +0200)]
Merge pull request #9251 from rgacogne/rec-copy-negcache-entry
rec: Copy the negative cache entry before validating it
Peter van Dijk [Thu, 18 Jun 2020 09:10:33 +0000 (11:10 +0200)]
github issue chooser: add link to support page
Remi Gacogne [Thu, 18 Jun 2020 08:50:35 +0000 (10:50 +0200)]
Remove the thankfully not used anymore DEReater class
Remi Gacogne [Thu, 18 Jun 2020 08:24:12 +0000 (10:24 +0200)]
Merge pull request #9254 from rgacogne/ddist-clarify-webserver-acl
dnsdist: Better examples for the webserver's ACL
Josh Soref [Wed, 17 Jun 2020 18:58:35 +0000 (14:58 -0400)]
spell-check: check pull requests
Peter van Dijk [Wed, 17 Jun 2020 18:43:14 +0000 (20:43 +0200)]
Merge pull request #9250 from tokred/docs-updatepolicy-wiki
auth: Link to pdns Wiki for updatescript examples
Remi Gacogne [Wed, 17 Jun 2020 15:42:38 +0000 (17:42 +0200)]
dnsdist: Add #9244 to the ChangeLog
Remi Gacogne [Wed, 17 Jun 2020 14:26:24 +0000 (16:26 +0200)]
Merge pull request #9244 from rgacogne/ddist-kvs-masked-lookups
dnsdist: Add optional masks to KeyValueLookupKeySourceIP
Remi Gacogne [Wed, 17 Jun 2020 14:03:38 +0000 (16:03 +0200)]
dnsdist: Update the ChangeLog and the secpoll zone for 1.5.0-rc3
Remi Gacogne [Wed, 17 Jun 2020 13:54:04 +0000 (15:54 +0200)]
dnsdist: Better examples for the webserver's ACL
Peter van Dijk [Wed, 17 Jun 2020 13:11:05 +0000 (15:11 +0200)]
pdnsutil: make sure we let all destructors run. Fixes #4973
Remi Gacogne [Wed, 17 Jun 2020 13:05:38 +0000 (15:05 +0200)]
rec: Copy entries retrieved from the negative cache right away
The optimization of not copying the entry until we actually decide
to use it seemed nice, but the resulting interface is too brittle.
It requires not keeping the pointer around if there is any chance
that we could yield by going to the network, which is hard to keep
track of in the recursor.
Remi Gacogne [Wed, 17 Jun 2020 12:49:55 +0000 (14:49 +0200)]
rec: Copy the negative cache entry before validating it
Otherwise, in the unlikely case that:
- we need to go to the network in order to validate, for example to
get or a DNSKEY ;
- the negative cache cleaning is run at that exact moment ;
- and the entry we have a pointer to gets wiped during that cleanup
we might trigger a heap-based use-after-free (read), possibly leading
to a crash if the memory has been reused already.
tokred [Wed, 17 Jun 2020 12:47:12 +0000 (14:47 +0200)]
auth: Link to pdns Wiki for updatescript examples
Pieter Lexis [Wed, 17 Jun 2020 12:28:03 +0000 (14:28 +0200)]
auth: Add version as prometheus metric
Pieter Lexis [Wed, 17 Jun 2020 12:26:25 +0000 (14:26 +0200)]
rec: Add version info to prometheus statistics
Pieter Lexis [Wed, 17 Jun 2020 12:14:37 +0000 (14:14 +0200)]
dnsdist: Add prometheus metric for version number
Remi Gacogne [Wed, 17 Jun 2020 09:09:20 +0000 (11:09 +0200)]
Merge pull request #9229 from rgacogne/dnsdist-webserver-allow-from
dnsdist: Implement an ACL in the internal web server
Remi Gacogne [Wed, 17 Jun 2020 09:07:47 +0000 (11:07 +0200)]
Merge pull request #9238 from rgacogne/ddist-config-sample
dnsdist: Clean up dnsdistconf.lua as a default configuration file
Remi Gacogne [Wed, 17 Jun 2020 09:02:36 +0000 (11:02 +0200)]
dnsdist: Add optional masks to KeyValueLookupKeySourceIP
Remi Gacogne [Wed, 17 Jun 2020 07:51:31 +0000 (09:51 +0200)]
Use example.org instead of powerdns.org in pdns/dnsdistconf.lua
Co-authored-by: Chris Hofstaedtler <chris.hofstaedtler@deduktiva.com>
Remi Gacogne [Wed, 17 Jun 2020 07:51:22 +0000 (09:51 +0200)]
Use example.org instead of powerdns.org in pdns/dnsdistconf.lua
Co-authored-by: Chris Hofstaedtler <chris.hofstaedtler@deduktiva.com>
Nick Douma [Tue, 16 Jun 2020 16:20:19 +0000 (18:20 +0200)]
Add instructions for running PowerDNS on CockroachDB using generic pgsql
Remi Gacogne [Tue, 16 Jun 2020 14:31:39 +0000 (16:31 +0200)]
dnsdist: Clean up dnsdistconf.lua as a default configuration file
Remi Gacogne [Tue, 16 Jun 2020 12:42:02 +0000 (14:42 +0200)]
rec: Don't validate a NXD with a NSEC proving that the name is an ENT
A NSEC from a.powerdns.com. to a.b.powerdns.com. proves that
b.powerdns.com. exists and is an empty non terminal, so it cannot be
used to prove that b.powerdns.com. does not exist.
Otto Moerbeek [Tue, 16 Jun 2020 11:56:57 +0000 (13:56 +0200)]
Cleanup cache cleaner pruneCollection function
- use size_t instead of unsigned int for sizes
- const correctness
- layout
- simplify seond loop and use return value of erase(), it points to the next value
Peter van Dijk [Tue, 16 Jun 2020 08:10:28 +0000 (10:10 +0200)]
Merge pull request #9217 from Habbie/doc-nits-
1591715730
auth doc nits
Peter van Dijk [Mon, 15 Jun 2020 14:27:54 +0000 (16:27 +0200)]
Merge pull request #9228 from mind04/pdns-sqlite-schema
auth: gsqlite3backend: add missing indexes
Peter van Dijk [Mon, 15 Jun 2020 13:55:40 +0000 (15:55 +0200)]
Merge pull request #9215 from Habbie/pkcs11-fixes
auth: PKCS11 improvements
Remi Gacogne [Mon, 15 Jun 2020 13:25:40 +0000 (15:25 +0200)]
dnsdist: Parse the new web ACL before clearing the existing one
Otherwise we end up with an empty ACL (everything will be refused)
if the new one is not valid.
Otto Moerbeek [Mon, 15 Jun 2020 12:20:52 +0000 (14:20 +0200)]
Merge pull request #9226 from omoerbeek/rec-fix-shared-cache-pruning
rec: Fix three shared cache issues
Otto Moerbeek [Fri, 12 Jun 2020 10:24:26 +0000 (12:24 +0200)]
Fix three shared cache issues:
- Only prime share cache once on startup
- Cache pruning could go into an infinite loop if not enough expired
entries could be pruned.
- Handler thread isn't run very often, but now the record cache
pruning is done by it, so increase frequency of the housekeeping
call for the handler thread.
Kees Monshouwer [Mon, 15 Jun 2020 09:54:05 +0000 (11:54 +0200)]
auth: gsqlite3backend: add missing indexes
Sqlite3 backend was performing terrible in environments with many updates.
On a slaved root zone the performance increase was huge, 71ms -> 1ms.
Since the lack of proper indexes is causing a lot of trouble in larger environments, I target this update at 4.3.1
Peter van Dijk [Mon, 15 Jun 2020 09:15:22 +0000 (11:15 +0200)]
Merge pull request #9223 from mind04/pdns-supersomething
auth: use real remote for supermaster createSlaveDomain()
Peter van Dijk [Mon, 15 Jun 2020 09:02:56 +0000 (11:02 +0200)]
clarify key missing message a bit
Kees Monshouwer [Fri, 12 Jun 2020 09:52:36 +0000 (11:52 +0200)]
auth: use real remote for supermaster createSlaveDomain()
Peter van Dijk [Thu, 11 Jun 2020 19:35:28 +0000 (21:35 +0200)]
restore flag symmetry
Peter van Dijk [Thu, 11 Jun 2020 18:33:09 +0000 (20:33 +0200)]
update pkcs11 docs for softhsm2 on Debian Buster
Peter van Dijk [Thu, 11 Jun 2020 17:01:19 +0000 (19:01 +0200)]
pkcs11 create key: error for unknown algos
Peter van Dijk [Thu, 11 Jun 2020 16:39:28 +0000 (18:39 +0200)]
rectify zones after securing them
Peter van Dijk [Thu, 11 Jun 2020 16:39:07 +0000 (18:39 +0200)]
centralise constants
Remi Gacogne [Wed, 10 Jun 2020 15:18:58 +0000 (17:18 +0200)]
Merge pull request #9211 from rgacogne/ddist-doh-non-blocking
dnsdist: Use non-blocking pipes to pass DoH queries/responses around
Remi Gacogne [Wed, 10 Jun 2020 08:48:10 +0000 (10:48 +0200)]
dnsdist: Log at verbose level when we couldn't write to the pipe
Remi Gacogne [Wed, 10 Jun 2020 06:58:35 +0000 (08:58 +0200)]
dnsdist: Implement an ACL in the internal web server
Otto Moerbeek [Wed, 10 Jun 2020 05:45:04 +0000 (07:45 +0200)]
Merge pull request #9214 from omoerbeek/rec-docs-warnins
rec: fix doc generation warnings in recursor.
Otto Moerbeek [Wed, 10 Jun 2020 05:44:52 +0000 (07:44 +0200)]
Merge pull request #9203 from omoerbeek/rec-gettag-answer-rpz
Rec: rpz policy should override gettag_ffi answer by default
Otto Moerbeek [Wed, 10 Jun 2020 05:41:39 +0000 (07:41 +0200)]
Merge pull request #9216 from rgacogne/rec-scan-cname-loop-ref
rec: Don't copy the records when scanning for CNAME loops