]>
git.ipfire.org Git - thirdparty/pdns.git/log
Josh Soref [Thu, 24 Apr 2025 14:35:00 +0000 (10:35 -0400)]
Remove period
Remi Gacogne [Thu, 24 Apr 2025 13:52:41 +0000 (15:52 +0200)]
Merge pull request #15439 from nokia/master
dnsdist: Support DSCP marking towards downstream server
Remi Gacogne [Thu, 24 Apr 2025 09:22:38 +0000 (11:22 +0200)]
Merge pull request #15461 from rgacogne/ddist-fix-concurrency-ci
dnsdist: Limit the number of concurrent build jobs to 4 on CI
Miod Vallat [Thu, 24 Apr 2025 09:01:22 +0000 (11:01 +0200)]
Merge pull request #15460 from miodvallat/further_away
Boring trivial dead code removal
Remi Gacogne [Thu, 24 Apr 2025 08:45:56 +0000 (10:45 +0200)]
dnsdist: Limit the number of concurrent build jobs to 4 on CI
We are experiencing a lot of build failures on GH actions when
building with `meson` and `ASAN+UBSAN`, likely running out of
memory. We could try to be smarter and only reduce the concurrency
when building with `ASAN+UBSAN`, but for now let's see if it makes
the failures go away.
Miod Vallat [Thu, 24 Apr 2025 08:24:48 +0000 (10:24 +0200)]
Remove never provided argument of DNSPacket::setRemote().
Remi Gacogne [Thu, 24 Apr 2025 07:38:52 +0000 (09:38 +0200)]
Merge pull request #15376 from rgacogne/ddist-tcp-mitig
dnsdist: Add mitigations against misbehaving TCP/TLS clients
Remi Gacogne [Thu, 24 Apr 2025 07:16:21 +0000 (09:16 +0200)]
Merge pull request #15433 from rgacogne/ddist-rings-unit-tests-speed
dnsdist: Small optimization in the Rings unit tests
Miod Vallat [Thu, 24 Apr 2025 05:36:50 +0000 (07:36 +0200)]
Merge pull request #15457 from MatthiasValvekens/docs/dnsupdate-policy-fix
Rearrange confusingly ordered docs on DNS update checks
Miod Vallat [Thu, 24 Apr 2025 05:00:48 +0000 (07:00 +0200)]
Merge pull request #15441 from miodvallat/zonezilla
ZoneName, step 2
Matthias Valvekens [Wed, 23 Apr 2025 19:50:35 +0000 (21:50 +0200)]
Rearrange confusingly ordered docs on DNS update checks
Structure-wise, the paragraph on the interaction between ``allow-dnsupdate-from``, ``ALLOW-DNSUPDATE-FROM`` and ``TSIG-ALLOW-DNSUPDATE`` wound up in the section of the document on Lua update policies.
That seems unintentional, and it's additionally confusing because the description of the Lua update policy setting explicitly mentions that it causes all other enforcement mechanisms to be disabled. This change attempts to correct that.
Miod Vallat [Wed, 23 Apr 2025 14:47:36 +0000 (16:47 +0200)]
Merge pull request #15390 from miodvallat/the_misinterpretation_of_silence_and_its_disastrous_consequences
[auth] Log DNS packet parse errors
Miod Vallat [Wed, 23 Apr 2025 12:20:52 +0000 (14:20 +0200)]
Simplify !a.isPartOf(b) && a != b constructs.
By design, a.isPartOf(a) is always true.
Therefore, if a and b compare equal, !a.isPartOf(b) and a != b are both
false and the result of the expression is false, but also
!a.isPartOf(b).
If not, then a != b is true and the result of the expression is
!a.isPartOf(b).
Boolean algebra is hard, let's go shopping.
Miod Vallat [Wed, 23 Apr 2025 12:01:48 +0000 (14:01 +0200)]
Review improvements.
Miod Vallat [Wed, 16 Apr 2025 15:35:39 +0000 (17:35 +0200)]
clang-tidy all the things!
Miod Vallat [Wed, 16 Apr 2025 08:40:34 +0000 (10:40 +0200)]
Remove a few wire-related interfaces from ZoneName.
This should prevent accidental use, by requiring an explicit conversion to
DNSName and thinking about what we are doing here.
Miod Vallat [Wed, 16 Apr 2025 08:15:18 +0000 (10:15 +0200)]
Stricter ZoneName usage.
While ZoneName is still equivalent to DNSName, this commit turns it into a
separate class (with the same interface as DNSName), and requires conversion
between these classes to be explicit, so that we can recognize the
DNSName/ZoneName boundaries and change them as needs arise.
It is intended for these explicit conversion requirements to be only temporary,
which would allow all these ".operator const DNSName&()" calls to get removed
eventually, once the dust settles and our trust it proper use of ZoneName versus
DNSName is strong enough.
Miod Vallat [Wed, 23 Apr 2025 14:02:15 +0000 (16:02 +0200)]
Merge pull request #15451 from miodvallat/after_before_or_between_choose_one
Better behaviour with non-working DNSSEC configurations
Miod Vallat [Thu, 3 Apr 2025 12:55:23 +0000 (14:55 +0200)]
Log, at debug level, DNS packet parse errors.
Fixes #14513
Miod Vallat [Wed, 23 Apr 2025 13:20:26 +0000 (15:20 +0200)]
Merge pull request #15299 from miodvallat/all_inclusive
API: allow fetching disabled RRsets
Miod Vallat [Wed, 23 Apr 2025 13:19:18 +0000 (15:19 +0200)]
Merge pull request #15381 from miodvallat/call_off_the_search
[auth] Mention which backends support search operations
Miod Vallat [Wed, 23 Apr 2025 13:18:27 +0000 (15:18 +0200)]
Update pdns/packethandler.cc
No need to complain about the lack of DNSSEC if NSEC3 narrow mode.
Co-authored-by: Peter van Dijk <peter.van.dijk@powerdns.com>
Miod Vallat [Wed, 23 Apr 2025 12:41:15 +0000 (14:41 +0200)]
Apply suggestions from code review
Tweak log messages a little.
Co-authored-by: Peter van Dijk <peter.van.dijk@powerdns.com>
Miod Vallat [Wed, 23 Apr 2025 12:33:01 +0000 (14:33 +0200)]
Better wording
Co-authored-by: Peter van Dijk <peter.van.dijk@powerdns.com>
Miod Vallat [Wed, 23 Apr 2025 12:29:17 +0000 (14:29 +0200)]
No need to pass a DNSPacket to APILookup().
Miod Vallat [Fri, 18 Apr 2025 11:00:21 +0000 (13:00 +0200)]
Do not add NSEC* hashes if the backend isn't able to do so.
Miod Vallat [Fri, 18 Apr 2025 10:59:14 +0000 (12:59 +0200)]
Fail more gracefully in default getBeforeAndAfterNamesAbsolute.
If invoked on a non-DNSSEC-capable backend, it should fail with a visible
error message rather than bluntly abort().
Miod Vallat [Fri, 18 Apr 2025 06:52:35 +0000 (08:52 +0200)]
Merge pull request #15448 from Habbie/lmdb-v5-test
auth LMDB: test "upgrade" from v5 too
Miod Vallat [Fri, 18 Apr 2025 06:11:08 +0000 (08:11 +0200)]
Allow binary files for lmdb test-assets.
Peter van Dijk [Thu, 17 Apr 2025 20:01:13 +0000 (22:01 +0200)]
bump one DomainInfo object to class v1
Peter van Dijk [Tue, 15 Apr 2025 12:15:20 +0000 (14:15 +0200)]
add v5 base for schema upgrade test
Miod Vallat [Thu, 17 Apr 2025 14:01:39 +0000 (16:01 +0200)]
Merge pull request #15393 from miodvallat/opcode_red
[auth] Rework PacketHandler::doQuestion()
Peter van Dijk [Thu, 17 Apr 2025 11:05:27 +0000 (13:05 +0200)]
Merge pull request #15434 from Habbie/auth-docs-no-sysv
auth docs: stop mentioning SysV init script, it has been gone for a while
Miod Vallat [Thu, 17 Apr 2025 10:51:36 +0000 (12:51 +0200)]
Merge pull request #15443 from miodvallat/ruhe
Add a quiet option to pdnsutil
Miod Vallat [Thu, 17 Apr 2025 06:10:39 +0000 (08:10 +0200)]
Use pdnsutil -q to get clean output.
Miod Vallat [Thu, 17 Apr 2025 06:07:43 +0000 (08:07 +0200)]
Add a global quiet option to pdnsutil to silence some messaces.
Otto Moerbeek [Wed, 16 Apr 2025 07:33:55 +0000 (09:33 +0200)]
Merge pull request #15436 from omoerbeek/dnsdist-unused
dnsdist: a few more cases of potentially unused args
Otto Moerbeek [Wed, 16 Apr 2025 07:33:41 +0000 (09:33 +0200)]
Merge pull request #15410 from omoerbeek/rec-regr-moduledir
rec regr tests: allow to set moduledir using an env var
Otto Moerbeek [Wed, 16 Apr 2025 07:33:22 +0000 (09:33 +0200)]
Merge pull request #15437 from omoerbeek/rec-meson-sysconfdir-quote
rec: [meson] strip quotes meson adds from SYSCONFDIR (and two other config values)
Oliver Chen [Wed, 16 Apr 2025 06:17:26 +0000 (06:17 +0000)]
Fix CodeQL: move code up to avoid usage after std::move
Oliver Chen [Wed, 16 Apr 2025 05:28:29 +0000 (05:28 +0000)]
Add dscp/DSCP for spell check and fix clang-tidy
Oliver Chen [Wed, 16 Apr 2025 03:36:05 +0000 (03:36 +0000)]
Support DSCP marking towards downstream server
Otto Moerbeek [Tue, 15 Apr 2025 14:25:02 +0000 (16:25 +0200)]
Tidy
Remi Gacogne [Tue, 15 Apr 2025 14:40:15 +0000 (16:40 +0200)]
dnsdist: Fix typos in the configuration spotted by Miod
Remi Gacogne [Tue, 15 Apr 2025 14:39:43 +0000 (16:39 +0200)]
dnsdist: Refactor some very similar functions in the TCP limits code
Remi Gacogne [Tue, 15 Apr 2025 14:39:17 +0000 (16:39 +0200)]
dnsdist: Ignore port mask for TCP limits if the v4 mask != 32
Remi Gacogne [Tue, 15 Apr 2025 14:38:52 +0000 (16:38 +0200)]
dnsdist: Use a power of two values for the number of shards, as suggested by Otto
Otto Moerbeek [Tue, 15 Apr 2025 13:36:26 +0000 (15:36 +0200)]
rec: strip quotes meson adds from SYSCONFDIR (and two other config values)
Otto Moerbeek [Tue, 15 Apr 2025 13:09:27 +0000 (15:09 +0200)]
dnsdist: a few more cases of potentiually unused args
Peter van Dijk [Tue, 15 Apr 2025 09:48:30 +0000 (11:48 +0200)]
auth docs: stop mentioning SysV init script, it has been gone for a while
Remi Gacogne [Tue, 15 Apr 2025 09:25:37 +0000 (11:25 +0200)]
Merge pull request #15388 from nokia/master
dnsdist: Enhancement to support rule action for query timeout case
Remi Gacogne [Tue, 15 Apr 2025 08:57:57 +0000 (10:57 +0200)]
dnsdist: Small optimization in the Rings unit tests
Calling `BOOST_CHECK_*` is quite expensive, so this commit limits
the number of these calls done in a tight loop.
Otto Moerbeek [Mon, 14 Apr 2025 16:12:46 +0000 (18:12 +0200)]
Merge pull request #15377 from omoerbeek/dnsdist-meson-alt-libssl
[meson] Allow alternate location for libssl
Otto Moerbeek [Mon, 14 Apr 2025 15:12:15 +0000 (17:12 +0200)]
Use link_args instead of adding to global link arguments
Miod Vallat [Thu, 20 Mar 2025 14:15:35 +0000 (15:15 +0100)]
Allow disabled records to be fetched from the API.
Fixes #11473
Miod Vallat [Thu, 20 Mar 2025 13:35:00 +0000 (14:35 +0100)]
Add an API-specific lookup method to DNSBackend.
This method, APILookup(), behaves similarly to lookup() but allows
disabled records to be returned to the caller. Backends with no support
for disabled records (bind, geoip, ldap, lua2, pipe, tinydns) implement
it as a by-default wrapper over lookup(). Other backends override with
their own processing.
SQL-style backends use distinct queries, api-id-query and
api-any-id-query, so as not to penalize non-API workloads.
Remi Gacogne [Mon, 14 Apr 2025 14:08:10 +0000 (16:08 +0200)]
Merge pull request #15429 from rgacogne/rec-fix-typo-test_FWCatz
rec: Fix a typo in the FWCatz regression tests
Otto Moerbeek [Fri, 28 Mar 2025 09:55:14 +0000 (10:55 +0100)]
Allow alternate location for libssl
Needed at least on OpenBSD to get boringssl for dnsdist with quiche,
but other platforms might benefit as well
Remi Gacogne [Mon, 14 Apr 2025 13:46:00 +0000 (15:46 +0200)]
Merge pull request #15426 from rgacogne/ddist-document-how-to-remove-ecs
dnsdist: Document that `SetDisableECSAction` doesn't remove existing values
Remi Gacogne [Mon, 14 Apr 2025 13:45:42 +0000 (15:45 +0200)]
Merge pull request #15428 from rgacogne/ddist-resume-health-checks
dnsdist: Mention the lazy health-check option more often in the docs
Miod Vallat [Mon, 14 Apr 2025 13:33:27 +0000 (15:33 +0200)]
Merge pull request #15421 from miodvallat/a_zone_by_any_other_name
Introduce ZoneName
Remi Gacogne [Mon, 14 Apr 2025 13:22:01 +0000 (15:22 +0200)]
rec: Fix a typo in the FWCatz regression tests
Observed on GH actions:
```
test_FWCatz.py:353:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <test_FWCatz.FWCatzXFRRecursorTest testMethod=testFWCatz>
expected = {'forward_zones': [{'forwarders': ['1.2.3.4'], 'zone': 'c.'}]}
def checkForwards(self, expected):
attempts = 0
tries = 10
ex = None
while attempts < tries:
try:
with open('configs/' + self._confdir + '/catzone.forward.catz.') as file:
reality = yaml.safe_load(file);
if expected == reality:
return
except Exception as e:
ex = e
attempts = attempts + 1
> sleep(0.1)
E NameError: name 'sleep' is not defined
```
Remi Gacogne [Mon, 14 Apr 2025 13:07:11 +0000 (15:07 +0200)]
dnsdist: Mention the lazy health-check option more often in the docs
Remi Gacogne [Mon, 14 Apr 2025 12:43:35 +0000 (14:43 +0200)]
dnsdist: Document that `SetDisableECSAction` doesn't remove existing values
And document a possible work-around.
Oliver Chen [Mon, 14 Apr 2025 12:03:28 +0000 (12:03 +0000)]
Fix clang-tidy warning of unnecessary std::move() for const ref
Peter van Dijk [Mon, 14 Apr 2025 09:22:27 +0000 (11:22 +0200)]
Merge pull request #15413 from romeroalx/pin-wheel
Pin the version of the python packages wheel and setuptools-git
pacnal [Mon, 14 Apr 2025 08:51:24 +0000 (16:51 +0800)]
Merge branch 'master' into master
Remi Gacogne [Mon, 14 Apr 2025 08:45:53 +0000 (10:45 +0200)]
Merge pull request #15418 from rgacogne/ddist-fix-tcp-only-cache
dnsdist: Fix cache lookup for unavailable TCP-only backends
Remi Gacogne [Mon, 14 Apr 2025 07:42:50 +0000 (09:42 +0200)]
dnsdist: Apply Otto's suggestions
Remi Gacogne [Mon, 14 Apr 2025 07:21:49 +0000 (09:21 +0200)]
Merge pull request #15423 from rgacogne/ddist-cache-tc-really
dnsdist: Add an option to cache truncated answers
Miod Vallat [Fri, 11 Apr 2025 16:37:01 +0000 (18:37 +0200)]
clang-tidy the previous clang-tidy run
Remi Gacogne [Fri, 11 Apr 2025 15:05:31 +0000 (17:05 +0200)]
Merge pull request #15355 from rgacogne/dnsdist-better-handling-exception-when-parsing-yaml
dnsdist: Better handling of exceptions raised during YAML parsing
Miod Vallat [Fri, 11 Apr 2025 13:58:11 +0000 (15:58 +0200)]
clang-tidy the previous clang-tidy run
Remi Gacogne [Fri, 11 Apr 2025 13:48:27 +0000 (15:48 +0200)]
dnsdist: Update outdated comment, as suggested by Miod (thanks!)
Miod Vallat [Fri, 11 Apr 2025 09:29:05 +0000 (11:29 +0200)]
Appease clang-tidy.
Miod Vallat [Fri, 11 Apr 2025 07:29:05 +0000 (09:29 +0200)]
Introduce ZoneName.
This is currently equivalent to DNSName and is intended to be used for,
well, zone names. This will allow specific processing later, and
currently make the areas where such names are used more visible.
This commit is mostly mechanical and introduces type changes in various
API and data fields.
Remi Gacogne [Thu, 10 Apr 2025 15:05:21 +0000 (17:05 +0200)]
dnsdist: Add an option to cache truncated answers
Remi Gacogne [Fri, 11 Apr 2025 12:12:15 +0000 (14:12 +0200)]
Merge pull request #15420 from rgacogne/ddist-add-binding-for-incoming-interface
dnsdist: Add Lua bindings for the incoming network interface
Remi Gacogne [Fri, 11 Apr 2025 11:49:26 +0000 (13:49 +0200)]
Merge pull request #15419 from rgacogne/ddist-cache-tc
dnsdist: Refactor the packet cache settings
Remi Gacogne [Fri, 11 Apr 2025 10:41:30 +0000 (12:41 +0200)]
dnsdist: Fix clang-tidy warning introduced by fixing another clang-tidy warning introduced by..
Remi Gacogne [Fri, 11 Apr 2025 07:44:16 +0000 (09:44 +0200)]
dnsdist: Make clang-tidy happy by passing the settings by value
Remi Gacogne [Fri, 4 Apr 2025 10:08:45 +0000 (12:08 +0200)]
dnsdist: Refactor the packet cache settings
Remi Gacogne [Fri, 11 Apr 2025 10:07:01 +0000 (12:07 +0200)]
dnsdist: Fix clang-tidy's warning
Remi Gacogne [Fri, 11 Apr 2025 09:35:08 +0000 (11:35 +0200)]
Add VRF to the list of allowed words
Remi Gacogne [Fri, 11 Apr 2025 09:28:51 +0000 (11:28 +0200)]
dnsdist: Add Lua bindings for the incoming network interface
This is useful in Virtual Routing and Forwarding (VRF) environments
where the destination IP address might not be enough to identify the VRF.
Oliver Chen [Thu, 10 Apr 2025 14:00:55 +0000 (14:00 +0000)]
Document usage of timeout response rule and add defensive checks
Removed unnecessary packet buffer generation that is no value
Remi Gacogne [Thu, 10 Apr 2025 14:04:04 +0000 (16:04 +0200)]
dnsdist: Add a regression test for cache lookups w/ unavailable cache-only backends
Remi Gacogne [Thu, 10 Apr 2025 13:53:08 +0000 (15:53 +0200)]
Merge pull request #15416 from rgacogne/ddist-fix-quic-sni-meson
dnsdist: Fix two issues when building with `meson`
Remi Gacogne [Thu, 10 Apr 2025 13:49:51 +0000 (15:49 +0200)]
dnsdist: Fix cache lookup for unavailable TCP-only backends
Remi Gacogne [Thu, 10 Apr 2025 11:02:39 +0000 (13:02 +0200)]
dnsdist: Fix building with OpenSSL providers enabled
Remi Gacogne [Thu, 10 Apr 2025 10:51:32 +0000 (12:51 +0200)]
dnsdist: Fix the version check for OpenSSL when providers are enabled
Remi Gacogne [Thu, 10 Apr 2025 10:50:32 +0000 (12:50 +0200)]
dnsdist: Properly detect Quiche functions with meson
We forgot to check for the availability of `quiche_conn_server_name`
when we migrated from `autotools` to `meson`.
Remi Gacogne [Thu, 10 Apr 2025 10:13:10 +0000 (12:13 +0200)]
Merge pull request #15387 from rgacogne/ddist-share-stek-context-identical-frontends
dnsdist: Share tickets key between identical frontends created via YAML
Remi Gacogne [Thu, 10 Apr 2025 09:13:49 +0000 (11:13 +0200)]
dnsdist: Document how STEKs are managed in frontend groups
Miod Vallat [Thu, 10 Apr 2025 09:07:48 +0000 (11:07 +0200)]
Merge pull request #15415 from miodvallat/web_disservice
[auth] minor web service cleanup
Miod Vallat [Thu, 10 Apr 2025 05:59:40 +0000 (07:59 +0200)]
Replace the two lists of metadata keywords with a single list of pairs.
This removes the need for a second search in order to figure out whether
the metadata is write-protected from the API.
Miod Vallat [Thu, 10 Apr 2025 05:51:18 +0000 (07:51 +0200)]
Clean metadata lists.
- remove duplicate entries
- remove leftover mention of API-RECTIFY in readonly list.
Remi Gacogne [Thu, 10 Apr 2025 08:33:14 +0000 (10:33 +0200)]
Merge pull request #15407 from rgacogne/ddist-fix-doh3-without-doh
dnsdist: Fix compilation with DoH3 enabled and DoH disabled
Miod Vallat [Thu, 10 Apr 2025 05:49:39 +0000 (07:49 +0200)]
Sort metada name lists.
romeroalx [Wed, 9 Apr 2025 13:03:36 +0000 (15:03 +0200)]
pin version of wheel and setuptools-git packages