]> git.ipfire.org Git - thirdparty/pdns.git/log
thirdparty/pdns.git
3 years agoAdded reference to pdnsutil manpage
cranberry [Mon, 14 Jun 2021 20:41:52 +0000 (20:41 +0000)] 
Added reference to pdnsutil manpage

3 years agoMerge pull request #10393 from jsoref/faq-deleted-zones-do-not-propagate
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

3 years agoMerge pull request #10414 from 42wim/multipleip
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

3 years agoMerge pull request #10493 from Habbie/gh-secpoll-mask
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

3 years agoMerge pull request #10483 from omoerbeek/log-qtype-qclass
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

3 years agoin secpoll testing, do not start the auth 10493/head
Peter van Dijk [Mon, 14 Jun 2021 11:33:56 +0000 (13:33 +0200)] 
in secpoll testing, do not start the auth

3 years agoMerge pull request #10492 from rgacogne/fix-qtype-getname-speedtest
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()

3 years agoupdate default in docs, thanks @ncartron
Peter van Dijk [Sun, 13 Jun 2021 16:22:19 +0000 (18:22 +0200)] 
update default in docs, thanks @ncartron

3 years agospeedtest: Fix QType::getName() renamed to QType::toString() 10492/head
Remi Gacogne [Sat, 12 Jun 2021 15:43:15 +0000 (17:43 +0200)] 
speedtest: Fix QType::getName() renamed to QType::toString()

3 years agoMerge pull request #10441 from rgacogne/ddist-memory-client-mode
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

3 years agodnsdist: Remove a default param in the definition of DownstreamState's ctor 10441/head
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

3 years agoMerge pull request #10486 from Habbie/auth-4.5.0-beta1-docs-secpoll
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

3 years agoauth-4.5.0-beta1: docs+secpoll 10486/head
Peter van Dijk [Wed, 9 Jun 2021 08:50:25 +0000 (10:50 +0200)] 
auth-4.5.0-beta1: docs+secpoll

3 years agoMerge pull request #10481 from omoerbeek/rec-prep-4.5.2
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

3 years agoReformat 10483/head
Otto [Fri, 16 Apr 2021 13:30:15 +0000 (15:30 +0200)] 
Reformat

3 years agoImplement log methods for QType and QClass
Otto [Mon, 12 Apr 2021 09:51:36 +0000 (11:51 +0200)] 
Implement log methods for QType and QClass

3 years agoMerge pull request #10467 from omoerbeek/rec-openbsd-kqueue
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

3 years agoMerge branch 'rec-prep-4.4.4' into rec-prep-4.5.2 10481/head
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

3 years agoMention correct version now that this is backported.
Otto [Mon, 7 Jun 2021 07:39:20 +0000 (09:39 +0200)] 
Mention correct version now that this is backported.

3 years agoPrep for 4.5.2, no secpoll change yet since it will conflict with the rec-4.4.4 one.
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.

3 years agoMerge pull request #10437 from Habbie/ldap-docs-master-yes auth-4.6.0-alpha0
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

3 years agoPrep for rec-4.4.4
Otto [Mon, 7 Jun 2021 08:24:07 +0000 (10:24 +0200)] 
Prep for rec-4.4.4

3 years agoMerge pull request #10469 from Habbie/dnsdist-no-dnsdist-table auth-4.5.0-beta1
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

3 years agoMerge pull request #10463 from Habbie/lua-forward-reverse
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]

3 years agoadd filterForward function, plus initialiser helper in newNMG 10463/head
Peter van Dijk [Tue, 1 Jun 2021 13:54:02 +0000 (15:54 +0200)] 
add filterForward function, plus initialiser helper in newNMG

3 years agoauth LUA testing: test the exception feature
Peter van Dijk [Mon, 31 May 2021 15:15:14 +0000 (17:15 +0200)] 
auth LUA testing: test the exception feature

3 years agoexpand LUA createForward/Reverse testing
Peter van Dijk [Mon, 31 May 2021 10:51:18 +0000 (12:51 +0200)] 
expand LUA createForward/Reverse testing

3 years agoauthtests.py: fix rcode comparison and reporting
Peter van Dijk [Mon, 31 May 2021 14:46:22 +0000 (16:46 +0200)] 
authtests.py: fix rcode comparison and reporting

3 years agorename suffix to format
Peter van Dijk [Fri, 28 May 2021 21:14:21 +0000 (23:14 +0200)] 
rename suffix to format

3 years agoMerge pull request #10470 from mind04/pdns-auth-py
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

3 years agoauth: fix the nobackend tests 10470/head
Kees Monshouwer [Sun, 6 Jun 2021 11:01:12 +0000 (13:01 +0200)] 
auth: fix the nobackend tests

3 years agoauth: disable zone-cache for the regression.auth-py tests
Kees Monshouwer [Sat, 5 Jun 2021 23:33:03 +0000 (01:33 +0200)] 
auth: disable zone-cache for the regression.auth-py tests

3 years agodnsdist: remove dnsdist.* lookup fallback 10469/head
Peter van Dijk [Sat, 5 Jun 2021 16:57:56 +0000 (18:57 +0200)] 
dnsdist: remove dnsdist.* lookup fallback

3 years agoMerge pull request #10426 from omoerbeek/rec-refresh-ns-and-addr-fix
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

3 years agoSwitch OpenBSD to kqueue mplexer; untested 10467/head
Otto [Fri, 4 Jun 2021 14:02:35 +0000 (16:02 +0200)] 
Switch OpenBSD to kqueue mplexer; untested

3 years agomake ttl value's origin clear 10426/head
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>
3 years agoAdd testcase for "almost expired".
Otto [Fri, 4 Jun 2021 11:27:44 +0000 (13:27 +0200)] 
Add testcase for "almost expired".

3 years agoMerge pull request #10450 from pieterlexis/modernize-ax_check_sign
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

3 years agoMerge pull request #10454 from mind04/pdns-tiny-getalldomains
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()

3 years agoMerge pull request #10466 from tuxis-ie/fix_issue_10465
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.

3 years agoadd markup 10466/head
Peter van Dijk [Thu, 3 Jun 2021 14:57:18 +0000 (16:57 +0200)] 
add markup

3 years agoMerge pull request #10461 from mind04/pdns-createdomain
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()

3 years agoMerge pull request #10452 from cmouse/doc-unknown-rr
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

3 years agoauth: document and check backend zone-cache capability 10454/head
Kees Monshouwer [Thu, 3 Jun 2021 06:44:38 +0000 (08:44 +0200)] 
auth: document and check backend zone-cache capability

3 years agoUpdate with @Habbie's suggestions
Mark Schouten [Thu, 3 Jun 2021 11:59:37 +0000 (13:59 +0200)] 
Update with @Habbie's suggestions

3 years agoUpdate documentation to reflect changes in default-soa-content.
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.

3 years agoMerge pull request #10460 from rgacogne/rec-referral-from-parent-on-ds
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

3 years agoauth: simplify createDomain() 10461/head
Kees Monshouwer [Mon, 31 May 2021 21:25:13 +0000 (23:25 +0200)] 
auth: simplify createDomain()

3 years agoMerge pull request #10419 from rgacogne/ddist-fix-edns-notify
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

3 years agorec: Cleaner way of handling a referral to a child zone for DS queries 10460/head
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

3 years agorec: Also test for the "referral to child on DS query" case in a Secure zone
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

3 years agoBetter approach: just never consider root records "almost expired".
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.

3 years agorec: Fix a typo in a comment
Remi Gacogne [Wed, 2 Jun 2021 13:02:42 +0000 (15:02 +0200)] 
rec: Fix a typo in a comment

3 years agorec: Add a unit test for the "referral to child on DS query" case
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

3 years agoMerge pull request #10445 from rgacogne/rec-typo-edns-prometheus-metric
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

3 years agoMerge pull request #10459 from Habbie/auth-py-tests
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

3 years agoUpdate AX_CHECK_SIGN for autoconf 2.71 10450/head
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).

3 years agoMerge pull request #10407 from zeha/bullseye
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

3 years agoMerge pull request #10462 from pieterlexis/update-boost-m4
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

3 years agoauth LUA testing: allow 2 seconds for health checking to run 10459/head
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

3 years agoUpdate boost.m4 10462/head
Pieter Lexis [Tue, 1 Jun 2021 07:12:15 +0000 (09:12 +0200)] 
Update boost.m4

3 years agorec: Don't follow referral from the parent to the child for DS queries
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
```

3 years agocircleci: test auth-py
Peter van Dijk [Mon, 15 Feb 2021 13:20:15 +0000 (14:20 +0100)] 
circleci: test auth-py

3 years agoauth testing: enable svc-autohints when testing autohints
Peter van Dijk [Mon, 31 May 2021 13:00:59 +0000 (15:00 +0200)] 
auth testing: enable svc-autohints when testing autohints

3 years agoauth: enable zone cache by default
Peter van Dijk [Wed, 26 May 2021 10:50:14 +0000 (12:50 +0200)] 
auth: enable zone cache by default

3 years agoauth: test with a variety of zone-cache-refresh-interval flavors
Kees Monshouwer [Wed, 26 May 2021 21:43:52 +0000 (23:43 +0200)] 
auth: test with a variety of zone-cache-refresh-interval flavors

3 years agoauth: implement getAllDomains() in geoip backend
Kees Monshouwer [Wed, 26 May 2021 21:32:12 +0000 (23:32 +0200)] 
auth: implement getAllDomains() in geoip backend

3 years agoauth: add dns-get-all-domains in lua2 backend script
Kees Monshouwer [Wed, 26 May 2021 20:30:56 +0000 (22:30 +0200)] 
auth: add dns-get-all-domains in lua2 backend script

3 years agoauth: fix possibe crash in getAllDomains()
Kees Monshouwer [Wed, 26 May 2021 18:41:08 +0000 (20:41 +0200)] 
auth: fix possibe crash in getAllDomains()

3 years agoMerge pull request #10455 from Habbie/builder-yum-upgrade
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

3 years agobuilder rpmbuild: run yum upgrade first 10455/head
Peter van Dijk [Thu, 27 May 2021 16:04:46 +0000 (18:04 +0200)] 
builder rpmbuild: run yum upgrade first

3 years agoMerge pull request #10434 from pieterlexis/upgrade-local-ipv6
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

3 years agoFix SQL highlighting in pgsql docs 10434/head
Pieter Lexis [Fri, 21 May 2021 13:36:54 +0000 (15:36 +0200)] 
Fix SQL highlighting in pgsql docs

3 years agoCorrectly update local-ipv6 deprecation info
Pieter Lexis [Fri, 21 May 2021 13:32:41 +0000 (15:32 +0200)] 
Correctly update local-ipv6 deprecation info

3 years agoMerge pull request #10376 from Habbie/auth-4.5.0-alpha1-docs
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

3 years agoupdate release date; mention new zone cache feature 10376/head
Peter van Dijk [Thu, 27 May 2021 08:26:56 +0000 (10:26 +0200)] 
update release date; mention new zone cache feature

3 years agodocs: Document unknown record type in supported types 10452/head
Aki Tuomi [Wed, 26 May 2021 17:37:26 +0000 (20:37 +0300)] 
docs: Document unknown record type in supported types

3 years agoMerge pull request #10398 from dmachard/doc-dnsdist-eol
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

3 years agoMerge pull request #10417 from omoerbeek/rec-docs-PolicyEvent.appliedPolicy
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

3 years agoMerge pull request #10416 from omoerbeek/redundant-checks-updateCacheFromRecords
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.

3 years agoMerge pull request #10396 from omoerbeek/rec-log-levels
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

3 years agodoc formatting/parsing fixes
Peter van Dijk [Wed, 26 May 2021 11:00:03 +0000 (13:00 +0200)] 
doc formatting/parsing fixes

3 years agochangelog and secpoll for auth-4.5.0-alpha1
Peter van Dijk [Mon, 10 May 2021 09:50:59 +0000 (11:50 +0200)] 
changelog and secpoll for auth-4.5.0-alpha1

3 years agorec: Fix a typo in the prometheus "edns-ping-mismatches" metric 10445/head
Remi Gacogne [Wed, 26 May 2021 08:59:50 +0000 (10:59 +0200)] 
rec: Fix a typo in the prometheus "edns-ping-mismatches" metric

3 years agoMerge pull request #10440 from omoerbeek/rec-nsec3-iter-default
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

3 years agoMerge pull request #10342 from pieterlexis/svcb-rename-echconfig
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

3 years agoMerge pull request #10423 from rgacogne/ddist-tcp-max-connections-stats-race
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

3 years agoMerge pull request #10439 from rgacogne/ddist-snmp-tsan-race
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

3 years agodnsdist: Skip some memory allocations in client mode
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.

3 years agoChange nsec3-max-iterations default to 150 10440/head
Otto [Tue, 25 May 2021 14:17:40 +0000 (16:17 +0200)] 
Change nsec3-max-iterations default to 150

3 years agoMerge pull request #10433 from Habbie/rec-irrelevant-logging
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

3 years agoMerge pull request #10326 from omoerbeek/docs-year
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

3 years agoMerge pull request #10304 from Habbie/auth-faq-protectsystem
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

3 years agodnsdist: Fix a data race reported by TSAN in SNMP metrics 10439/head
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
```

3 years agoMerge pull request #10432 from mind04/pdns-zonecache auth-4.5.0-alpha1
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

3 years agoauth ldap: note that master mode -is- supported 10437/head
Peter van Dijk [Mon, 24 May 2021 18:10:42 +0000 (20:10 +0200)] 
auth ldap: note that master mode -is- supported

3 years agoMerge pull request #10430 from mind04/pdns-wording
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

3 years agorec: distinguish the various 'Removing irrelevant record' log lines 10433/head
Peter van Dijk [Fri, 21 May 2021 13:45:54 +0000 (15:45 +0200)] 
rec: distinguish the various 'Removing irrelevant record' log lines

3 years agoauth: replace or insert newly created zones in the zone cache 10432/head
Kees Monshouwer [Thu, 20 May 2021 14:17:13 +0000 (16:17 +0200)] 
auth: replace or insert newly created zones in the zone cache

3 years agoauth: add new autosecondary domains to 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