]>
git.ipfire.org Git - thirdparty/pdns.git/log
Peter van Dijk [Wed, 11 Oct 2023 18:55:51 +0000 (20:55 +0200)]
dnsdist Docker: enable h2o again, using our fork
(cherry picked from commit
de02bfc15ca0b17bb082bcffd0882ec03257ce57 )
Peter van Dijk [Wed, 11 Oct 2023 17:41:29 +0000 (19:41 +0200)]
Merge pull request #13352 from Habbie/dnsdist-1.6-unbreak
dnsdist-1.6.x docs: move dependencies from pieterlexis to PowerDNS
Peter van Dijk [Tue, 11 Jan 2022 13:18:08 +0000 (14:18 +0100)]
docs: move dependencies from pieterlexis to PowerDNS
(cherry picked from commit
9805260c407d8ae14cc613cd8f576e4796469b64 )
(cherry picked from commit
8d6bca3456a8da9613561da95d25665be2785f81 )
Peter van Dijk [Tue, 20 Sep 2022 07:18:34 +0000 (09:18 +0200)]
Merge pull request #11973 from Habbie/backport-11961-to-dnsdist-1.6.x
dnsdist 1.6.x docker: upgrade to bullseye
Peter van Dijk [Thu, 15 Sep 2022 13:14:34 +0000 (15:14 +0200)]
docker: upgrade to bullseye
(cherry picked from commit
a0d3acff25a92627186ee43bead110aef416f59a )
Peter van Dijk [Mon, 20 Jun 2022 10:18:02 +0000 (12:18 +0200)]
Merge pull request #11702 from Habbie/backport-11658-to-dnsdist-1.6.x
dnsdist-1.6.x: backport of python dep/runtime fixes for protobuf and jinja2
Remi Gacogne [Fri, 25 Mar 2022 08:45:55 +0000 (09:45 +0100)]
docs: Pin jinja2 to < 3.1.0
Jinja2 3.1.0 removed deprecated code that is still used by sphinx
1.8.x, and it looks like our custom sphinx extensions are not working
with more recent versions of sphinx..
See:
- https://github.com/pallets/jinja/issues/1631
- https://github.com/readthedocs/readthedocs.org/issues/9037
and
- https://github.com/PowerDNS/pdns/pull/7712
The exact error is:
```
Extension error:
Could not import extension sphinx.builders.latex (exception: cannot import name 'contextfunction' from 'jinja2' (/dnsdist/pdns/dnsdistdist/.venv/lib/python3.7/site-packages/jinja2/__init__.py))
```
(cherry picked from commit
92ad29702011ac7cbd0d7d118ba612e7e07cedbe )
Peter van Dijk [Tue, 31 May 2022 10:13:57 +0000 (12:13 +0200)]
protobuf: use python implementation during tests
(cherry picked from commit
2dd4d60b8103a64c796296647ad7b45226d5a5bd )
Peter van Dijk [Thu, 3 Feb 2022 10:20:15 +0000 (11:20 +0100)]
Merge pull request #11279 from Habbie/backport-11262-to-dnsdist-1.6.x
dnsdist-1.6.x: builder: migrate EL8 builds to oraclelinux, rename centos8 to el8 where possible
Peter van Dijk [Mon, 31 Jan 2022 17:15:14 +0000 (18:15 +0100)]
builder: add el-7 alias for centos-7
(cherry picked from commit
6bd3c9bb23f5dfc385a66647ab175ec2812d6617 )
Peter van Dijk [Mon, 31 Jan 2022 15:43:54 +0000 (16:43 +0100)]
take centos 8-stream from quay
(cherry picked from commit
2f9edddc0c9c1f8a68e154f6c12e3fd214420563 )
Peter van Dijk [Mon, 31 Jan 2022 15:28:34 +0000 (16:28 +0100)]
builder CI: switch oraclelinux-8 to el-8
cleanup
(cherry picked from commit
1b27721782ad3dc547ed448a257c59829ff0bd94 )
Peter van Dijk [Mon, 31 Jan 2022 15:28:04 +0000 (16:28 +0100)]
builder: archs for oraclelinux-8; el-8 symlinks
(cherry picked from commit
dee53cf16161a6c45560475b647de420842532ef )
Peter van Dijk [Wed, 2 Feb 2022 15:05:31 +0000 (16:05 +0100)]
Merge pull request #11284 from Habbie/dnsdist-1.6-ci-only-dnsdist
dnsdist 1.6.x: CI: skip auth and rec
Peter van Dijk [Wed, 2 Feb 2022 10:21:48 +0000 (11:21 +0100)]
CI: skip auth and rec
Remi Gacogne [Wed, 22 Sep 2021 07:55:23 +0000 (09:55 +0200)]
Merge pull request #10743 from rgacogne/ddist16-duplicate-id-on-tcp-conn
dnsdist-1.6.x: Don't increase the outstanding counter on a duplicated ID over TCP
Remi Gacogne [Wed, 22 Sep 2021 07:54:34 +0000 (09:54 +0200)]
Merge pull request #10746 from rgacogne/ddist16-modernize-ax_check_sign
dnsdist-1.6.x: Update AX_CHECK_SIGN for autoconf 2.71
Pieter Lexis [Wed, 26 May 2021 12:24:17 +0000 (14:24 +0200)]
Update AX_CHECK_SIGN for autoconf 2.71
When running autoreconf with ax_check_sign.m4, autoconf 2.71 complains
about the use of `AX_TRY_COMPILE`:
```
libtoolize: copying file 'm4/lt~obsolete.m4'
configure.ac:29: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.ac:29: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
m4/ax_check_sign.m4:41: AX_CHECK_SIGN is expanded from...
m4/pdns_check_time_t.m4:1: PDNS_CHECK_TIME_T is expanded from...
configure.ac:29: the top level
```
This updates the macro to use `AC_COMPILE_IFELSE`, which has been present in
autoconf since at least version 2.60, released in 26 Jun 2006 (I did not
check any older releases).
This patch has been [submitted](http://savannah.gnu.org/patch/index.php?10071) [upstream](https://github.com/autoconf-archive/autoconf-archive/pull/225).
(cherry picked from commit
5e180ac61a7e73dc7681a2d34e6faf6908f14f6d )
Remi Gacogne [Tue, 21 Sep 2021 10:30:52 +0000 (12:30 +0200)]
dnsdist-1.6.x: Don't increase the outstanding counter on a duplicated ID over TCP
If the client has sent more than one concurrent query using the same query ID,
we only send one response for all of these queries, and we should not mess up
our outstanding queries counter.
Remi Gacogne [Mon, 13 Sep 2021 07:37:55 +0000 (09:37 +0200)]
Merge pull request #10706 from rgacogne/ddist16-outstanding-tcp
dnsdist-1.6.x: Fix outstanding counter issue
Remi Gacogne [Thu, 9 Sep 2021 09:51:00 +0000 (11:51 +0200)]
dnsdist-1.6.x: Fix outstanding counter issue
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 07:39:10 +0000 (09:39 +0200)]
Merge pull request #10696 from rgacogne/ddist161-backports
dnsdist-1.6.x: Backport #10656, #10560, #10550 and #10389
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.
(cherry picked from commit
29d9661fe21a2c4e96f94db1735629363dc07b2e )
Remi Gacogne [Tue, 17 Aug 2021 07:32:40 +0000 (09:32 +0200)]
dnsdist: Avoid arithmetic on bitfields, as suggested by Otto
(cherry picked from commit
4ee23e0b6e262d85cfba6f03a3be8f69bb9f9ba7 )
Remi Gacogne [Mon, 16 Aug 2021 10:51:15 +0000 (12:51 +0200)]
dnsdist: Fix the wrong RD and CD flags being cached, causing misses
We used to restore the RD and CD flags from the initial query before
inserting the response into the cache. That would cause an issue
if the flags had been altered, for example via SetNoRecurseAction,
as the cache lookup is done _after_ the actions have been applied
and thus after the flags altered.
If the initial query had the RD bit set, and thus was cleared by the
rule, the response would have been inserted with the RD bit restored,
and no lookup would then succeed because it would be done with the
bit cleared.
This commit fixes the insertion to use the RD and CD bits as set in
the response before restoring them, and restores the RD and CD bits
after a cache hit as well, to ensure that:
- cache lookups are done after the rules are applied
- cache insertions are done before the flags are restored
(cherry picked from commit
dbadb4d272a3317407e6bc934f55c2d41a87c0ac )
Peter van Dijk [Tue, 11 May 2021 10:27:33 +0000 (12:27 +0200)]
.dockerignore: do not ignore .git
because we ignore **/*.1 to not drag built manpages into the docker
context - but this also prevents any tags ending in .1 (like rec-4.5.1)
from being built
(cherry picked from commit
593361fb601d8529f6ffa6c0a70e971df1ebd44e )
Remi Gacogne [Thu, 1 Jul 2021 11:54:29 +0000 (13:54 +0200)]
dnsdist: Add the missing DOHFronted::loadNewCertificatesAndKeys()
(cherry picked from commit
00a1ad50d9bf0f1e27656199a68e0ecc09309828 )
Remi Gacogne [Fri, 2 Jul 2021 14:48:19 +0000 (16:48 +0200)]
dnsdist: Implement a web endpoint to get metrics for only one pool
(cherry picked from commit
bc6e4c3a10612648ed7017b7f5eefc6bf29492ad )
Remi Gacogne [Fri, 20 Aug 2021 09:42:17 +0000 (11:42 +0200)]
dnsdist: Catch FDMultiplexerException in IOStateHandler's destructor
(cherry picked from commit
b5f7d5894b3f247108141e066ce656f262c74c88 )
Pieter Lexis [Fri, 3 Sep 2021 12:36:07 +0000 (14:36 +0200)]
Merge pull request #10682 from pieterlexis/backport-10407-to-dnsdist-1.6.x
dnsdist: Backport #10407; Debian Bullseye builder files
Chris Hofstaedtler [Thu, 13 May 2021 14:58:37 +0000 (16:58 +0200)]
recursor/debian-buster: remove obsolete dh-systemd Build-Depends
Merged into debhelper (>= 9.
20160709 )
(cherry picked from commit
58f41c5e304caf847c52a0951c2a5a4b9f6c02fb )
Chris Hofstaedtler [Thu, 13 May 2021 14:50:03 +0000 (16:50 +0200)]
builder-support: add Debian bullseye dockerfiles
(cherry picked from commit
ad53d76110228c6d0822b1b130e0bbe425872499 )
Remi Gacogne [Sun, 1 Aug 2021 15:19:45 +0000 (17:19 +0200)]
Merge pull request #10619 from rgacogne/ddist16-fix-edns-notify
dnsdist-1.6.x: Properly handle ECS for queries with ancount or nscount > 0
Remi Gacogne [Mon, 17 May 2021 13:39:46 +0000 (15:39 +0200)]
dnsdist: Properly handle ECS for queries with ancount or nscount > 0
(cherry picked from commit
7bd50190ccb39019a2c733b722bdeb958d749065 )
Remi Gacogne [Wed, 7 Jul 2021 12:01:59 +0000 (14:01 +0200)]
Merge pull request #10574 from Habbie/backport-10455-to-dnsdist-1.6.x
builder rpmbuild: run yum upgrade first
Peter van Dijk [Thu, 27 May 2021 16:04:46 +0000 (18:04 +0200)]
builder rpmbuild: run yum upgrade first
(cherry picked from commit
912729cf22c5303fa4e0136a639132ca940a186f )
Remi Gacogne [Wed, 7 Jul 2021 10:08:26 +0000 (12:08 +0200)]
Merge pull request #10538 from rgacogne/ddist16-dnstap-protocol
dnsdist-1.6.x: Set the dnstap/protobuf transport to TCP for DoH queries
Remi Gacogne [Tue, 29 Jun 2021 15:17:20 +0000 (17:17 +0200)]
dnsdist: Set the dnstap/protobuf transport to TCP for DoH queries
Remi Gacogne [Tue, 25 May 2021 13:43:27 +0000 (15:43 +0200)]
Merge pull request #10438 from rgacogne/ddist16-missing-mutex-header
dnsdist-1.6.x: Backport a missing mutex header
Remi Gacogne [Tue, 25 May 2021 08:09:43 +0000 (10:09 +0200)]
dnsdist-1.6.x: Backport a missing mutex header
Peter van Dijk [Sat, 8 May 2021 20:01:58 +0000 (22:01 +0200)]
Merge pull request #10370 from yantarou/ixfrdist_typo
docs: fix typo in ixfrdist docs
Pieter Lexis [Fri, 7 May 2021 12:34:02 +0000 (14:34 +0200)]
Merge pull request #10371 from mnordhoff/dnsdist-docs-tcaction
dnsdist docs: switch RA and RD
Matt Nordhoff [Fri, 7 May 2021 10:55:31 +0000 (10:55 +0000)]
dnsdist docs: switch RA and RD
Jan Hilberath [Fri, 7 May 2021 10:07:46 +0000 (19:07 +0900)]
docs: fix typo in ixfrdist docs
Otto Moerbeek [Thu, 6 May 2021 18:18:22 +0000 (20:18 +0200)]
Merge pull request #10353 from rgacogne/rec-dns64-on-rpz-hit-after-gettag-ffi-hit
rec: Apply dns64 on RPZ hits generated after a gettag_ffi hit
Otto Moerbeek [Thu, 6 May 2021 18:17:24 +0000 (20:17 +0200)]
Merge pull request #10292 from omoerbeek/rec-more-tsan
rec: Fix TSAN complaints: max stacksize and response stats size counters
Peter van Dijk [Thu, 6 May 2021 13:51:23 +0000 (15:51 +0200)]
Merge pull request #10361 from dmachard/auth-timeout-luarecords
auth: change default timeout to 2s for lua records
Remi Gacogne [Thu, 6 May 2021 08:10:12 +0000 (10:10 +0200)]
Merge pull request #10362 from Habbie/dnsdist-docs-tcaction
dnsdist docs: correct bits for TCAction
Peter van Dijk [Thu, 6 May 2021 04:13:22 +0000 (06:13 +0200)]
dnsdist docs: correct bits for TCAction
dmachard [Wed, 5 May 2021 16:51:50 +0000 (18:51 +0200)]
change default timeout to 2s for lua records
Remi Gacogne [Tue, 4 May 2021 16:30:47 +0000 (18:30 +0200)]
rec: Test the most simple condition first
Co-authored-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Remi Gacogne [Tue, 4 May 2021 12:56:40 +0000 (14:56 +0200)]
rec: Add a regression test for gettag_ffi, RPZ and DNS64 interaction
Remi Gacogne [Tue, 4 May 2021 10:29:32 +0000 (12:29 +0200)]
rec: Apply dns64 on RPZ hits generated after a gettag_ffi hit
We do special case the qname RPZ processing after a gettag_ffi hit,
leading to dns64 to not be applied in that case. This commit adds
dns64 handling to the special case.
Remi Gacogne [Tue, 4 May 2021 08:15:02 +0000 (10:15 +0200)]
Merge pull request #10347 from rgacogne/ddist-16rc2-changelog
dnsdist: Add ChangeLog and secpoll for 1.6.0-rc2
Remi Gacogne [Mon, 3 May 2021 14:37:12 +0000 (16:37 +0200)]
Merge pull request #10346 from rgacogne/ddist-dnscrypt-locks
dnsdist: Fix missing locks in DNSCrypt certificates management
Remi Gacogne [Mon, 3 May 2021 09:23:46 +0000 (11:23 +0200)]
dnsdist: Add ChangeLog and secpoll for 1.6.0-rc2
Remi Gacogne [Mon, 3 May 2021 08:22:08 +0000 (10:22 +0200)]
dnsdist: Fix missing locks in DNSCrypt certificates management
In theory these functions should already be protected by the Lua
lock but better safe than sorry.
Found while working on the migration to LockGuarded.
Pieter Lexis [Mon, 3 May 2021 07:51:21 +0000 (09:51 +0200)]
Merge pull request #10293 from Habbie/update-builder
update builder - i accidentally downgraded it in
4f57dec4a7f1b94c6da4c0d3fdfecf73781bbcb2
Remi Gacogne [Mon, 3 May 2021 07:48:58 +0000 (09:48 +0200)]
Merge pull request #10327 from rgacogne/ddist-dynblocks-ebpf
dnsdist: Only use eBPF for "drop" actions, clean up more often
Otto Moerbeek [Fri, 30 Apr 2021 15:23:37 +0000 (17:23 +0200)]
Merge pull request #10344 from omoerbeek/boostm4-clang11.1
auto.m4: clang 11.1 is a thing
Otto Moerbeek [Fri, 30 Apr 2021 15:19:23 +0000 (17:19 +0200)]
Merge pull request #10343 from omoerbeek/dnsdist-test-warnings
dnsdist: fix test warnings
Otto [Fri, 30 Apr 2021 13:58:26 +0000 (15:58 +0200)]
Fix a few signed vs unsigned warnings as seen on OpenBSD
Otto [Fri, 30 Apr 2021 13:45:44 +0000 (15:45 +0200)]
clang 11.1 is a thing
Remi Gacogne [Fri, 30 Apr 2021 10:42:26 +0000 (12:42 +0200)]
Merge pull request #10336 from rgacogne/cpp17-string-view
Get rid of our string_view selection process, C++17 has all we need
Pieter Lexis [Fri, 30 Apr 2021 10:32:05 +0000 (12:32 +0200)]
Merge pull request #10339 from phonedph1/patch-28
rec: Update hooks.rst
Remi Gacogne [Thu, 29 Apr 2021 16:39:12 +0000 (18:39 +0200)]
Remove the now empty views.hh header
phonedph1 [Thu, 29 Apr 2021 02:17:56 +0000 (20:17 -0600)]
Update hooks.rst
Otto Moerbeek [Wed, 28 Apr 2021 09:39:15 +0000 (11:39 +0200)]
Merge pull request #10337 from omoerbeek/rec-prep-4.5.0-rc1
rec: Prep for rec-4.5.0-rc1
Peter van Dijk [Mon, 26 Apr 2021 14:15:06 +0000 (16:15 +0200)]
Merge pull request #10259 from Habbie/spgsql-drop-refcursor-support
auth gpgsql: add stored procedure test, drop refcursor support
Otto [Mon, 26 Apr 2021 09:35:36 +0000 (11:35 +0200)]
Prep for rec-4.5.0-rc1
Otto Moerbeek [Mon, 26 Apr 2021 09:13:37 +0000 (11:13 +0200)]
Merge pull request #10329 from Habbie/boost-container-exceptions
boost 1.76 containers: use standard exceptions
Remi Gacogne [Mon, 26 Apr 2021 08:14:07 +0000 (10:14 +0200)]
Get rid of our string_view selection process, C++17 has all we need
Peter van Dijk [Fri, 23 Apr 2021 13:40:43 +0000 (15:40 +0200)]
boost 1.76 containers: use standard exceptions
Remi Gacogne [Thu, 22 Apr 2021 08:38:43 +0000 (10:38 +0200)]
dnsdist: Only use eBPF for "drop" actions
Remi Gacogne [Thu, 22 Apr 2021 08:15:54 +0000 (10:15 +0200)]
dnsdist: Document that eBPF is only used for "drop" actions
Remi Gacogne [Thu, 22 Apr 2021 08:13:32 +0000 (10:13 +0200)]
dnsdist: Set setDynBlocksPurgeInterval()'s default to 60s
Remi Gacogne [Thu, 22 Apr 2021 08:06:38 +0000 (10:06 +0200)]
Merge pull request #10323 from rgacogne/ddist-tsan-snmp
dnsdist: Make the backend queryLoad and dropRate values atomic
Remi Gacogne [Wed, 21 Apr 2021 13:17:22 +0000 (15:17 +0200)]
Merge pull request #10310 from rgacogne/fix-simple-match
auth: Prevent dereferencing std::string::end() in SimpleMatch
Remi Gacogne [Wed, 21 Apr 2021 12:20:52 +0000 (14:20 +0200)]
dnsdist: Make the backend queryLoad and dropRate values atomic
So that there is no race when these vaues are read by the SNMP or
web threads and updated by the health check thread at the same time.
Reported by Thread Sanitizer:
WARNING: ThreadSanitizer: data race (pid=11167)
Write of size 8 at 0x7b7400002558 by thread T18:
#0 healthChecksThread() /opt/project/pdns/dnsdistdist/dnsdist.cc:1712:22 (dnsdist+0xf2a4a2)
#1 void std::__invoke_impl<void, void (*)()>(std::__invoke_other, void (*&&)()) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:60:14 (dnsdist+0xf40ea2)
#2 std::__invoke_result<void (*)()>::type std::__invoke<void (*)()>(void (*&&)()) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14 (dnsdist+0xf40e0d)
#3 decltype(std::__invoke(_S_declval<0ul>())) std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/thread:244:13 (dnsdist+0xf40dd5)
#4 std::thread::_Invoker<std::tuple<void (*)()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/thread:253:11 (dnsdist+0xf40d95)
#5 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/thread:196:13 (dnsdist+0xf40c29)
#6 <null> <null> (libstdc++.so.6+0xbbb2e)
Previous read of size 8 at 0x7b7400002558 by thread T2:
#0 backendStatTable_handler(netsnmp_mib_handler_s*, netsnmp_handler_registration_s*, netsnmp_agent_request_info_s*, netsnmp_request_info_s*) /opt/project/pdns/dnsdistdist/dnsdist-snmp.cc:356:62 (dnsdist+0xeccf98)
#1 netsnmp_call_next_handler <null> (libnetsnmpagent.so.30+0x2a0cc)
#2 SNMPAgent::handleSNMPQueryCB(int, boost::any&) /opt/project/pdns/dnsdistdist/snmp-agent.cc:96:13 (dnsdist+0xfb0847)
#3 boost::detail::function::void_function_invoker2<void (*)(int, boost::any&), void, int, boost::any&>::invoke(boost::detail::function::function_buffer&, int, boost::any&) /usr/include/boost/function/function_template.hpp:118:11 (dnsdist+0x8937d8)
#4 boost::function2<void, int, boost::any&>::operator()(int, boost::any&) const /usr/include/boost/function/function_template.hpp:768:14 (dnsdist+0xf9d56c)
#5 EpollFDMultiplexer::run(timeval*, int) /opt/project/pdns/dnsdistdist/epollmplexer.cc:176:7 (dnsdist+0xfd041b)
#6 SNMPAgent::worker() /opt/project/pdns/dnsdistdist/snmp-agent.cc:141:24 (dnsdist+0xfb0b6f)
#7 void std::__invoke_impl<void, void (SNMPAgent::*)(), SNMPAgent*>(std::__invoke_memfun_deref, void (SNMPAgent::*&&)(), SNMPAgent*&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:73:14 (dnsdist+0xf344c9)
#8 std::__invoke_result<void (SNMPAgent::*)(), SNMPAgent*>::type std::__invoke<void (SNMPAgent::*)(), SNMPAgent*>(void (SNMPAgent::*&&)(), SNMPAgent*&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14 (dnsdist+0xf343c1)
#9 decltype(std::__invoke(_S_declval<0ul>(), _S_declval<1ul>())) std::thread::_Invoker<std::tuple<void (SNMPAgent::*)(), SNMPAgent*> >::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/thread:244:13 (dnsdist+0xf3436e)
#10 std::thread::_Invoker<std::tuple<void (SNMPAgent::*)(), SNMPAgent*> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/thread:253:11 (dnsdist+0xf34315)
#11 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (SNMPAgent::*)(), SNMPAgent*> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/thread:196:13 (dnsdist+0xf34079)
#12 <null> <null> (libstdc++.so.6+0xbbb2e)
Otto Moerbeek [Wed, 21 Apr 2021 10:31:47 +0000 (12:31 +0200)]
Merge pull request #10312 from omoerbeek/rec-pc-sizing
rec: Improve packet cache sizing.
Otto Moerbeek [Wed, 21 Apr 2021 09:01:56 +0000 (11:01 +0200)]
typo
Co-authored-by: Remi Gacogne <github@coredump.fr>
Remi Gacogne [Wed, 21 Apr 2021 08:24:32 +0000 (10:24 +0200)]
Merge pull request #10311 from rgacogne/ddist-newserver-sockets-doc
dnsdist: Better documentation of newServer's 'sockets' parameter
Otto Moerbeek [Tue, 20 Apr 2021 18:52:24 +0000 (20:52 +0200)]
Merge pull request #10322 from rubenk/typos
Fix two typos in lua scripting docs
Ruben Kerkhof [Tue, 20 Apr 2021 17:39:07 +0000 (19:39 +0200)]
Fix two typos in lua scripting docs
Otto Moerbeek [Tue, 20 Apr 2021 14:58:44 +0000 (16:58 +0200)]
Merge pull request #10318 from mnordhoff/toclients
rec: Fix typo in edns-padding-tag help
Matt Nordhoff [Tue, 20 Apr 2021 13:41:42 +0000 (13:41 +0000)]
rec: Fix typo in edns-padding-tag help
Otto Moerbeek [Tue, 20 Apr 2021 13:02:42 +0000 (15:02 +0200)]
Merge pull request #10317 from omoerbeek/rec-export-hosts
rec: Do not put results of DS query for auth or forward domains in negcache.
Otto [Tue, 20 Apr 2021 11:52:38 +0000 (13:52 +0200)]
Also check query type
Otto [Tue, 20 Apr 2021 11:32:26 +0000 (13:32 +0200)]
Add test case
Otto [Tue, 6 Apr 2021 11:20:36 +0000 (13:20 +0200)]
Do not put results of DS query for auth or forward domains in negcache.
Should fix #10189.
Remi Gacogne [Tue, 20 Apr 2021 08:31:53 +0000 (10:31 +0200)]
Merge pull request #10309 from rgacogne/ddist-16rc1-changelog
dnsdist: Add ChangeLog and secpoll for 1.6.0-rc1
Remi Gacogne [Mon, 19 Apr 2021 15:19:42 +0000 (17:19 +0200)]
Merge pull request #10303 from rgacogne/rec-proxy-protocol-ecs
rec: Use the correct ECS address when proxy-protocol is enabled
Otto [Mon, 19 Apr 2021 14:44:43 +0000 (16:44 +0200)]
Improve packet cache sizing.
Since queries incoming over TCP are now also using the packet
cache, there is now also one packet cache instance per distributor
thread. Each cache instance has a size of max-packetcache-entries
divided by (threads + distributor-threads).
Remi Gacogne [Mon, 19 Apr 2021 14:16:16 +0000 (16:16 +0200)]
dnsdist: Better documentation of newServer's 'sockets' parameter
Courtesy of Neil Cook (thanks!).
Remi Gacogne [Mon, 19 Apr 2021 12:14:45 +0000 (14:14 +0200)]
dnsdist: Add missing #10171 to the ChangeLog
Remi Gacogne [Mon, 19 Apr 2021 12:06:26 +0000 (14:06 +0200)]
rec: Fix the proxy protocol regression tests
Remi Gacogne [Mon, 19 Apr 2021 11:59:53 +0000 (13:59 +0200)]
dnsdist: Add ChangeLog and secpoll for 1.6.0-rc1
Peter van Dijk [Mon, 19 Apr 2021 10:51:03 +0000 (12:51 +0200)]
Merge pull request #10286 from Habbie/rpz-zz-zz
rpz dumper: stop generating double zz labels on networks that start with zeroes
Remi Gacogne [Mon, 19 Apr 2021 10:28:55 +0000 (12:28 +0200)]
auth: Small cleanup in SimpleMatch
Remi Gacogne [Mon, 19 Apr 2021 10:18:50 +0000 (12:18 +0200)]
auth: Prevent dereferencing std::string::end() in SimpleMatch
SimpleMatch is called with user-supplied strings in the API and the
bind backend. We might get away with it in most cases because
std::strings are null-terminated, but it's still undefined behaviour
as there is no guarantee that end() will point to the terminator.
Reported by cppcheck 2.4.1:
```
misc.hh:501:16: warning: Either the condition 'mi==d_mask.end()' is redundant or there is possible dereference of an invalid iterator: mi. [derefInvalidIteratorRedundantCheck]
while(*mi == '*') ++mi;
^
misc.hh:502:16: note: Assuming that condition 'mi==d_mask.end()' is not redundant
if (mi == d_mask.end()) return true;
^
misc.hh:501:16: note: Dereference of an invalid iterator
while(*mi == '*') ++mi;
```