]> git.ipfire.org Git - thirdparty/pdns.git/log
thirdparty/pdns.git
3 years agodnsdist: Implement 'tcpOnly' backends
Remi Gacogne [Mon, 7 Jun 2021 14:12:18 +0000 (16:12 +0200)] 
dnsdist: Implement 'tcpOnly' backends

3 years agodnsdist: Remove left-over debug messages
Remi Gacogne [Fri, 4 Jun 2021 08:18:22 +0000 (10:18 +0200)] 
dnsdist: Remove left-over debug messages

3 years agodnsdist: Appease the formatting gods
Remi Gacogne [Thu, 3 Jun 2021 16:20:33 +0000 (18:20 +0200)] 
dnsdist: Appease the formatting gods

3 years agodnsdist: Rever the Downstream connection cache to be per thread
Remi Gacogne [Thu, 6 May 2021 14:44:26 +0000 (16:44 +0200)] 
dnsdist: Rever the Downstream connection cache to be per thread

For now the Downstream connections are too closely tied to the
Multiplexer instance which is per-thread. We can change that later
if needed.

3 years agodnsdist: Share the downstream TCP connections cache between threads
Remi Gacogne [Thu, 6 May 2021 12:41:57 +0000 (14:41 +0200)] 
dnsdist: Share the downstream TCP connections cache between threads

3 years agodnsdist: Fix compilation on older GnuTLS versions
Remi Gacogne [Thu, 6 May 2021 09:37:26 +0000 (11:37 +0200)] 
dnsdist: Fix compilation on older GnuTLS versions

3 years agodnsdist: Handle more than one cached TLS session per backend
Remi Gacogne [Wed, 5 May 2021 15:13:09 +0000 (17:13 +0200)] 
dnsdist: Handle more than one cached TLS session per backend

3 years agodnsdist: Don't let GnuTLS block if a ticket is not available yet..
Remi Gacogne [Wed, 5 May 2021 15:08:34 +0000 (17:08 +0200)] 
dnsdist: Don't let GnuTLS block if a ticket is not available yet..

3 years agodnsdist: Add downstream TLS session resumption metric
Remi Gacogne [Wed, 5 May 2021 08:40:31 +0000 (10:40 +0200)] 
dnsdist: Add downstream TLS session resumption metric

3 years agodnsdist: Add a WIP session cache
Remi Gacogne [Tue, 4 May 2021 16:44:41 +0000 (18:44 +0200)] 
dnsdist: Add a WIP session cache

3 years agoTCPIOHandler: Add preliminary support for session resumption
Remi Gacogne [Thu, 29 Apr 2021 15:57:59 +0000 (17:57 +0200)] 
TCPIOHandler: Add preliminary support for session resumption

3 years agodnsdist: Fix the client TLS wrapper for GnuTLS
Remi Gacogne [Thu, 29 Apr 2021 13:58:06 +0000 (15:58 +0200)] 
dnsdist: Fix the client TLS wrapper for GnuTLS

We need to call gnutls_handshake() repeatedly until it succeeds, while
OpenSSL allows us to read and write transparently.

3 years agodnsdist: Do not try to parse non-DNS HTTP answers generated by Lua
Remi Gacogne [Thu, 29 Apr 2021 11:28:33 +0000 (13:28 +0200)] 
dnsdist: Do not try to parse non-DNS HTTP answers generated by Lua

3 years agodnsdist: Use the correct cache key for DoH UDP responses
Remi Gacogne [Thu, 29 Apr 2021 11:27:55 +0000 (13:27 +0200)] 
dnsdist: Use the correct cache key for DoH UDP responses

3 years agodnsdist: Exclude the TCP latency calculations from TSAN analysis
Remi Gacogne [Thu, 29 Apr 2021 11:26:24 +0000 (13:26 +0200)] 
dnsdist: Exclude the TCP latency calculations from TSAN analysis

They are indeed racy in some cases, but we do not care about perfect
accuracy there.

3 years agodnsdist: Properly handle truncation for cross-protocol answers
Remi Gacogne [Wed, 28 Apr 2021 16:26:29 +0000 (18:26 +0200)] 
dnsdist: Properly handle truncation for cross-protocol answers

3 years agodnsdist: Handle TCP-only backends for UDP queries
Remi Gacogne [Tue, 27 Apr 2021 15:12:04 +0000 (17:12 +0200)] 
dnsdist: Handle TCP-only backends for UDP queries

3 years agodnsdist: Handle TCP-only backends for DoH queries
Remi Gacogne [Tue, 27 Apr 2021 14:11:07 +0000 (16:11 +0200)] 
dnsdist: Handle TCP-only backends for DoH queries

3 years agodnsdist: Handle health checks over TCP and DNS over TLS
Remi Gacogne [Tue, 27 Apr 2021 13:06:25 +0000 (15:06 +0200)] 
dnsdist: Handle health checks over TCP and DNS over TLS

3 years agodnsdist: Add support for DNS over TLS backends
Remi Gacogne [Thu, 22 Apr 2021 13:52:32 +0000 (15:52 +0200)] 
dnsdist: Add support for DNS over TLS backends

Still needs:
- documentation
- tests
- session reuse (SSL_set_session)
- healthchecks
- UDP/DoH to DoT

3 years agodnsdist: Properly handle errors for DoH cross-protocol answers
Remi Gacogne [Thu, 22 Apr 2021 12:49:22 +0000 (14:49 +0200)] 
dnsdist: Properly handle errors for DoH cross-protocol answers

3 years agodnsdist: Also lookup the cache for UDP answers for DoH
Remi Gacogne [Thu, 22 Apr 2021 10:17:04 +0000 (12:17 +0200)] 
dnsdist: Also lookup the cache for UDP answers for DoH

3 years agodnsdist: Carry the exact protocol (Do53, DNSCrypt, DoT, DoH) in DQ
Remi Gacogne [Wed, 21 Apr 2021 15:43:34 +0000 (17:43 +0200)] 
dnsdist: Carry the exact protocol (Do53, DNSCrypt, DoT, DoH) in DQ

3 years agodnsdist: Apply response rules to cross-protocol DoH responses
Remi Gacogne [Wed, 14 Apr 2021 16:03:57 +0000 (18:03 +0200)] 
dnsdist: Apply response rules to cross-protocol DoH responses

3 years agodnsdist: Add a regression test for DoH TC=1 fallback to TCP
Remi Gacogne [Tue, 13 Apr 2021 14:44:48 +0000 (16:44 +0200)] 
dnsdist: Add a regression test for DoH TC=1 fallback to TCP

3 years agodnsdist: Handle Proxy Protocol payloads with cross-protocol queries
Remi Gacogne [Tue, 13 Apr 2021 12:47:26 +0000 (14:47 +0200)] 
dnsdist: Handle Proxy Protocol payloads with cross-protocol queries

3 years agodnsdist: First working version of cross-protocol DoH -> TCP
Remi Gacogne [Wed, 31 Mar 2021 15:22:21 +0000 (17:22 +0200)] 
dnsdist: First working version of cross-protocol DoH -> TCP

3 years agoMerge pull request #10671 from rgacogne/ddist-init-dq-cacheflags
Remi Gacogne [Thu, 26 Aug 2021 09:02:26 +0000 (11:02 +0200)] 
Merge pull request #10671 from rgacogne/ddist-init-dq-cacheflags

dnsdist: Initialize the cacheFlags member of DNSQuestion to 0

3 years agodnsdist: Initialize the cacheFlags member of DNSQuestion to 0 10671/head
Remi Gacogne [Thu, 26 Aug 2021 07:45:18 +0000 (09:45 +0200)] 
dnsdist: Initialize the cacheFlags member of DNSQuestion to 0

3 years agoMerge pull request #10664 from rgacogne/ddist-fix-cache-flags
Remi Gacogne [Wed, 25 Aug 2021 12:37:37 +0000 (14:37 +0200)] 
Merge pull request #10664 from rgacogne/ddist-fix-cache-flags

dnsdist: Cache based on the DNS flags of the query after applying the rules

3 years agoMerge pull request #10661 from Habbie/gh-actions
Peter van Dijk [Wed, 25 Aug 2021 11:40:48 +0000 (13:40 +0200)] 
Merge pull request #10661 from Habbie/gh-actions

github actions: build auth+rec+dnsdist; test auth-api, dnsdist-regression, rec-api

3 years agoMerge pull request #10666 from rgacogne/rec-cache-contention-counters
Otto Moerbeek [Wed, 25 Aug 2021 10:57:10 +0000 (12:57 +0200)] 
Merge pull request #10666 from rgacogne/rec-cache-contention-counters

rec: Fix the acquired/contended cache counters not being updated

3 years agoMerge pull request #10668 from omoerbeek/rec-bulktest-script
Otto Moerbeek [Wed, 25 Aug 2021 10:49:25 +0000 (12:49 +0200)] 
Merge pull request #10668 from omoerbeek/rec-bulktest-script

rec: Improve the rec bulk test script

3 years agoImprove the rec bulk test script 10668/head
Otto Moerbeek [Wed, 25 Aug 2021 09:32:02 +0000 (09:32 +0000)] 
Improve the rec bulk test script

- Exit if rec did not start up
- Status requesting commands (rec_control and kill -USR1) failures are non-fatal
  except for the last 'ping' command.
- Increase timeout of rec_control command (to help investigating issues on buildbot)

The script is run with -e, so failure will lead to exit without killing
the running recursor atm.

3 years agorec: Fix formatting 10666/head
Remi Gacogne [Wed, 25 Aug 2021 09:01:48 +0000 (11:01 +0200)] 
rec: Fix formatting

3 years agorec: Fix the acquired/contended cache counters not being updated
Remi Gacogne [Wed, 25 Aug 2021 07:57:10 +0000 (09:57 +0200)] 
rec: Fix the acquired/contended cache counters not being updated

3 years agorun auth remotebackend regression tests in GH Actions; remove from CircleCI 10661/head
Peter van Dijk [Tue, 24 Aug 2021 09:35:27 +0000 (11:35 +0200)] 
run auth remotebackend regression tests in GH Actions; remove from CircleCI

3 years agoMerge pull request #10633 from rgacogne/rec-policy-event-filter-follow-cname
Remi Gacogne [Tue, 24 Aug 2021 10:23:42 +0000 (12:23 +0200)] 
Merge pull request #10633 from rgacogne/rec-policy-event-filter-follow-cname

rec: Pass the Lua context to follow up queries (follow CNAME, dns64)

3 years agodnsdist: Cache based on the DNS flags of the query after applying the rules 10664/head
Remi Gacogne [Tue, 24 Aug 2021 09:23:54 +0000 (11:23 +0200)] 
dnsdist: Cache based on the DNS flags of the query after applying the rules

The tentative fix in dbadb4d272a3317407e6bc934f55c2d41a87c0ac actually
introduced an issue, because the backend might not perfectly echo the
RD and CD flags as they were in the query.
We can't use the "original" (before applying rules) flags either, so
we need to store the flags as they were sent to the backend to be
able to correctly store them in the cache.

3 years agonew remotebackend ruby deps are too new for CircleCI; disable auth make check there
Peter van Dijk [Tue, 24 Aug 2021 08:21:51 +0000 (10:21 +0200)] 
new remotebackend ruby deps are too new for CircleCI; disable auth make check there

3 years agocircleci: remove items that we now test in github actions
Peter van Dijk [Mon, 23 Aug 2021 19:43:54 +0000 (21:43 +0200)] 
circleci: remove items that we now test in github actions

3 years agogithub actions: build auth+rec+dnsdist; test auth-api, dnsdist-regression, rec-api
Peter van Dijk [Thu, 25 Mar 2021 12:48:49 +0000 (13:48 +0100)] 
github actions: build auth+rec+dnsdist; test auth-api, dnsdist-regression, rec-api

3 years agoMerge pull request #10659 from omoerbeek/rec-fix-dot-to-port-853
Otto Moerbeek [Mon, 23 Aug 2021 09:21:57 +0000 (11:21 +0200)] 
Merge pull request #10659 from omoerbeek/rec-fix-dot-to-port-853

rec: Fix wrong default value call for dot-to-port-853 setting

3 years agoFix wrong default value call for dot-to-port-853 setting 10659/head
Otto [Mon, 23 Aug 2021 08:14:42 +0000 (10:14 +0200)] 
Fix wrong default value call for dot-to-port-853 setting

3 years agoMerge pull request #10605 from omoerbeek/rec-policy-hit-stats
Otto Moerbeek [Fri, 20 Aug 2021 13:01:07 +0000 (15:01 +0200)] 
Merge pull request #10605 from omoerbeek/rec-policy-hit-stats

rec: Keep a count of per rpz (or filter) hits

3 years agoOne way of solving the race. Still needs operator[] though, since policyName 10605/head
Otto [Fri, 20 Aug 2021 11:49:37 +0000 (13:49 +0200)] 
One way of solving the race. Still needs operator[] though, since policyName
can vary.

3 years agoPrometheus help texts and general cleanup. Example output:
Otto [Thu, 19 Aug 2021 07:08:53 +0000 (09:08 +0200)] 
Prometheus help texts and general cleanup. Example output:
pdns_recursor_policy_hits 10
pdns_recursor_policy_hits{type="filter"} 3
pdns_recursor_policy_hits{type="rpz",policyname="rpz.local"} 5
pdns_recursor_policy_hits{type="rpz",policyname="rpzFile"} 2

3 years agoMerge pull request #10622 from rgacogne/rec-loop-ds-child-zone
Remi Gacogne [Wed, 18 Aug 2021 13:17:14 +0000 (15:17 +0200)] 
Merge pull request #10622 from rgacogne/rec-loop-ds-child-zone

rec: Detect a loop when the denial of the DS comes from the child zone

3 years agoKeep a count of per rpz (or filter) hits, by default only exported via
Otto [Tue, 20 Jul 2021 12:07:20 +0000 (14:07 +0200)] 
Keep a count of per rpz (or filter) hits, by default only exported via
Prometheus. After #10554 is merged the Promethus help info should be added
to this branch.

3 years agoMerge pull request #10554 from omoerbeek/rec-per-cpu-thread-metrics
Otto Moerbeek [Wed, 18 Aug 2021 12:55:07 +0000 (14:55 +0200)] 
Merge pull request #10554 from omoerbeek/rec-per-cpu-thread-metrics

rec: Modify per-thread cpu usage stats to be Prometheus-friendly

3 years agoMerge pull request #10643 from omoerbeek/rec-ns-from-cache-fw-vs-dontquery
Otto Moerbeek [Wed, 18 Aug 2021 09:57:05 +0000 (11:57 +0200)] 
Merge pull request #10643 from omoerbeek/rec-ns-from-cache-fw-vs-dontquery

rec: NS from the cache could be a forwarder

3 years agoMerge pull request #10631 from rgacogne/mplexer-read-write
Remi Gacogne [Wed, 18 Aug 2021 09:39:40 +0000 (11:39 +0200)] 
Merge pull request #10631 from rgacogne/mplexer-read-write

Handle waiting for a descriptor to become readable OR writable

3 years agoMerge pull request #10649 from rgacogne/lock-guarded-ddist
Remi Gacogne [Wed, 18 Aug 2021 09:31:36 +0000 (11:31 +0200)] 
Merge pull request #10649 from rgacogne/lock-guarded-ddist

Convert dnsdist and the recursor to LockGuarded

3 years agoMake it explicit that IP addresses are taken into account when deciding to not block 10643/head
Otto [Wed, 18 Aug 2021 08:54:53 +0000 (10:54 +0200)] 
Make it explicit that IP addresses are taken into account when deciding to not block
an IP being forwarded to.

3 years agoMerge pull request #10650 from rgacogne/ddist-rd-cache-miss
Remi Gacogne [Wed, 18 Aug 2021 08:44:44 +0000 (10:44 +0200)] 
Merge pull request #10650 from rgacogne/ddist-rd-cache-miss

dnsdist: Fix the wrong RD and CD flags being cached, causing misses

3 years agoModify per-thread cpu usage stats to be Prometheus-friendly. 10554/head
Otto [Wed, 30 Jun 2021 08:27:04 +0000 (10:27 +0200)] 
Modify per-thread cpu usage stats to be Prometheus-friendly.

Plus fix a few small issues wrt HELP texts.

Example output:

pdns_recursor_cpu_msec{thread=0} 10
pdns_recursor_cpu_msec{thread=1} 0
pdns_recursor_cpu_msec{thread=2} 0

3 years agoAlso check if the remoteIP is one of the IPs we would have forwarded to,
Otto [Wed, 18 Aug 2021 07:24:45 +0000 (09:24 +0200)] 
Also check if the remoteIP is one of the IPs we would have forwarded to,
even if it's coming from the cache.

3 years agorec: Appease the formatting gods (negcache.hh) 10649/head
Remi Gacogne [Wed, 30 Jun 2021 13:26:57 +0000 (15:26 +0200)] 
rec: Appease the formatting gods (negcache.hh)

3 years agoChange the static lock() method of MemRecursorCache to be an instance
Otto [Fri, 25 Jun 2021 09:16:04 +0000 (11:16 +0200)] 
Change the static lock() method of MemRecursorCache to be an instance
method of MapCombo. Likewise for negcache.

3 years agoDocument how our wrappers around mutexes work
Remi Gacogne [Wed, 16 Jun 2021 15:41:26 +0000 (17:41 +0200)] 
Document how our wrappers around mutexes work

3 years agorec: Do not require taking the lock to know the size of a cache
Remi Gacogne [Wed, 16 Jun 2021 15:31:38 +0000 (17:31 +0200)] 
rec: Do not require taking the lock to know the size of a cache

3 years agodnsdist: Remove unused mutex include
Remi Gacogne [Tue, 25 May 2021 07:52:32 +0000 (09:52 +0200)] 
dnsdist: Remove unused mutex include

3 years agorec: Store the carbon configuration in a StateHolder
Remi Gacogne [Thu, 20 May 2021 07:12:25 +0000 (09:12 +0200)] 
rec: Store the carbon configuration in a StateHolder

3 years agorec: Convert the dynmetrics to LockGuarded
Remi Gacogne [Thu, 20 May 2021 06:38:59 +0000 (08:38 +0200)] 
rec: Convert the dynmetrics to LockGuarded

3 years agorec: Move the record caches to LockGuarded (WIP: size() should not need a lock)
Remi Gacogne [Thu, 20 May 2021 06:23:31 +0000 (08:23 +0200)] 
rec: Move the record caches to LockGuarded (WIP: size() should not need a lock)

3 years agoRename the lock() method to write_lock() for shared mutexes
Remi Gacogne [Wed, 19 May 2021 10:57:09 +0000 (12:57 +0200)] 
Rename the lock() method to write_lock() for shared mutexes

3 years agorec: Move the NOD code to LockGuarded
Remi Gacogne [Mon, 10 May 2021 16:19:14 +0000 (18:19 +0200)] 
rec: Move the NOD code to LockGuarded

3 years agorec: Convert RPZ loader stats to LockGuarded
Remi Gacogne [Mon, 10 May 2021 15:57:53 +0000 (17:57 +0200)] 
rec: Convert RPZ loader stats to LockGuarded

3 years agorec: Convert the aggressive NSEC cache to LockGuarded
Remi Gacogne [Fri, 7 May 2021 16:29:04 +0000 (18:29 +0200)] 
rec: Convert the aggressive NSEC cache to LockGuarded

3 years agodnsdist: Convert remaining Action mutexes to LockGuarded
Remi Gacogne [Fri, 7 May 2021 09:10:33 +0000 (11:10 +0200)] 
dnsdist: Convert remaining Action mutexes to LockGuarded

3 years agoLockGuarded: Add move constructors
Remi Gacogne [Fri, 7 May 2021 09:09:38 +0000 (11:09 +0200)] 
LockGuarded: Add move constructors

3 years agodnsdist: Convert most of the remaining locks to LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:53:30 +0000 (15:53 +0200)] 
dnsdist: Convert most of the remaining locks to LockGuarded

3 years agoConvert the StateHolder to LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:53:00 +0000 (15:53 +0200)] 
Convert the StateHolder to LockGuarded

3 years agodnsdist: Convert CDBKVStore to SharedLockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:52:12 +0000 (15:52 +0200)] 
dnsdist: Convert CDBKVStore to SharedLockGuarded

3 years agodnsdist: Convert the dynamic blocks topN to LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:51:35 +0000 (15:51 +0200)] 
dnsdist: Convert the dynamic blocks topN to LockGuarded

3 years agodnsdist: Convert ConcurrentConnectionManager to LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:51:00 +0000 (15:51 +0200)] 
dnsdist: Convert ConcurrentConnectionManager to LockGuarded

3 years agodnsdist: Convert GnuTLSTicketsKey to SharedLockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:50:09 +0000 (15:50 +0200)] 
dnsdist: Convert GnuTLSTicketsKey to SharedLockGuarded

3 years agodnsdist: Convert the web server configuration to LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:49:34 +0000 (15:49 +0200)] 
dnsdist: Convert the web server configuration to LockGuarded

3 years agodnsdist: Convert the TCP client counts map to LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:48:58 +0000 (15:48 +0200)] 
dnsdist: Convert the TCP client counts map to LockGuarded

3 years agodnsdist: Convert DynBPF to LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:48:26 +0000 (15:48 +0200)] 
dnsdist: Convert DynBPF to LockGuarded

3 years agodnsdist: Convert the Packet Cache to SharedLockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:47:41 +0000 (15:47 +0200)] 
dnsdist: Convert the Packet Cache to SharedLockGuarded

3 years agodnsdist: Convert DNSCrypt to SharedLockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:46:02 +0000 (15:46 +0200)] 
dnsdist: Convert DNSCrypt to SharedLockGuarded

3 years agospeedtest: Add tests for LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:43:25 +0000 (15:43 +0200)] 
speedtest: Add tests for LockGuarded

3 years agoAdd SharedLockGuarded, a read-write lock version of LockGuarded
Remi Gacogne [Fri, 30 Apr 2021 13:42:10 +0000 (15:42 +0200)] 
Add SharedLockGuarded, a read-write lock version of LockGuarded

3 years agodnsdist: Move the Lua mutex to LockGuarded
Remi Gacogne [Fri, 16 Apr 2021 13:40:34 +0000 (15:40 +0200)] 
dnsdist: Move the Lua mutex to LockGuarded

3 years agodnsdist: Move the ring buffers to LockGuarded
Remi Gacogne [Fri, 16 Apr 2021 13:39:53 +0000 (15:39 +0200)] 
dnsdist: Move the ring buffers to LockGuarded

3 years agoMove the remote logger class to LockGuarded
Remi Gacogne [Fri, 16 Apr 2021 13:39:18 +0000 (15:39 +0200)] 
Move the remote logger class to LockGuarded

3 years agodnsdist: Move the eBPF filter class to LockGuarded
Remi Gacogne [Fri, 16 Apr 2021 13:38:55 +0000 (15:38 +0200)] 
dnsdist: Move the eBPF filter class to LockGuarded

3 years agoIntroduce LockGuarded, a lock-protected data
Remi Gacogne [Fri, 16 Apr 2021 13:34:50 +0000 (15:34 +0200)] 
Introduce LockGuarded, a lock-protected data

The general idea has been borrowed from Rust's locks: instead of
defining two objects, the one to be protected, T, and the lock, we
define a single LockGuarded<T> object which contains the object.
That provides two big advantages:
- it is immediately clear which data is protected by the lock
- that data simply can't be accessed without holding the lock.

3 years agoMerge pull request #10598 from omoerbeek/rec-almost-expired-refactor-and-stats
Otto Moerbeek [Tue, 17 Aug 2021 11:31:17 +0000 (13:31 +0200)] 
Merge pull request #10598 from omoerbeek/rec-almost-expired-refactor-and-stats

Rec: almost expired refactor and stats

3 years agoFrom review feedback: only inc s_almost_expired_tasks_run after task has ended withou... 10598/head
Otto [Tue, 17 Aug 2021 10:23:40 +0000 (12:23 +0200)] 
From review feedback: only inc s_almost_expired_tasks_run after task has ended without exceptions
and check for nullptr function in task record.

3 years agoExpose almost-expired metrics
Otto [Tue, 20 Jul 2021 08:47:51 +0000 (10:47 +0200)] 
Expose almost-expired metrics

3 years agoRefactor stats queue, introducing a pointor to a function that does the work
Otto [Tue, 20 Jul 2021 07:33:17 +0000 (09:33 +0200)] 
Refactor stats queue, introducing a pointor to a function that does the work
(pointing to a resolve function) and almost-expired specific stats.

3 years agoMerge pull request #10546 from omoerbeek/rec-dns64-metrics
Otto Moerbeek [Tue, 17 Aug 2021 09:43:14 +0000 (11:43 +0200)] 
Merge pull request #10546 from omoerbeek/rec-dns64-metrics

rec: Add dns64 metrics

3 years agorec: Add a test for 'denial of the DS comes from the child zone' loop 10622/head
Remi Gacogne [Tue, 17 Aug 2021 09:33:16 +0000 (11:33 +0200)] 
rec: Add a test for 'denial of the DS comes from the child zone' loop

3 years agoMerge pull request #10602 from omoerbeek/rec-drop-after-preresolve
Otto Moerbeek [Tue, 17 Aug 2021 07:42:10 +0000 (09:42 +0200)] 
Merge pull request #10602 from omoerbeek/rec-drop-after-preresolve

rec: Process policy and potential Drop action after Lua hooks

3 years agoMerge pull request #10647 from rgacogne/decaf-polymorphic-exception
Remi Gacogne [Tue, 17 Aug 2021 07:37:34 +0000 (09:37 +0200)] 
Merge pull request #10647 from rgacogne/decaf-polymorphic-exception

Fix a warning about catching a polymorphic exception type by value

3 years agodnsdist: Avoid arithmetic on bitfields, as suggested by Otto 10650/head
Remi Gacogne [Tue, 17 Aug 2021 07:32:40 +0000 (09:32 +0200)] 
dnsdist: Avoid arithmetic on bitfields, as suggested by Otto

3 years agorec: check that the policy event filter is called for follow-up queries 10633/head
Remi Gacogne [Mon, 16 Aug 2021 15:45:18 +0000 (17:45 +0200)] 
rec: check that the policy event filter is called for follow-up queries

3 years agoUpdate multiplexer priorities so completion ports are preferred over /dev/poll 10631/head
Remi Gacogne [Mon, 16 Aug 2021 14:27:13 +0000 (16:27 +0200)] 
Update multiplexer priorities so completion ports are preferred over /dev/poll