]>
git.ipfire.org Git - thirdparty/pdns.git/log
cranberry [Mon, 14 Jun 2021 20:41:52 +0000 (20:41 +0000)]
Added reference to pdnsutil manpage
Peter van Dijk [Mon, 14 Jun 2021 14:43:37 +0000 (16:43 +0200)]
Merge pull request #10393 from jsoref/faq-deleted-zones-do-not-propagate
Correct faq entry to talk about zones
Remi Gacogne [Mon, 14 Jun 2021 14:34:12 +0000 (16:34 +0200)]
Merge pull request #10414 from 42wim/multipleip
Support multiple ip addresses for dnsdist-resolver lua script
Peter van Dijk [Mon, 14 Jun 2021 12:39:18 +0000 (14:39 +0200)]
Merge pull request #10493 from Habbie/gh-secpoll-mask
in secpoll testing, do not start the auth
Otto Moerbeek [Mon, 14 Jun 2021 11:35:23 +0000 (13:35 +0200)]
Merge pull request #10483 from omoerbeek/log-qtype-qclass
Implement log methods for QType and QClass
Peter van Dijk [Mon, 14 Jun 2021 11:33:56 +0000 (13:33 +0200)]
in secpoll testing, do not start the auth
Remi Gacogne [Mon, 14 Jun 2021 10:18:48 +0000 (12:18 +0200)]
Merge pull request #10492 from rgacogne/fix-qtype-getname-speedtest
speedtest: Fix QType::getName() renamed to QType::toString()
Peter van Dijk [Sun, 13 Jun 2021 16:22:19 +0000 (18:22 +0200)]
update default in docs, thanks @ncartron
Remi Gacogne [Sat, 12 Jun 2021 15:43:15 +0000 (17:43 +0200)]
speedtest: Fix QType::getName() renamed to QType::toString()
Remi Gacogne [Sat, 12 Jun 2021 09:20:48 +0000 (11:20 +0200)]
Merge pull request #10441 from rgacogne/ddist-memory-client-mode
dnsdist: Skip some memory allocations in client mode
Remi Gacogne [Fri, 11 Jun 2021 14:11:09 +0000 (16:11 +0200)]
dnsdist: Remove a default param in the definition of DownstreamState's ctor
Peter van Dijk [Wed, 9 Jun 2021 09:29:41 +0000 (11:29 +0200)]
Merge pull request #10486 from Habbie/auth-4.5.0-beta1-docs-secpoll
auth-4.5.0-beta1: docs+secpoll
Peter van Dijk [Wed, 9 Jun 2021 08:50:25 +0000 (10:50 +0200)]
auth-4.5.0-beta1: docs+secpoll
Otto Moerbeek [Wed, 9 Jun 2021 08:16:30 +0000 (10:16 +0200)]
Merge pull request #10481 from omoerbeek/rec-prep-4.5.2
Rec: Prep for 4.4.4 and 4.5.2
Otto [Fri, 16 Apr 2021 13:30:15 +0000 (15:30 +0200)]
Reformat
Otto [Mon, 12 Apr 2021 09:51:36 +0000 (11:51 +0200)]
Implement log methods for QType and QClass
Otto Moerbeek [Tue, 8 Jun 2021 08:07:08 +0000 (10:07 +0200)]
Merge pull request #10467 from omoerbeek/rec-openbsd-kqueue
Switch OpenBSD to kqueue mplexer
Otto [Tue, 8 Jun 2021 08:00:22 +0000 (10:00 +0200)]
Merge branch 'rec-prep-4.4.4' into rec-prep-4.5.2
Otto [Mon, 7 Jun 2021 07:39:20 +0000 (09:39 +0200)]
Mention correct version now that this is backported.
Otto [Mon, 7 Jun 2021 12:08:11 +0000 (14:08 +0200)]
Prep for 4.5.2, no secpoll change yet since it will conflict with the rec-4.4.4 one.
Peter van Dijk [Mon, 7 Jun 2021 10:39:35 +0000 (12:39 +0200)]
Merge pull request #10437 from Habbie/ldap-docs-master-yes
auth ldap: note that master mode -is- supported
Otto [Mon, 7 Jun 2021 08:24:07 +0000 (10:24 +0200)]
Prep for rec-4.4.4
Remi Gacogne [Mon, 7 Jun 2021 08:43:39 +0000 (10:43 +0200)]
Merge pull request #10469 from Habbie/dnsdist-no-dnsdist-table
dnsdist: remove dnsdist.* lookup fallback
Peter van Dijk [Sun, 6 Jun 2021 18:32:30 +0000 (20:32 +0200)]
Merge pull request #10463 from Habbie/lua-forward-reverse
auth LUA: add filterForward function, to limit the scope of createForward[6]
Peter van Dijk [Tue, 1 Jun 2021 13:54:02 +0000 (15:54 +0200)]
add filterForward function, plus initialiser helper in newNMG
Peter van Dijk [Mon, 31 May 2021 15:15:14 +0000 (17:15 +0200)]
auth LUA testing: test the exception feature
Peter van Dijk [Mon, 31 May 2021 10:51:18 +0000 (12:51 +0200)]
expand LUA createForward/Reverse testing
Peter van Dijk [Mon, 31 May 2021 14:46:22 +0000 (16:46 +0200)]
authtests.py: fix rcode comparison and reporting
Peter van Dijk [Fri, 28 May 2021 21:14:21 +0000 (23:14 +0200)]
rename suffix to format
Peter van Dijk [Sun, 6 Jun 2021 15:03:21 +0000 (17:03 +0200)]
Merge pull request #10470 from mind04/pdns-auth-py
auth: disable zone-cache for the regression.auth-py tests
Kees Monshouwer [Sun, 6 Jun 2021 11:01:12 +0000 (13:01 +0200)]
auth: fix the nobackend tests
Kees Monshouwer [Sat, 5 Jun 2021 23:33:03 +0000 (01:33 +0200)]
auth: disable zone-cache for the regression.auth-py tests
Peter van Dijk [Sat, 5 Jun 2021 16:57:56 +0000 (18:57 +0200)]
dnsdist: remove dnsdist.* lookup fallback
Otto Moerbeek [Fri, 4 Jun 2021 14:34:49 +0000 (16:34 +0200)]
Merge pull request #10426 from omoerbeek/rec-refresh-ns-and-addr-fix
rec: When refreshing, do not consider root almost expired
Otto [Fri, 4 Jun 2021 14:02:35 +0000 (16:02 +0200)]
Switch OpenBSD to kqueue mplexer; untested
Otto Moerbeek [Fri, 4 Jun 2021 12:58:50 +0000 (14:58 +0200)]
make ttl value's origin clear
Co-authored-by: Remi Gacogne <github@coredump.fr>
Otto [Fri, 4 Jun 2021 11:27:44 +0000 (13:27 +0200)]
Add testcase for "almost expired".
Peter van Dijk [Thu, 3 Jun 2021 20:36:55 +0000 (22:36 +0200)]
Merge pull request #10450 from pieterlexis/modernize-ax_check_sign
Update AX_CHECK_SIGN for autoconf 2.71
Peter van Dijk [Thu, 3 Jun 2021 18:57:41 +0000 (20:57 +0200)]
Merge pull request #10454 from mind04/pdns-tiny-getalldomains
auth: add/fix getAllDomains()
Peter van Dijk [Thu, 3 Jun 2021 14:57:29 +0000 (16:57 +0200)]
Merge pull request #10466 from tuxis-ie/fix_issue_10465
Update documentation to reflect changes in default-soa-content.
Peter van Dijk [Thu, 3 Jun 2021 14:57:18 +0000 (16:57 +0200)]
add markup
Peter van Dijk [Thu, 3 Jun 2021 14:51:19 +0000 (16:51 +0200)]
Merge pull request #10461 from mind04/pdns-createdomain
auth: simplify createDomain()
Peter van Dijk [Thu, 3 Jun 2021 13:46:31 +0000 (15:46 +0200)]
Merge pull request #10452 from cmouse/doc-unknown-rr
docs: Document unknown record type in supported types
Kees Monshouwer [Thu, 3 Jun 2021 06:44:38 +0000 (08:44 +0200)]
auth: document and check backend zone-cache capability
Mark Schouten [Thu, 3 Jun 2021 11:59:37 +0000 (13:59 +0200)]
Update with @Habbie's suggestions
Mark Schouten [Thu, 3 Jun 2021 10:32:06 +0000 (12:32 +0200)]
Update documentation to reflect changes in default-soa-content.
There are more settings that need replacing.
Remi Gacogne [Thu, 3 Jun 2021 08:44:39 +0000 (10:44 +0200)]
Merge pull request #10460 from rgacogne/rec-referral-from-parent-on-ds
rec: Don't follow referral from the parent to the child for DS queries
Kees Monshouwer [Mon, 31 May 2021 21:25:13 +0000 (23:25 +0200)]
auth: simplify createDomain()
Remi Gacogne [Wed, 2 Jun 2021 14:36:13 +0000 (16:36 +0200)]
Merge pull request #10419 from rgacogne/ddist-fix-edns-notify
dnsdist: Properly handle ECS for queries with ancount or nscount > 0
Remi Gacogne [Wed, 2 Jun 2021 14:29:40 +0000 (16:29 +0200)]
rec: Cleaner way of handling a referral to a child zone for DS queries
Remi Gacogne [Wed, 2 Jun 2021 14:26:14 +0000 (16:26 +0200)]
rec: Also test for the "referral to child on DS query" case in a Secure zone
Otto [Wed, 2 Jun 2021 14:11:44 +0000 (16:11 +0200)]
Better approach: just never consider root records "almost expired".
They will be refreshed by the periodic task anyway.
Remi Gacogne [Wed, 2 Jun 2021 13:02:42 +0000 (15:02 +0200)]
rec: Fix a typo in a comment
Remi Gacogne [Wed, 2 Jun 2021 13:00:32 +0000 (15:00 +0200)]
rec: Add a unit test for the "referral to child on DS query" case
Otto Moerbeek [Wed, 2 Jun 2021 11:28:18 +0000 (13:28 +0200)]
Merge pull request #10445 from rgacogne/rec-typo-edns-prometheus-metric
rec: Fix a typo in the prometheus "edns-ping-mismatches" metric
Peter van Dijk [Wed, 2 Jun 2021 10:15:17 +0000 (12:15 +0200)]
Merge pull request #10459 from Habbie/auth-py-tests
auth-py tests: unbreak, enable in CircleCI
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).
Peter van Dijk [Tue, 1 Jun 2021 08:36:56 +0000 (10:36 +0200)]
Merge pull request #10407 from zeha/bullseye
builder-support: add Debian bullseye dockerfiles
Peter van Dijk [Tue, 1 Jun 2021 08:33:27 +0000 (10:33 +0200)]
Merge pull request #10462 from pieterlexis/update-boost-m4
Update boost.m4
Peter van Dijk [Tue, 1 Jun 2021 08:12:42 +0000 (10:12 +0200)]
auth LUA testing: allow 2 seconds for health checking to run
Pieter Lexis [Tue, 1 Jun 2021 07:12:15 +0000 (09:12 +0200)]
Update boost.m4
Remi Gacogne [Mon, 31 May 2021 15:00:18 +0000 (17:00 +0200)]
rec: Don't follow referral from the parent to the child for DS queries
It happens if the server does not know about the DS special case.
Treat the delegation as a unsigned NODATA answer in that case.
For example for sthc.nordlo.cloud we go from the existing:
```
[1] sthc.nordlo.cloud: Resolved 'nordlo.cloud' NS ns2.zetup.se to: 159.253.27.75
[1] sthc.nordlo.cloud: Trying IP 159.253.27.75:53, asking 'sthc.nordlo.cloud|DS'
[1] sthc.nordlo.cloud: Got 3 answers from ns2.zetup.se (159.253.27.75), rcode=0 (No Error), aa=0, in 35ms
[1] sthc.nordlo.cloud: accept answer 'sthc.nordlo.cloud|NS|ns2.loopia.se.' from 'nordlo.cloud' nameservers? ttl=3600, place=2 YES!
[1] sthc.nordlo.cloud: accept answer 'sthc.nordlo.cloud|NS|ns1.loopia.se.' from 'nordlo.cloud' nameservers? ttl=3600, place=2 YES!
[1] sthc.nordlo.cloud: OPT answer '.' from 'nordlo.cloud' nameservers
[1] sthc.nordlo.cloud: determining status after receiving this packet
[1] sthc.nordlo.cloud: got NS record 'sthc.nordlo.cloud' -> 'ns2.loopia.se.'
[1] sthc.nordlo.cloud: got NS record 'sthc.nordlo.cloud' -> 'ns1.loopia.se.'
[1] sthc.nordlo.cloud: status=did not resolve, got 2 NS, looping to them
[1] sthc.nordlo.cloud.: Nameservers: ns1.loopia.se(37.85ms), ns2.loopia.se(38.26ms)
[1] sthc.nordlo.cloud: Trying to resolve NS 'ns1.loopia.se' (1/2)
[1] Nameserver ns1.loopia.se IPs: 93.188.0.20(37.85ms)
[1] sthc.nordlo.cloud: Resolved 'sthc.nordlo.cloud' NS ns1.loopia.se to: 93.188.0.20
[1] sthc.nordlo.cloud: Trying IP 93.188.0.20:53, asking 'sthc.nordlo.cloud|DS'
```
to:
```
[1] sthc.nordlo.cloud: Resolved 'nordlo.cloud' NS ns2.zetup.se to: 159.253.27.75
[1] sthc.nordlo.cloud: Trying IP 159.253.27.75:53, asking 'sthc.nordlo.cloud|DS'
[1] sthc.nordlo.cloud: Got 3 answers from ns2.zetup.se (159.253.27.75), rcode=0 (No Error), aa=0, in 35ms
[1] sthc.nordlo.cloud: accept answer 'sthc.nordlo.cloud|NS|ns2.loopia.se.' from 'nordlo.cloud' nameservers? ttl=3600, place=2 YES!
[1] sthc.nordlo.cloud: accept answer 'sthc.nordlo.cloud|NS|ns1.loopia.se.' from 'nordlo.cloud' nameservers? ttl=3600, place=2 YES!
[1] sthc.nordlo.cloud: OPT answer '.' from 'nordlo.cloud' nameservers
[1] sthc.nordlo.cloud: determining status after receiving this packet
[1] sthc.nordlo.cloud: got NS record 'sthc.nordlo.cloud' -> 'ns2.loopia.se.'
[1] sthc.nordlo.cloud: got (implicit) negative indication of DS record for 'sthc.nordlo.cloud'
[1] sthc.nordlo.cloud: got NS record 'sthc.nordlo.cloud' -> 'ns1.loopia.se.'
[1] sthc.nordlo.cloud: status=noerror, other types may exist, but we are done (have negative SOA)
[1] : no signatures for sthc.nordlo.cloud, we likely missed a cut between cloud and nordlo.cloud, looking for it
```
Peter van Dijk [Mon, 15 Feb 2021 13:20:15 +0000 (14:20 +0100)]
circleci: test auth-py
Peter van Dijk [Mon, 31 May 2021 13:00:59 +0000 (15:00 +0200)]
auth testing: enable svc-autohints when testing autohints
Peter van Dijk [Wed, 26 May 2021 10:50:14 +0000 (12:50 +0200)]
auth: enable zone cache by default
Kees Monshouwer [Wed, 26 May 2021 21:43:52 +0000 (23:43 +0200)]
auth: test with a variety of zone-cache-refresh-interval flavors
Kees Monshouwer [Wed, 26 May 2021 21:32:12 +0000 (23:32 +0200)]
auth: implement getAllDomains() in geoip backend
Kees Monshouwer [Wed, 26 May 2021 20:30:56 +0000 (22:30 +0200)]
auth: add dns-get-all-domains in lua2 backend script
Kees Monshouwer [Wed, 26 May 2021 18:41:08 +0000 (20:41 +0200)]
auth: fix possibe crash in getAllDomains()
Peter van Dijk [Fri, 28 May 2021 10:30:21 +0000 (12:30 +0200)]
Merge pull request #10455 from Habbie/builder-yum-upgrade
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
Peter van Dijk [Thu, 27 May 2021 11:19:22 +0000 (13:19 +0200)]
Merge pull request #10434 from pieterlexis/upgrade-local-ipv6
Fix the upgrade guide for local-ipv6 + other doc fixes
Pieter Lexis [Fri, 21 May 2021 13:36:54 +0000 (15:36 +0200)]
Fix SQL highlighting in pgsql docs
Pieter Lexis [Fri, 21 May 2021 13:32:41 +0000 (15:32 +0200)]
Correctly update local-ipv6 deprecation info
Peter van Dijk [Thu, 27 May 2021 08:39:18 +0000 (10:39 +0200)]
Merge pull request #10376 from Habbie/auth-4.5.0-alpha1-docs
changelog and secpoll for auth-4.5.0-alpha1
Peter van Dijk [Thu, 27 May 2021 08:26:56 +0000 (10:26 +0200)]
update release date; mention new zone cache feature
Aki Tuomi [Wed, 26 May 2021 17:37:26 +0000 (20:37 +0300)]
docs: Document unknown record type in supported types
Remi Gacogne [Wed, 26 May 2021 15:41:56 +0000 (17:41 +0200)]
Merge pull request #10398 from dmachard/doc-dnsdist-eol
dnsdist: docs new EOL page
Otto Moerbeek [Wed, 26 May 2021 11:21:11 +0000 (13:21 +0200)]
Merge pull request #10417 from omoerbeek/rec-docs-PolicyEvent.appliedPolicy
rec: Refer to the description in dq.appliedPolicy for PolicyEvent.appliedPolicy
Otto Moerbeek [Wed, 26 May 2021 11:20:53 +0000 (13:20 +0200)]
Merge pull request #10416 from omoerbeek/redundant-checks-updateCacheFromRecords
rec: Remove checks in updateCacheFromRecords that are already done by sanitizeRecords.
Otto Moerbeek [Wed, 26 May 2021 11:20:27 +0000 (13:20 +0200)]
Merge pull request #10396 from omoerbeek/rec-log-levels
Take into account g_quiet when determing loglevel and change a few loglevels
Peter van Dijk [Wed, 26 May 2021 11:00:03 +0000 (13:00 +0200)]
doc formatting/parsing fixes
Peter van Dijk [Mon, 10 May 2021 09:50:59 +0000 (11:50 +0200)]
changelog and secpoll for auth-4.5.0-alpha1
Remi Gacogne [Wed, 26 May 2021 08:59:50 +0000 (10:59 +0200)]
rec: Fix a typo in the prometheus "edns-ping-mismatches" metric
Otto Moerbeek [Wed, 26 May 2021 08:43:33 +0000 (10:43 +0200)]
Merge pull request #10440 from omoerbeek/rec-nsec3-iter-default
rec: Change nsec3-max-iterations default to 150
Peter van Dijk [Tue, 25 May 2021 19:25:56 +0000 (21:25 +0200)]
Merge pull request #10342 from pieterlexis/svcb-rename-echconfig
SVCB: rename echconfig to ech and add test vectors from draft
Remi Gacogne [Tue, 25 May 2021 16:11:28 +0000 (18:11 +0200)]
Merge pull request #10423 from rgacogne/ddist-tcp-max-connections-stats-race
dnsdist: Add a suppression for a race in TCP stats reported by TSAN
Remi Gacogne [Tue, 25 May 2021 16:11:02 +0000 (18:11 +0200)]
Merge pull request #10439 from rgacogne/ddist-snmp-tsan-race
dnsdist: Fix a data race reported by TSAN in SNMP metrics
Remi Gacogne [Tue, 25 May 2021 14:35:13 +0000 (16:35 +0200)]
dnsdist: Skip some memory allocations in client mode
dnsdist does not use most of the configuration in client mode, mostly
caring about the settings needed to access the console, but
we still need to parse all directives and create objects due to the
way our Lua parsing works.
We don't, however, need to allocate the whole storage needed for
packet caches, for backend states or for the in-memory ring buffers.
This reduces the memory consumption of a console client to roughly 1 MB
from hundreds of them in some cases.
Otto [Tue, 25 May 2021 14:17:40 +0000 (16:17 +0200)]
Change nsec3-max-iterations default to 150
Otto Moerbeek [Tue, 25 May 2021 13:55:21 +0000 (15:55 +0200)]
Merge pull request #10433 from Habbie/rec-irrelevant-logging
rec: distinguish the various 'Removing irrelevant record' log lines
Otto Moerbeek [Tue, 25 May 2021 13:42:10 +0000 (15:42 +0200)]
Merge pull request #10326 from omoerbeek/docs-year
docs: Determine copyright upper bound year by code
Pieter Lexis [Tue, 25 May 2021 13:40:52 +0000 (15:40 +0200)]
Merge pull request #10304 from Habbie/auth-faq-protectsystem
auth faq: document a ProtectSystem=full implication
Remi Gacogne [Tue, 25 May 2021 13:37:59 +0000 (15:37 +0200)]
dnsdist: Fix a data race reported by TSAN in SNMP metrics
Unless I'm mistaken, the report (below) is a false positive since
`std::atomic<T>::operator T` is equivalent to `load()` and
`std::atomic<T>::operator=` to `store()`, but perhaps I'm missing
something.
Note that I could not reproduce the issue using clang++ 11.1.0's
TSAN, only with the one from g++ 11.1.0.
```
==================
WARNING: ThreadSanitizer: data race (pid=11157)
Atomic read of size 8 at 0x7b7400002580 by thread T2:
#0 __tsan_atomic64_load <null> (dnsdist+0x7a6eb0)
#1 std::atomic<double>::load(std::memory_order) const /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/atomic:250:2 (dnsdist+0x83c4da)
#2 pdns::stat_t_trait<double>::operator double() const /opt/project/pdns/dnsdistdist/./stat_t.hh:67:60 (dnsdist+0xd05b2e)
#3 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:54 (dnsdist+0xeceab8)
#4 netsnmp_call_next_handler <null> (libnetsnmpagent.so.30+0x2a0cc)
#5 SNMPAgent::handleSNMPQueryCB(int, boost::any&) /opt/project/pdns/dnsdistdist/snmp-agent.cc:96:13 (dnsdist+0xfb2417)
#6 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+0x8956e8)
#7 boost::function2<void, int, boost::any&>::operator()(int, boost::any&) const /usr/include/boost/function/function_template.hpp:768:14 (dnsdist+0xf9f13c)
#8 EpollFDMultiplexer::run(timeval*, int) /opt/project/pdns/dnsdistdist/epollmplexer.cc:176:7 (dnsdist+0xfd1feb)
#9 SNMPAgent::worker() /opt/project/pdns/dnsdistdist/snmp-agent.cc:141:24 (dnsdist+0xfb273f)
#10 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+0xf36079)
#11 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+0xf35f71)
#12 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+0xf35f1e)
#13 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+0xf35ec5)
#14 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+0xf35c29)
#15 <null> <null> (libstdc++.so.6+0xbbb2e)
Previous write of size 8 at 0x7b7400002580 by thread T18:
[failed to restore the stack]
Location is heap block of size 2304 at 0x7b7400001e00 allocated by main thread:
#0 operator new(unsigned long, std::align_val_t) <null> (dnsdist+0x7e8c57)
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/ext/new_allocator.h:108:31 (dnsdist+0xe6b4e2)
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/alloc_traits.h:436:20 (dnsdist+0xe6b430)
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/allocated_ptr.h:97:21 (dnsdist+0xe6b1d0)
#4 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<DownstreamState, std::allocator<DownstreamState>, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool>(DownstreamState*&, std::_Sp_alloc_shared_tag<std::allocator<DownstreamState> >, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/shared_ptr_base.h:675:19 (dnsdist+0xe6fb0a)
#5 std::__shared_ptr<DownstreamState, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<DownstreamState>, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool>(std::_Sp_alloc_shared_tag<std::allocator<DownstreamState> >, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/shared_ptr_base.h:1342:14 (dnsdist+0xe6fa7a)
#6 std::shared_ptr<DownstreamState>::shared_ptr<std::allocator<DownstreamState>, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool>(std::_Sp_alloc_shared_tag<std::allocator<DownstreamState> >, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/shared_ptr.h:359:4 (dnsdist+0xe6f99d)
#7 std::shared_ptr<DownstreamState> std::allocate_shared<DownstreamState, std::allocator<DownstreamState>, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool>(std::allocator<DownstreamState> const&, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/shared_ptr.h:705:14 (dnsdist+0xe6f8e0)
#8 std::shared_ptr<DownstreamState> std::make_shared<DownstreamState, ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool>(ComboAddress&, ComboAddress&, unsigned int&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/shared_ptr.h:721:14 (dnsdist+0xe6a726)
#9 setupLuaConfig(LuaContext&, bool, bool)::$_2::operator()(boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>) const /opt/project/pdns/dnsdistdist/dnsdist-lua.cc:356:11 (dnsdist+0xdf9166)
#10 _ZN10LuaContext6BinderIRZL14setupLuaConfigRS_bbE3$_2RKN5boost7variantINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEJSt13unordered_mapISB_NS5_IbJSB_St6vectorISt4pairIiSB_ESaISF_EESt8functionIFSt5tupleIJ7DNSNamettEERKSK_ttP9dnsheaderEEEEESt4hashISB_ESt8equal_toISB_ESaISE_IKSB_SS_EEEEEEEclIJRKNS4_8optionalIiEEEEEDTcldtdefpT8functiondtdefpT5paramspclsr3stdE7forwardIT_Efp_EEEDpOS1A_ /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1846:20 (dnsdist+0xdf89af)
#11 _ZN10LuaContext6BinderIRNS0_IRZL14setupLuaConfigRS_bbE3$_2RKN5boost7variantINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEJSt13unordered_mapISB_NS5_IbJSB_St6vectorISt4pairIiSB_ESaISF_EESt8functionIFSt5tupleIJ7DNSNamettEERKSK_ttP9dnsheaderEEEEESt4hashISB_ESt8equal_toISB_ESaISE_IKSB_SS_EEEEEEEERKNS4_8optionalIiEEEclIJEEEDTcldtdefpT8functiondtdefpT5paramspclsr3stdE7forwardIT_Efp_EEEDpOS1C_ /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1846:20 (dnsdist+0xdf8917)
#12 std::shared_ptr<DownstreamState> LuaContext::readIntoFunction<std::shared_ptr<DownstreamState>, LuaContext::Binder<LuaContext::Binder<setupLuaConfig(LuaContext&, bool, bool)::$_2&, boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > > const&>&, boost::optional<int> const&>&>(lua_State*, LuaContext::tag<std::shared_ptr<DownstreamState> >, LuaContext::Binder<LuaContext::Binder<setupLuaConfig(LuaContext&, bool, bool)::$_2&, boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > > const&>&, boost::optional<int> const&>&, int) /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1766:16 (dnsdist+0xdf88be)
#13 std::enable_if<IsOptional<boost::optional<int> >::value, std::shared_ptr<DownstreamState> >::type LuaContext::readIntoFunction<std::shared_ptr<DownstreamState>, LuaContext::Binder<setupLuaConfig(LuaContext&, bool, bool)::$_2&, boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > > const&>&, boost::optional<int> >(lua_State*, LuaContext::tag<std::shared_ptr<DownstreamState> >, LuaContext::Binder<setupLuaConfig(LuaContext&, bool, bool)::$_2&, boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > > const&>&, int, LuaContext::tag<boost::optional<int> >) /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1774:20 (dnsdist+0xdf8624)
#14 std::enable_if<!(IsOptional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > > >::value), std::shared_ptr<DownstreamState> >::type LuaContext::readIntoFunction<std::shared_ptr<DownstreamState>, setupLuaConfig(LuaContext&, bool, bool)::$_2&, boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int> >(lua_State*, LuaContext::tag<std::shared_ptr<DownstreamState> >, setupLuaConfig(LuaContext&, bool, bool)::$_2&, int, LuaContext::tag<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > > >, LuaContext::tag<boost::optional<int> >) /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1796:16 (dnsdist+0xdf848d)
#15 std::enable_if<(!(std::integral_constant<bool, false>::value)) && (!(std::is_void<bool>::value)), LuaContext::PushedObject>::type LuaContext::Pusher<std::shared_ptr<DownstreamState> (boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>), void>::callback2<setupLuaConfig(LuaContext&, bool, bool)::$_2&>(lua_State*, bool&&, int) /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2429:31 (dnsdist+0xdf83c2)
#16 LuaContext::PushedObject LuaContext::Pusher<std::shared_ptr<DownstreamState> (boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>), void>::callback<setupLuaConfig(LuaContext&, bool, bool)::$_2>(lua_State*, setupLuaConfig(LuaContext&, bool, bool)::$_2*, int) /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2398:20 (dnsdist+0xdf8169)
#17 std::enable_if<boost::has_trivial_destructor<setupLuaConfig(LuaContext&, bool, bool)::$_2>::value, LuaContext::PushedObject>::type LuaContext::Pusher<std::shared_ptr<DownstreamState> (boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>), void>::push<setupLuaConfig(LuaContext&, bool, bool)::$_2>(lua_State*, setupLuaConfig(LuaContext&, bool, bool)::$_2)::'lambda'(lua_State*)::operator()(lua_State*) const /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2327:20 (dnsdist+0xdf80c9)
#18 std::enable_if<boost::has_trivial_destructor<setupLuaConfig(LuaContext&, bool, bool)::$_2>::value, LuaContext::PushedObject>::type LuaContext::Pusher<std::shared_ptr<DownstreamState> (boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>), void>::push<setupLuaConfig(LuaContext&, bool, bool)::$_2>(lua_State*, setupLuaConfig(LuaContext&, bool, bool)::$_2)::'lambda'(lua_State*)::__invoke(lua_State*) /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2323:31 (dnsdist+0xdf8055)
#19 _init <null> (libluajit-5.1.so.2+0x9dd6)
#20 std::tuple<> LuaContext::call<std::tuple<> >(lua_State*, LuaContext::PushedObject) /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1413:29 (dnsdist+0xc9ae67)
#21 LuaContext::executeCode(std::istream&) /opt/project/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:267:9 (dnsdist+0xe6077a)
#22 setupLua(LuaContext&, bool, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/project/pdns/dnsdistdist/dnsdist-lua.cc:2599:10 (dnsdist+0xdf4ff3)
#23 main /opt/project/pdns/dnsdistdist/dnsdist.cc:2235:17 (dnsdist+0xf282ea)
Thread T2 'dnsdist/SNMP' (tid=11160, running) created by main thread at:
#0 pthread_create <null> (dnsdist+0x75f2d5)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xbbdb4)
#2 SNMPAgent::run() /opt/project/pdns/dnsdistdist/./snmp-agent.hh:36:14 (dnsdist+0xf3087c)
#3 main /opt/project/pdns/dnsdistdist/dnsdist.cc:2373:20 (dnsdist+0xf28f32)
Thread T18 'dnsdist/healthC' (tid=11176, running) created by main thread at:
#0 pthread_create <null> (dnsdist+0x75f2d5)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xbbdb4)
#2 main /opt/project/pdns/dnsdistdist/dnsdist.cc:2463:12 (dnsdist+0xf29769)
SUMMARY: ThreadSanitizer: data race (/opt/dnsdist-with-tsan/bin/dnsdist+0x7a6eb0) in __tsan_atomic64_load
```
Peter van Dijk [Tue, 25 May 2021 10:05:31 +0000 (12:05 +0200)]
Merge pull request #10432 from mind04/pdns-zonecache
auth: zone-cache improvements
Peter van Dijk [Mon, 24 May 2021 18:10:42 +0000 (20:10 +0200)]
auth ldap: note that master mode -is- supported
Peter van Dijk [Fri, 21 May 2021 17:00:46 +0000 (19:00 +0200)]
Merge pull request #10430 from mind04/pdns-wording
auth: use primary and secondary for pdnsutil and pdns_control commands
Peter van Dijk [Fri, 21 May 2021 13:45:54 +0000 (15:45 +0200)]
rec: distinguish the various 'Removing irrelevant record' log lines
Kees Monshouwer [Thu, 20 May 2021 14:17:13 +0000 (16:17 +0200)]
auth: replace or insert newly created zones in the zone cache
Kees Monshouwer [Thu, 20 May 2021 13:17:40 +0000 (15:17 +0200)]
auth: add new autosecondary domains to the zone cache