]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
18 months agodistro/pkg/deb: silence irrelevant lintian warnings
Jakub Ružička [Thu, 6 Jun 2024 14:50:26 +0000 (16:50 +0200)] 
distro/pkg/deb: silence irrelevant lintian warnings

18 months agodistro/pkg/deb: update debian/copyright entries
Jakub Ružička [Thu, 6 Jun 2024 14:48:53 +0000 (16:48 +0200)] 
distro/pkg/deb: update debian/copyright entries

18 months agodistro/pkg/deb: fix incorrect formatting
Jakub Ružička [Thu, 6 Jun 2024 14:48:53 +0000 (16:48 +0200)] 
distro/pkg/deb: fix incorrect formatting

18 months agodefer: add new KRU instance and async queues docs-develop-rrl-8r8r8r/deployments/4324
Lukáš Ondráček [Mon, 10 Jun 2024 18:19:10 +0000 (20:19 +0200)] 
defer: add new KRU instance and async queues

18 months agoetc/: add the fresh DNSSEC root key "KSK-2024" already docs-develop-ksk-qmeiye/deployments/4323
Vladimír Čunát [Mon, 10 Jun 2024 14:05:41 +0000 (16:05 +0200)] 
etc/: add the fresh DNSSEC root key "KSK-2024" already

The key still won't be used for some time, two years maybe,
but I think it's better to preemptively trust it already.
(outdated machines, etc.)

Some evidence that it's not just a hash of *my* private key:
https://www.iana.org/dnssec/ceremonies/53-2
https://data.iana.org/ksk-ceremony/53-2/kskm-keymaster-20240426-173035-995.log
https://www.youtube.com/live/gw4PFhtnVpk?si=C8zevM3nG9O0XAJr&t=12726

18 months agoMerge branch 'manager-ci-image' into 'master' docs-develop-mast-tzgd0f/deployments/4308 docs-develop-mast-tzgd0f/deployments/4310 docs-develop-mast-tzgd0f/deployments/4313 docs-develop-mast-tzgd0f/deployments/4314 docs-develop-mast-tzgd0f/deployments/4317 docs-develop-mast-tzgd0f/deployments/4318 docs-develop-mast-tzgd0f/deployments/4321 docs-develop-mast-tzgd0f/deployments/4325 docs-develop-mast-tzgd0f/deployments/4328 docs-develop-mast-tzgd0f/deployments/4335 docs-develop-mast-tzgd0f/deployments/4338 docs-develop-nigh-589znp/deployments/4311 docs-develop-nigh-589znp/deployments/4315 docs-develop-nigh-589znp/deployments/4319 docs-develop-nigh-589znp/deployments/4326 docs-develop-nigh-589znp/deployments/4336 obs-knot-resolver-es11k1/deployments/4312 obs-knot-resolver-es11k1/deployments/4316 obs-knot-resolver-es11k1/deployments/4320 obs-knot-resolver-es11k1/deployments/4327 obs-knot-resolver-es11k1/deployments/4337
Oto Šťáva [Fri, 7 Jun 2024 12:01:57 +0000 (14:01 +0200)] 
Merge branch 'manager-ci-image' into 'master'

manager: use image from 'knot-resolver-ci'

See merge request knot/knot-resolver!1554

18 months agodefer: extend kru allowing separated reads/updates docs-develop-rrl-8r8r8r/deployments/4302
Lukáš Ondráček [Thu, 6 Jun 2024 17:51:51 +0000 (19:51 +0200)] 
defer: extend kru allowing separated reads/updates

18 months agoratelimiting: moving mmapping to daemon/mmapped docs-develop-rrl-8r8r8r/deployments/4301
Lukáš Ondráček [Wed, 5 Jun 2024 18:26:15 +0000 (20:26 +0200)] 
ratelimiting: moving mmapping to daemon/mmapped

18 months agomanager/pyproject.toml: update Poetry docs-develop-mana-yuftw6/deployments/4300
Oto Šťáva [Thu, 6 Jun 2024 12:30:40 +0000 (14:30 +0200)] 
manager/pyproject.toml: update Poetry

18 months agomanager: use image from 'knot-resolver-ci'
Oto Šťáva [Wed, 5 Jun 2024 18:06:33 +0000 (20:06 +0200)] 
manager: use image from 'knot-resolver-ci'

This was forgotten during the CI overhaul.

18 months agoMerge branch 'remove-libedit' into 'master' docs-develop-mast-tzgd0f/deployments/4294 docs-develop-mast-tzgd0f/deployments/4303 docs-develop-mast-tzgd0f/deployments/4306 docs-develop-nigh-589znp/deployments/4304 obs-knot-resolver-es11k1/deployments/4305
Oto Šťáva [Thu, 6 Jun 2024 10:59:17 +0000 (12:59 +0200)] 
Merge branch 'remove-libedit' into 'master'

Remove unused dependency and Dockerfile

See merge request knot/knot-resolver!1553

18 months agoci/images/debian-12: remove docs-develop-remo-elu6lh/deployments/4283
Oto Šťáva [Wed, 5 Jun 2024 12:36:43 +0000 (14:36 +0200)] 
ci/images/debian-12: remove

Remnant of the past. This has been since replaced by images from
the `knot-resolver-ci` repo.

18 months agodistro/pkg: remove dependency on libedit
Oto Šťáva [Wed, 5 Jun 2024 12:35:23 +0000 (14:35 +0200)] 
distro/pkg: remove dependency on libedit

The library was used by the old experimental `kresc` client, which has
been removed in favour of Manager's `kresctl`.

18 months agoMerge branch 'nits-warnings' into 'master-5' docs-develop-mast-tyrtta/deployments/4281
Oto Šťáva [Wed, 5 Jun 2024 10:47:31 +0000 (12:47 +0200)] 
Merge branch 'nits-warnings' into 'master-5'

reduce build-time warnings

See merge request knot/knot-resolver!1552

18 months ago**/meson.build: avoid deprecations in meson >= 1.4 docs-develop-nits-11ie7m/deployments/4279
Vladimír Čunát [Wed, 5 Jun 2024 07:59:30 +0000 (09:59 +0200)] 
**/meson.build: avoid deprecations in meson >= 1.4

The code isn't pretty, but probably better than watching
the fat red lines on every build.

18 months agomeson.build: avoid a gcc 14 warning
Vladimír Čunát [Wed, 5 Jun 2024 07:58:18 +0000 (09:58 +0200)] 
meson.build: avoid a gcc 14 warning

Picked from master commit 68688fac013a4c16a476acc15c366a8ce07ed46e

18 months agorrl: tidying
Lukáš Ondráček [Wed, 29 May 2024 12:42:51 +0000 (14:42 +0200)] 
rrl: tidying

18 months agofixup! rrl: renaming, movements, create defer protolayer
Lukáš Ondráček [Tue, 28 May 2024 15:08:11 +0000 (17:08 +0200)] 
fixup! rrl: renaming, movements, create defer protolayer

18 months agorrl: renaming, movements, create defer protolayer
Lukáš Ondráček [Tue, 28 May 2024 14:47:17 +0000 (16:47 +0200)] 
rrl: renaming, movements, create defer protolayer

18 months agoMerge branch 'master' into 'rrl-wip'
Oto Šťáva [Tue, 4 Jun 2024 15:38:58 +0000 (17:38 +0200)] 
Merge branch 'master' into 'rrl-wip'

18 months agoMerge branch 'nits' into 'master' docs-develop-mast-tzgd0f/deployments/4273 docs-develop-mast-tzgd0f/deployments/4275 docs-develop-mast-tzgd0f/deployments/4278 docs-develop-mast-tzgd0f/deployments/4289 docs-develop-mast-tzgd0f/deployments/4292 docs-develop-nigh-589znp/deployments/4276 docs-develop-nigh-589znp/deployments/4290 obs-knot-resolver-es11k1/deployments/4277 obs-knot-resolver-es11k1/deployments/4291
Oto Šťáva [Tue, 4 Jun 2024 15:32:01 +0000 (17:32 +0200)] 
Merge branch 'nits' into 'master'

Protocol layers and other parts refactoring (+ nits)

See merge request knot/knot-resolver!1546

18 months agodaemon/session2.h: clarify `struct session2` docs docs-develop-nits-2dntdj/deployments/4272
Oto Šťáva [Tue, 4 Jun 2024 08:49:49 +0000 (10:49 +0200)] 
daemon/session2.h: clarify `struct session2` docs

As pointed out by @lukas.ondracek, the wording could be confusing when
mentioning *bottommost* and *topmost* layers. The original wording was
meant to reference the way the arrays in `daemon/session2.c` are laid
out, but never explicitly mentioned that, so one could be implicitly
think it was in reference to the widely known ISO/OSI or TCP/IP models,
which could be interpreted incorrectly (the layers are traditionally
laid out the other way around there).

18 months ago.gitlab-ci: use Arch for linting
Oto Šťáva [Fri, 31 May 2024 13:04:25 +0000 (15:04 +0200)] 
.gitlab-ci: use Arch for linting

This allows us to use the newest versions of linter tools.

18 months agodaemon/session2: fix asynchronous layer iterations
Oto Šťáva [Fri, 31 May 2024 10:09:42 +0000 (12:09 +0200)] 
daemon/session2: fix asynchronous layer iterations

There were a few bugs in the protolayer system that prevented us from
pausing iteration and resuming it properly. This commit should hopefully
resolve them.

18 months agoSome more Clang-Tidy silencing
Oto Šťáva [Wed, 29 May 2024 14:04:45 +0000 (16:04 +0200)] 
Some more Clang-Tidy silencing

18 months agodaemon/session2: optimize allocations
Oto Šťáva [Wed, 22 May 2024 13:18:30 +0000 (15:18 +0200)] 
daemon/session2: optimize allocations

A) Context-specific allocations
-------------------------------

There were two problems:

1) Some payloads are short-lived (e.g. allocated on stack) and we need
   to make a copy of them if the iteration over protocol layers becomes
   asynchronous.
2) The `pl_dns_stream_wrap` function used a mempool belonging to its
   session-wide context. Some sessions may live for a long time, which
   could potentially lead to needlessly long-lived memory allocations.

Both of these problems are solved in this commit by using a new
`knot_mm_t pool` field in `struct protolayer_iter_ctx`, which lives only
for a single submit (and survives asynchronicity). The whole pool is
then freed all at once when the `struct protolayer_iter_ctx` is
finalized.

B) Merging `struct protolayer_manager` into `struct session2`
-------------------------------------------------------------

It actually made no real sense to have the two separated. It only
introduced an extra layer of indirection and many layers actually needed
to access both anyway. This should simplify things considerably.

18 months agodaemon/proxyv2: move PROXY protocol into its own layer
Oto Šťáva [Tue, 21 May 2024 17:04:38 +0000 (19:04 +0200)] 
daemon/proxyv2: move PROXY protocol into its own layer

Previously, PROXYv2 handling was partially implemented in the `io.c`
unit in the `_TCP` and `_UDP` protocol layers, which technically made
very little sense. This commit moves this handling into separate
`_PROXYV2_DGRAM` and `_PROXYV2_STREAM` protocol layers, basically
encapsulating the handling of proxies in the `proxyv2.c` unit.

This commit also makes the PROXYv2 stream layer only support
`PROTOLAYER_PAYLOAD_WIRE_BUF` on its input, as other payload types were
unused and untested in this context.

18 months agodaemon/session2: protocol layer refactors + docs
Oto Šťáva [Tue, 21 May 2024 16:38:56 +0000 (18:38 +0200)] 
daemon/session2: protocol layer refactors + docs

This makes some readability enhancements to the `protolayer_` API as
well as clarifies some of the documentation.

There is also a change where the definitions of protocol layer sequences
does not require a `_NULL` layer to be present at the end anymore, as
the number of layers in a sequence is determined at compile time. This
makes defining new sequences less error-prone.

18 months agodaemon, lib: unify protolayer_grp and kr_proto enums
Oto Šťáva [Tue, 21 May 2024 09:09:47 +0000 (11:09 +0200)] 
daemon, lib: unify protolayer_grp and kr_proto enums

18 months agodaemon/session2: documentation improvements
Oto Šťáva [Mon, 20 May 2024 16:42:38 +0000 (18:42 +0200)] 
daemon/session2: documentation improvements

18 months agodaemon/io: remove minor inefficiency
Oto Šťáva [Mon, 20 May 2024 16:22:19 +0000 (18:22 +0200)] 
daemon/io: remove minor inefficiency

The resolver would try to move the bytes in the wire buffer over even if
the incoming data would not fit anyway. This should prevent that.

18 months agodaemon/http: fix typo
Oto Šťáva [Mon, 20 May 2024 15:50:00 +0000 (17:50 +0200)] 
daemon/http: fix typo

A missing `protolayer_break()`. C's typechecking failed me.

18 months agoutils/client/.clang-tidy: remove
Oto Šťáva [Wed, 15 May 2024 14:04:21 +0000 (16:04 +0200)] 
utils/client/.clang-tidy: remove

This is a leftover from the merged CI/CD overhaul. Only relevant for
Knot Resolver 5 - in 6, the experimental client was removed in favour of
`kresctl` from `manager`.

18 months agoMerge branch 'manager-configurable-meson' into 'master' docs-develop-mast-tzgd0f/deployments/4269
Oto Šťáva [Tue, 4 Jun 2024 11:02:05 +0000 (13:02 +0200)] 
Merge branch 'manager-configurable-meson' into 'master'

manager: configurable Meson directory

See merge request knot/knot-resolver!1542

18 months agodoc/dev/build.rst: installing the manager from source docs-develop-mana-oa16bs/deployments/4265
Aleš Mrázek [Tue, 4 Jun 2024 04:48:21 +0000 (06:48 +0200)] 
doc/dev/build.rst: installing the manager from source

18 months agoMerge branch 'release-5.7.3' into 'master-5' docs-develop-mast-tyrtta/deployments/4227 docs-release-v5-7-74oxdd/deployments/4229 obs-knot-resolver-8xyvhu/deployments/4230 obs-knot-resolver-kv62s6/deployments/4228 v5.7.3
Aleš Mrázek [Thu, 30 May 2024 12:19:21 +0000 (14:19 +0200)] 
Merge branch 'release-5.7.3' into 'master-5'

Release 5.7.3

See merge request knot/knot-resolver!1551

18 months agorelease 5.7.3 docs-develop-rele-weu2f2/deployments/4224 docs-develop-rele-weu2f2/deployments/4226 obs-knot-resolver-bs4hbr/deployments/4225
Aleš Mrázek [Thu, 30 May 2024 11:15:35 +0000 (13:15 +0200)] 
release 5.7.3

18 months agoMerge branch 'nsec3-iters-wild' into 'master-5' docs-develop-mast-tyrtta/deployments/4223
Oto Šťáva [Thu, 30 May 2024 10:34:33 +0000 (12:34 +0200)] 
Merge branch 'nsec3-iters-wild' into 'master-5'

iterate: fix NSEC3 records missing from answer in an edge case

See merge request knot/knot-resolver!1550

19 months agomanager: configurable Meson directory docs-develop-mana-oa16bs/deployments/4217
Oto Šťáva [Thu, 16 May 2024 12:17:12 +0000 (14:17 +0200)] 
manager: configurable Meson directory

This commit makes it more convenient to change the configuration of the
build directory of `kresd` when using Knot Resolver Manager. It adds a
new `./poe configure` command, which optionally takes the same arguments
as the standard `meson configure` command.

The `./poe run` command now requires running `./poe configure` at least
once to set up the build directory. If the directory has been configured
before this commit (i.e. `./poe run` has been executed at least once),
no extra action is required, as the directory structure remains the
same.

The commit also removes the `manager` configuration option from Meson as
we were not using it and it was broken and potentially confusing to
newcomers.

19 months agoiterate: fix NSEC3 records missing from answer in an edge case docs-develop-nsec-3srvyj/deployments/4211
Vladimír Čunát [Wed, 29 May 2024 13:07:46 +0000 (15:07 +0200)] 
iterate: fix NSEC3 records missing from answer in an edge case

When positive wildcard expansion happens, NSEC(3) records are needed
to prove that the expansion was allowed.  If the NSEC3 had too many
iterations, we downgrade the answer to insecure status, but
unintentionally we also dropped the NSEC3 record from the answer.

That was breaking DNSSEC validation of that answer, e.g. when
forwarding to Knot Resolver.  The validator needs the NSEC3 -
either to validate the expansion or to determine that it's too expensive.

19 months agoMerge branch 'pkg-v6-update' into 'master' docs-develop-mast-tzgd0f/deployments/4207 docs-develop-mast-tzgd0f/deployments/4219 docs-develop-mast-tzgd0f/deployments/4222 docs-develop-mast-tzgd0f/deployments/4233 docs-develop-mast-tzgd0f/deployments/4236 docs-develop-mast-tzgd0f/deployments/4248 docs-develop-mast-tzgd0f/deployments/4251 docs-develop-mast-tzgd0f/deployments/4252 docs-develop-mast-tzgd0f/deployments/4255 docs-develop-mast-tzgd0f/deployments/4256 docs-develop-mast-tzgd0f/deployments/4259 docs-develop-mast-tzgd0f/deployments/4261 docs-develop-mast-tzgd0f/deployments/4264 docs-develop-nigh-589znp/deployments/4220 docs-develop-nigh-589znp/deployments/4234 docs-develop-nigh-589znp/deployments/4249 docs-develop-nigh-589znp/deployments/4253 docs-develop-nigh-589znp/deployments/4257 docs-develop-nigh-589znp/deployments/4262 obs-knot-resolver-es11k1/deployments/4221 obs-knot-resolver-es11k1/deployments/4235 obs-knot-resolver-es11k1/deployments/4250 obs-knot-resolver-es11k1/deployments/4254 obs-knot-resolver-es11k1/deployments/4258 obs-knot-resolver-es11k1/deployments/4263
Oto Šťáva [Wed, 29 May 2024 10:21:15 +0000 (12:21 +0200)] 
Merge branch 'pkg-v6-update' into 'master'

distro: merge -core and -manager into knot-resolver

See merge request knot/knot-resolver!1549

19 months agodistro/config: bump apkg compat level to latest docs-develop-pkg-69bht2/deployments/4206
Jakub Ružička [Tue, 28 May 2024 13:28:05 +0000 (15:28 +0200)] 
distro/config: bump apkg compat level to latest

No changes required.

19 months agodistro/pkg/rpm: merge -core and -manager into knot-resolver
Jakub Ružička [Tue, 28 May 2024 12:41:51 +0000 (14:41 +0200)] 
distro/pkg/rpm: merge -core and -manager into knot-resolver

19 months agodistro/pkg/deb: add -dev package
Jakub Ružička [Fri, 24 May 2024 12:01:17 +0000 (14:01 +0200)] 
distro/pkg/deb: add -dev package

19 months agodistro/pkg/deb: use knot-resolver6 prefix
Jakub Ružička [Fri, 24 May 2024 11:52:52 +0000 (13:52 +0200)] 
distro/pkg/deb: use knot-resolver6 prefix

Prevent accidental upgrades from v5.

Merge -core and -manager subpackages back into knot-resolver6.

19 months agoMerge branch 'dnsssec-false' into 'master' docs-develop-mast-tzgd0f/deployments/4195 docs-develop-mast-tzgd0f/deployments/4202 docs-develop-mast-tzgd0f/deployments/4205 docs-develop-nigh-589znp/deployments/4203 obs-knot-resolver-es11k1/deployments/4204
Aleš Mrázek [Tue, 28 May 2024 08:40:47 +0000 (10:40 +0200)] 
Merge branch 'dnsssec-false' into 'master'

datamodel: unbreak `dnssec: false`

See merge request knot/knot-resolver!1548

19 months agodatamodel: unbreak `dnssec: false` docs-develop-dnss-peq4j3/deployments/4194
Vladimír Čunát [Mon, 27 May 2024 08:57:58 +0000 (10:57 +0200)] 
datamodel: unbreak `dnssec: false`

It was causing an incorrect Lua line
  trust_anchors.keep_removed =

Reported on gitter a couple days ago.

19 months agoMerge branch 'stats-split-6.x' into 'master' docs-develop-mast-tzgd0f/deployments/4186 docs-develop-mast-tzgd0f/deployments/4190 docs-develop-mast-tzgd0f/deployments/4193 docs-develop-nigh-589znp/deployments/4191 obs-knot-resolver-es11k1/deployments/4192
Oto Šťáva [Mon, 27 May 2024 11:49:15 +0000 (13:49 +0200)] 
Merge branch 'stats-split-6.x' into 'master'

modules/stats: split IPv4 and IPv6 stats (version 6.x)

See merge request knot/knot-resolver!1545

19 months agoNon-trivial merge 'master-5' (see 'modules/stats') docs-develop-stat-s8hiue/deployments/4185
Oto Šťáva [Mon, 27 May 2024 10:59:51 +0000 (12:59 +0200)] 
Non-trivial merge 'master-5' (see 'modules/stats')

modules/stats: adapt aggregate stats to the new hierarchical format

Knot Resolver 6 changed the structure of the stats return value, making
it more hierarchical, i.e. the returned object contains nested
"sub-objects", rather than being flat. This commit adapts the new
aggregate stats to this new structure, for consistency.

19 months agoMerge !1544: modules/stats: split IPv4 and IPv6 stats (version 5.x) docs-develop-mast-tyrtta/deployments/4182
Vladimír Čunát [Mon, 27 May 2024 10:17:42 +0000 (12:17 +0200)] 
Merge !1544: modules/stats: split IPv4 and IPv6 stats (version 5.x)

19 months agoNEWS: stats split docs-develop-stat-ik6qmx/deployments/4181
Oto Šťáva [Mon, 27 May 2024 09:18:34 +0000 (11:18 +0200)] 
NEWS: stats split

19 months agoMerge branch rrl-wip-sample into rrl-wip
Lukáš Ondráček [Wed, 22 May 2024 11:29:25 +0000 (13:29 +0200)] 
Merge branch rrl-wip-sample into rrl-wip

19 months agomodules/stats: add back stats dropped in the previous commit docs-develop-stat-ik6qmx/deployments/4128
Vladimír Čunát [Mon, 20 May 2024 12:11:07 +0000 (14:11 +0200)] 
modules/stats: add back stats dropped in the previous commit

Just as read-only aggregates of the split v4+v6 pairs.

19 months agomodules/stats: split request.* metrics to IPv4 and IPv6
Vladimír Čunát [Mon, 20 May 2024 11:32:52 +0000 (13:32 +0200)] 
modules/stats: split request.* metrics to IPv4 and IPv6

Let's have .total4 and .total6, too.  Then .total could be expressed
as a sum of *three* (including .internal), so it's still counted
separately, as an exception.

19 months agomodules/stats: add answer.sum_ms metric
Vladimír Čunát [Mon, 20 May 2024 11:32:45 +0000 (13:32 +0200)] 
modules/stats: add answer.sum_ms metric

(cherry picked from commit 44df5dd0d0fedfae390e7137572bcb14270e4d48)

19 months agoMerge branch 'coverity' into 'master-5' docs-develop-mast-tyrtta/deployments/4126
Oto Šťáva [Mon, 20 May 2024 11:01:04 +0000 (13:01 +0200)] 
Merge branch 'coverity' into 'master-5'

Coverity fixes

See merge request knot/knot-resolver!1543

19 months agodaemon/tls_ephemeral_credentials: fix possible race between read() and fstat() docs-develop-cove-uiak3c/deployments/4125
Oto Šťáva [Mon, 20 May 2024 09:52:27 +0000 (11:52 +0200)] 
daemon/tls_ephemeral_credentials: fix possible race between read() and fstat()

19 months ago.gitlab-ci: fail Coverity Scan on HTTP error
Oto Šťáva [Mon, 20 May 2024 09:01:19 +0000 (11:01 +0200)] 
.gitlab-ci: fail Coverity Scan on HTTP error

19 months agomodules/hints: fix dname bounds check
Oto Šťáva [Fri, 17 May 2024 11:22:51 +0000 (13:22 +0200)] 
modules/hints: fix dname bounds check

This check was introduced to fix Clang-Tidy errors, but was factually
not completely correct, tripping Coverity Scan.

19 months agoutils/cache_gc: use lib/generic/array instead of dynarray
Oto Šťáva [Fri, 17 May 2024 11:03:27 +0000 (13:03 +0200)] 
utils/cache_gc: use lib/generic/array instead of dynarray

This should appease Coverity Scan, and make the garbage collector
consistent with the rest of the Resolver.

19 months agorrl: truncate only answers sent over pure UDP docs-develop-rrl-8r8r8r/deployments/4124
Vladimír Čunát [Mon, 20 May 2024 10:14:41 +0000 (12:14 +0200)] 
rrl: truncate only answers sent over pure UDP

19 months agofixup! rrl: truncating answers when close to limit, dropping over limit
Vladimír Čunát [Sun, 19 May 2024 07:02:02 +0000 (09:02 +0200)] 
fixup! rrl: truncating answers when close to limit, dropping over limit

19 months agorrl: switch to CLOCK_THREAD_CPUTIME_ID for measurements
Lukáš Ondráček [Wed, 15 May 2024 15:45:42 +0000 (17:45 +0200)] 
rrl: switch to CLOCK_THREAD_CPUTIME_ID for measurements

19 months agoMerge branch 'coverity' into 'master' docs-develop-mast-tzgd0f/deployments/4084 docs-develop-mast-tzgd0f/deployments/4091 docs-develop-mast-tzgd0f/deployments/4094 docs-develop-mast-tzgd0f/deployments/4099 docs-develop-mast-tzgd0f/deployments/4102 docs-develop-mast-tzgd0f/deployments/4109 docs-develop-mast-tzgd0f/deployments/4112 docs-develop-mast-tzgd0f/deployments/4113 docs-develop-mast-tzgd0f/deployments/4116 docs-develop-mast-tzgd0f/deployments/4117 docs-develop-mast-tzgd0f/deployments/4120 docs-develop-mast-tzgd0f/deployments/4133 docs-develop-mast-tzgd0f/deployments/4136 docs-develop-mast-tzgd0f/deployments/4144 docs-develop-mast-tzgd0f/deployments/4147 docs-develop-mast-tzgd0f/deployments/4152 docs-develop-mast-tzgd0f/deployments/4154 docs-develop-mast-tzgd0f/deployments/4158 docs-develop-mast-tzgd0f/deployments/4161 docs-develop-mast-tzgd0f/deployments/4162 docs-develop-mast-tzgd0f/deployments/4165 docs-develop-mast-tzgd0f/deployments/4168 docs-develop-mast-tzgd0f/deployments/4171 docs-develop-mast-tzgd0f/deployments/4172 docs-develop-mast-tzgd0f/deployments/4175 docs-develop-nigh-589znp/deployments/4092 docs-develop-nigh-589znp/deployments/4100 docs-develop-nigh-589znp/deployments/4110 docs-develop-nigh-589znp/deployments/4114 docs-develop-nigh-589znp/deployments/4118 docs-develop-nigh-589znp/deployments/4134 docs-develop-nigh-589znp/deployments/4145 docs-develop-nigh-589znp/deployments/4153 docs-develop-nigh-589znp/deployments/4159 docs-develop-nigh-589znp/deployments/4163 docs-develop-nigh-589znp/deployments/4169 docs-develop-nigh-589znp/deployments/4173 obs-knot-resolver-es11k1/deployments/4093 obs-knot-resolver-es11k1/deployments/4101 obs-knot-resolver-es11k1/deployments/4111 obs-knot-resolver-es11k1/deployments/4115 obs-knot-resolver-es11k1/deployments/4119 obs-knot-resolver-es11k1/deployments/4135 obs-knot-resolver-es11k1/deployments/4146 obs-knot-resolver-es11k1/deployments/4155 obs-knot-resolver-es11k1/deployments/4160 obs-knot-resolver-es11k1/deployments/4164 obs-knot-resolver-es11k1/deployments/4170 obs-knot-resolver-es11k1/deployments/4174
Oto Šťáva [Wed, 15 May 2024 13:02:35 +0000 (15:02 +0200)] 
Merge branch 'coverity' into 'master'

daemon, lib, modules: trivial fixes for Coverity issues

See merge request knot/knot-resolver!1541

19 months agodaemon, lib, modules: trivial fixes for Coverity issues docs-develop-cove-uiak3c/deployments/4083
Oto Šťáva [Wed, 15 May 2024 12:46:00 +0000 (14:46 +0200)] 
daemon, lib, modules: trivial fixes for Coverity issues

19 months agoMerge 'origin/master' into 6.0 - last merge before rename docs-develop-6-0-mvwoqi/deployments/4073 docs-develop-cove-uiak3c/deployments/4076 docs-develop-mast-tzgd0f/deployments/4075 docs-develop-mast-tzgd0f/deployments/4079 docs-develop-mast-tzgd0f/deployments/4082 docs-develop-nigh-589znp/deployments/4080 docs-develop-tmp-wti7ta/deployments/4072 obs-knot-resolver-es11k1/deployments/4081
Oto Šťáva [Tue, 14 May 2024 10:05:01 +0000 (12:05 +0200)] 
Merge 'origin/master' into 6.0 - last merge before rename

This is the last commit in `6.0` before it is shifted into `master`,
with 5.x support being moved to `master-5`.

19 months ago.gitlab-ci: remove SonarCloud Scanner docs-develop-mast-tyrtta/deployments/4074 docs-develop-mast-tzgd0f/deployments/4071
Oto Šťáva [Tue, 14 May 2024 09:35:18 +0000 (11:35 +0200)] 
.gitlab-ci: remove SonarCloud Scanner

The detections are mostly academic and useless for our purposes. We have
other static analyzers that better suit our needs.

19 months agoMerge branch 'ci-overhaul-2' into 'master' docs-develop-mast-tzgd0f/deployments/4069
Oto Šťáva [Tue, 14 May 2024 08:59:59 +0000 (10:59 +0200)] 
Merge branch 'ci-overhaul-2' into 'master'

CI/CD overhaul

See merge request knot/knot-resolver!1533

19 months agoMerge branch 'knot_wire-6.0' into '6.0' docs-develop-6-0-mvwoqi/deployments/4063
Oto Šťáva [Mon, 13 May 2024 13:22:44 +0000 (15:22 +0200)] 
Merge branch 'knot_wire-6.0' into '6.0'

Resolve !1509 with 6.0 (libknot 3.4 compatibility)

See merge request knot/knot-resolver!1539

19 months agotests/pytests/utils: handle SSLEOFError docs-develop-ci-o-45qdxc/deployments/4062
Oto Šťáva [Tue, 7 May 2024 14:41:42 +0000 (16:41 +0200)] 
tests/pytests/utils: handle SSLEOFError

It used to just throw BrokenPipeError, but newer versions of Python have
a separate exception for when the connection is closed in violation of
TLS rules, which Knot Resolver does deliberately so as to not waste time
on properly closing TLS connections with misbehaving peers.

19 months agotest/pytests/test_tls: remove resumption test
Oto Šťáva [Tue, 7 May 2024 11:29:32 +0000 (13:29 +0200)] 
test/pytests/test_tls: remove resumption test

Knot Resolver disables resumption on TLS <=1.2 as it is vulnerable to
replay attacks, so the test makes no sense, as that one was specifically
disabled for TLS >=1.3 (Python had no support for it at the time).

We should make a new test for this with TLS 1.3 support.

19 months agotests/pytests: remove deprecated calls
Oto Šťáva [Mon, 6 May 2024 11:35:02 +0000 (13:35 +0200)] 
tests/pytests: remove deprecated calls

19 months agoSilence Clang-Tidy
Oto Šťáva [Mon, 29 Apr 2024 13:09:01 +0000 (15:09 +0200)] 
Silence Clang-Tidy

This commit makes lots of changes to the C code to appease the
Clang-Tidy linter. Some of the less obvious ones are due to C's weird
semantics regarding handling of numeric literals.

We also disable a bunch of the detections because they are
super-pedantic, arguably useless, or we have our own unwritten coding
style rules that solve the issues.

19 months ago.gitlab-ci, tests, modules: adapt to knot-resolver-ci repo
Oto Šťáva [Tue, 23 Apr 2024 14:34:08 +0000 (16:34 +0200)] 
.gitlab-ci, tests, modules: adapt to knot-resolver-ci repo

This is the bulk of the CI/CD overhaul.

Most of the changes are to the `.gitlab-ci.yml` file, where the build
images used are replaced with the ones provided by the
`knot-resolver-ci` repository. Some cleanups have also been done.

The commit also adds unit testing with Knot Resolver built against
multiple versions of Knot DNS, including the `master` branch. The
`master` branch image is built nightly in the `knot-resolver-ci` repo.

We have also removed `scan-build`, as its tests change frequently, with
lots of false-positives, which are very different on each version, and
there is no good way to ignore some detections. Clang-Tidy covers some
of the same issues, and we also have Coverity Scan. Should be more than
enough.

A few config tests were also excluded in the AddressSanitizer tests,
because they produce false-positives.

19 months agotests/dnstap: Go improvements
Oto Šťáva [Thu, 11 Apr 2024 10:30:38 +0000 (12:30 +0200)] 
tests/dnstap: Go improvements

- Do `go mod tidy` before running the test, even in CI
- Add `go.sum` to `.gitignore`
- Compatibility with Go 1.15 (Debian 11)

19 months agoMerge branch 'master' into knot_wire-6.0 docs-develop-knot-8ksg4h/deployments/4036
Vladimír Čunát [Thu, 9 May 2024 06:47:11 +0000 (08:47 +0200)] 
Merge branch 'master' into knot_wire-6.0

19 months agoResolve !1509 with 6.0 (libknot 3.4 compatibility)
Vladimír Čunát [Thu, 9 May 2024 06:36:08 +0000 (08:36 +0200)] 
Resolve !1509 with 6.0 (libknot 3.4 compatibility)

- some knot_wire_next_label() calls were added since master,
  so those get changed as in a083f3fe63cffbabb19e6b67848151f4bb6d623c
- some code has moved since master (to lib/resolve-produce.c),
  and unfortunately the MR !1509 did change some of it,
  and git was unable to handle this automatically

This merge commit is separate, only bringing !1509 and no other
changes from master, so that it's easier to understand.

19 months agoMerge !1538: ci nixos: switch container image tag docs-develop-mast-tzgd0f/deployments/4035 docs-develop-mast-tzgd0f/deployments/4038 docs-develop-mast-tzgd0f/deployments/4040 docs-develop-mast-tzgd0f/deployments/4045 docs-develop-mast-tzgd0f/deployments/4048 docs-develop-mast-tzgd0f/deployments/4049 docs-develop-mast-tzgd0f/deployments/4052 docs-develop-mast-tzgd0f/deployments/4053 docs-develop-mast-tzgd0f/deployments/4056 docs-develop-mast-tzgd0f/deployments/4065 docs-develop-mast-tzgd0f/deployments/4068 docs-develop-nigh-589znp/deployments/4039 docs-develop-nigh-589znp/deployments/4046 docs-develop-nigh-589znp/deployments/4050 docs-develop-nigh-589znp/deployments/4054 docs-develop-nigh-589znp/deployments/4066 obs-knot-resolver-es11k1/deployments/4041 obs-knot-resolver-es11k1/deployments/4047 obs-knot-resolver-es11k1/deployments/4051 obs-knot-resolver-es11k1/deployments/4055 obs-knot-resolver-es11k1/deployments/4067
Vladimír Čunát [Thu, 9 May 2024 06:28:43 +0000 (08:28 +0200)] 
Merge !1538: ci nixos: switch container image tag

19 months agoci nixos: switch container image tag docs-develop-ci-n-u025gi/deployments/4034
Vladimír Čunát [Thu, 9 May 2024 05:34:33 +0000 (07:34 +0200)] 
ci nixos: switch container image tag

Unfortunately the `latest` tag is amd64 only right now,
even though it did have both recently. I hope this will work reliably.

19 months agoMerge remote-tracking branch 'origin/6.0' into rrl-wip docs-develop-rrl-8r8r8r/deployments/4019
Lukáš Ondráček [Tue, 7 May 2024 14:06:23 +0000 (16:06 +0200)] 
Merge remote-tracking branch 'origin/6.0' into rrl-wip

19 months agofixup! rrl: truncating answers when close to limit, dropping over limit docs-develop-rrl-8r8r8r/deployments/4018
Lukáš Ondráček [Tue, 7 May 2024 09:03:12 +0000 (11:03 +0200)] 
fixup! rrl: truncating answers when close to limit, dropping over limit

19 months agodaemon/rrl WIP: estimate CPU work done on behalf of clients docs-develop-rrl-l16r8o/deployments/4015
Vladimír Čunát [Tue, 7 May 2024 10:34:15 +0000 (12:34 +0200)] 
daemon/rrl WIP: estimate CPU work done on behalf of clients

19 months agorrl: truncating answers when close to limit, dropping over limit docs-develop-rrl-8r8r8r/deployments/4008
Lukáš Ondráček [Mon, 6 May 2024 15:32:45 +0000 (17:32 +0200)] 
rrl: truncating answers when close to limit, dropping over limit

19 months agoMerge !1509: treewide: more compatibility with future libknot 3.4 docs-develop-mast-tzgd0f/deployments/4005 docs-develop-mast-tzgd0f/deployments/4009 docs-develop-mast-tzgd0f/deployments/4012 docs-develop-mast-tzgd0f/deployments/4021 docs-develop-mast-tzgd0f/deployments/4024 docs-develop-mast-tzgd0f/deployments/4027 docs-develop-mast-tzgd0f/deployments/4030 docs-develop-nigh-589znp/deployments/4010 docs-develop-nigh-589znp/deployments/4022 docs-develop-nigh-589znp/deployments/4028 obs-knot-resolver-es11k1/deployments/4011 obs-knot-resolver-es11k1/deployments/4023 obs-knot-resolver-es11k1/deployments/4029
Vladimír Čunát [Mon, 6 May 2024 12:53:32 +0000 (14:53 +0200)] 
Merge !1509: treewide: more compatibility with future libknot 3.4

19 months agotreewide: more compatibility with future libknot 3.4 docs-develop-knot-r94p16/deployments/4003
Vladimír Čunát [Wed, 6 Mar 2024 07:13:57 +0000 (08:13 +0100)] 
treewide: more compatibility with future libknot 3.4

knot_wire_next_label used to return NULL when applied to . (root)
but that's not allowed anymore, and some of our calls relied on that.

19 months agotreewide: more compatibility with future libknot 3.4
Vladimír Čunát [Tue, 5 Mar 2024 12:48:21 +0000 (13:48 +0100)] 
treewide: more compatibility with future libknot 3.4

knot_wire_next_label isn't allowed with NULL wire anymore.

19 months agoMerge remote-tracking branch 'origin/master' into 6.0 docs-develop-6-0-mvwoqi/deployments/3964 docs-develop-tmp-wti7ta/deployments/3963
Oto Šťáva [Thu, 2 May 2024 11:05:27 +0000 (13:05 +0200)] 
Merge remote-tracking branch 'origin/master' into 6.0

19 months agoMerge !1536: distro/pkg/arch: fix after they renamed a dependency docs-develop-6-0-mvwoqi/deployments/3962
Vladimír Čunát [Thu, 2 May 2024 11:04:01 +0000 (13:04 +0200)] 
Merge !1536: distro/pkg/arch: fix after they renamed a dependency

19 months agodistro/pkg/arch: fix after they renamed a dependency docs-develop-arch-w3h4cr/deployments/3961
Vladimír Čunát [Mon, 29 Apr 2024 08:53:44 +0000 (10:53 +0200)] 
distro/pkg/arch: fix after they renamed a dependency

19 months agoMerge branch 'doc-news-nits' into '6.0' docs-develop-6-0-mvwoqi/deployments/3960
Oto Šťáva [Thu, 2 May 2024 10:51:26 +0000 (12:51 +0200)] 
Merge branch 'doc-news-nits' into '6.0'

nits: NEWS and predict module doc

See merge request knot/knot-resolver!1535

19 months agoMerge branch 'macos-fix' into 'master' docs-develop-mast-tzgd0f/deployments/3958 docs-develop-mast-tzgd0f/deployments/3976 docs-develop-mast-tzgd0f/deployments/3979 docs-develop-mast-tzgd0f/deployments/3986 docs-develop-mast-tzgd0f/deployments/3989 docs-develop-mast-tzgd0f/deployments/3990 docs-develop-mast-tzgd0f/deployments/3993 docs-develop-mast-tzgd0f/deployments/3994 docs-develop-mast-tzgd0f/deployments/3997 docs-develop-nigh-589znp/deployments/3977 docs-develop-nigh-589znp/deployments/3987 docs-develop-nigh-589znp/deployments/3991 docs-develop-nigh-589znp/deployments/3995 obs-knot-resolver-es11k1/deployments/3978 obs-knot-resolver-es11k1/deployments/3988 obs-knot-resolver-es11k1/deployments/3992 obs-knot-resolver-es11k1/deployments/3996
Oto Šťáva [Thu, 2 May 2024 10:46:04 +0000 (12:46 +0200)] 
Merge branch 'macos-fix' into 'master'

Fix macOS GitHub actions

See merge request knot/knot-resolver!1537

19 months agomodules/*/meson.build: add missing dependencies docs-develop-maco-884crr/deployments/3957
Oto Šťáva [Thu, 2 May 2024 10:21:00 +0000 (12:21 +0200)] 
modules/*/meson.build: add missing dependencies

19 months ago.github/workflows/macOS: fix prefix for ARM macOS
Oto Šťáva [Tue, 30 Apr 2024 09:19:34 +0000 (11:19 +0200)] 
.github/workflows/macOS: fix prefix for ARM macOS

20 months agolint: satisfy new mypy version docs-develop-doc-vyxna8/deployments/3923
Aleš Mrázek [Mon, 29 Apr 2024 09:19:20 +0000 (11:19 +0200)] 
lint: satisfy new mypy version

20 months agodoc/user/config-cache-predict.rst: use slashes (JSON pointer) instead of dots when... docs-develop-doc-7cna2r/deployments/3918 docs-develop-doc-vyxna8/deployments/3919
Aleš Mrázek [Mon, 29 Apr 2024 08:36:58 +0000 (10:36 +0200)] 
doc/user/config-cache-predict.rst: use slashes (JSON pointer) instead of dots when reffering to stats node

20 months agoNEWS: use slashes (JSON pointer) instead of dots when referring to configuration...
Aleš Mrázek [Mon, 29 Apr 2024 08:35:21 +0000 (10:35 +0200)] 
NEWS: use slashes (JSON pointer) instead of dots when referring to configuration node

20 months agoMerge branch 'cache-prediction-split' into '6.0' docs-develop-6-0-mvwoqi/deployments/3862
Oto Šťáva [Mon, 22 Apr 2024 11:00:50 +0000 (13:00 +0200)] 
Merge branch 'cache-prediction-split' into '6.0'

cache: new module to prefetch expiring records

See merge request knot/knot-resolver!1532

20 months agomanager: statistics: prometheus format for 'predict' module docs-develop-cach-aroclx/deployments/3861
Aleš Mrázek [Fri, 19 Apr 2024 16:19:02 +0000 (18:19 +0200)] 
manager: statistics: prometheus format for 'predict' module

20 months agomodules/stats: make custom stats hierarchical
Oto Šťáva [Fri, 19 Apr 2024 14:18:51 +0000 (16:18 +0200)] 
modules/stats: make custom stats hierarchical

Forgotten feature from !1527

20 months agoNEWS: cache prefetching improvements
Aleš Mrázek [Wed, 17 Apr 2024 14:03:00 +0000 (16:03 +0200)] 
NEWS: cache prefetching improvements