]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Frantisek Tobias [Fri, 21 Mar 2025 10:36:06 +0000 (11:36 +0100)]
Revert "Auth whitelist: kres-gen: add C functions"
This reverts commit
5b19bd6762351f2062cb10ed6055e325e9f2c61f .
Frantisek Tobias [Fri, 21 Mar 2025 09:42:39 +0000 (10:42 +0100)]
Datamodel: Add tls field for CA trust whitelist file
Frantisek Tobias [Fri, 21 Mar 2025 09:41:08 +0000 (10:41 +0100)]
Revert "lib/resolve: load authority whitelist into persistent kr_context structure"
This reverts commit
74e605439817844b8b4395aa31981ea96cca2f33 .
Frantisek Tobias [Fri, 21 Mar 2025 09:39:32 +0000 (10:39 +0100)]
lib/resolve: kr_context: add trust whitelist certificate credentials]
Frantisek Tobias [Fri, 21 Mar 2025 09:04:18 +0000 (10:04 +0100)]
tls: Add cb function to check clients cert against trust whitelist
If the whitelist is configured unwrap direction of DoT sets the certificate server request to GNUTLS_CERT_REQUIRE
Frantisek Tobias [Fri, 21 Mar 2025 09:02:08 +0000 (10:02 +0100)]
net-tls: perform struct dependency check, rename to match context
Frantisek Tobias [Mon, 10 Feb 2025 12:10:09 +0000 (13:10 +0100)]
Auth whitelist: implement issuer checks
Frantisek Tobias [Mon, 10 Feb 2025 12:08:33 +0000 (13:08 +0100)]
Auth whitelist: kres-gen: add C functions
Frantisek Tobias [Mon, 10 Feb 2025 12:05:37 +0000 (13:05 +0100)]
config/network: add whitelist into network schema
Frantisek Tobias [Mon, 10 Feb 2025 12:03:31 +0000 (13:03 +0100)]
lib/resolve: load authority whitelist into persistent kr_context structure
Vladimír Čunát [Sun, 6 Jul 2025 14:43:39 +0000 (16:43 +0200)]
Merge !1709: lib/rules: update/more precise default answers for special names
Vladimír Čunát [Thu, 19 Jun 2025 13:38:44 +0000 (15:38 +0200)]
lib/rules: update/more precise default answers for special names
The diff probably shows as messy, but the set of names
doesn't change much. _EMPTY changes to _NXDOMAIN in many cases.
Every name has some text defining the behavior;
it's not very unified, unfortunately.
Now I tried to refer to particular RFC section(s) for each name.
Vladimír Čunát [Fri, 4 Jul 2025 17:29:23 +0000 (19:29 +0200)]
Merge !1705: modules/prefill: fix moving across filesystems
Vladimír Čunát [Wed, 11 Jun 2025 17:22:11 +0000 (19:22 +0200)]
modules/prefill: fix moving across filesystems
I somehow thought thought that `os.rename()` behaves
like the `mv` command, and unfortunately in the way I tested this,
everything was inside a single mount-point.
Official docs is one line that doesn't explain anything really :-/
Vladimír Čunát [Fri, 4 Jul 2025 17:13:14 +0000 (19:13 +0200)]
Merge !1710: manager: support for multiple configuration files
Aleš Mrázek [Tue, 1 Jul 2025 10:41:50 +0000 (12:41 +0200)]
Revert "scripts/poe-tasks/utils/_env.sh: added CONFIG_FILE_NAME variable"
This reverts commit
d3d4c2fbe52048ecd3df59e7e8e3d2017ad7914c .
Aleš Mrázek [Mon, 30 Jun 2025 19:05:26 +0000 (21:05 +0200)]
manager/server.py: check the parent dir of each config file
Compare the locations of multiple configuration files and issue a warning
Aleš Mrázek [Fri, 20 Jun 2025 06:41:08 +0000 (08:41 +0200)]
python: manager/server.py: use 'data_combine' function to combine data from multiple config files
Aleš Mrázek [Thu, 19 Jun 2025 18:45:26 +0000 (20:45 +0200)]
python: utils/modeling/parsing.py: 'data_combine' function for combining dictionaries data
Aleš Mrázek [Wed, 18 Jun 2025 14:14:54 +0000 (16:14 +0200)]
.gitlab-ci.yml: python:run: added second configuration
Aleš Mrázek [Wed, 18 Jun 2025 14:13:34 +0000 (16:13 +0200)]
etc/config: added few YAML configs for testing
Aleš Mrázek [Wed, 18 Jun 2025 14:05:31 +0000 (16:05 +0200)]
python: manager: allow multiple configuration file inputs
Aleš Mrázek [Wed, 18 Jun 2025 11:13:27 +0000 (13:13 +0200)]
etc/config/config.yaml: reduced to minimal config
Most of the configuration was a duplication of the default values.
Aleš Mrázek [Wed, 18 Jun 2025 10:57:45 +0000 (12:57 +0200)]
etc/config/config.dev.yaml: reduced to minimal config
Aleš Mrázek [Wed, 18 Jun 2025 10:39:23 +0000 (12:39 +0200)]
.gitlab-ci.yml: python:run: use CONFIG_FILE_NAME
Aleš Mrázek [Wed, 18 Jun 2025 10:37:33 +0000 (12:37 +0200)]
scripts/poe-tasks/utils/_env.sh: added CONFIG_FILE_NAME variable
The CONFIG_FILE_NAME variable allows us to change just the name of a configuration file.
Vladimír Čunát [Wed, 2 Jul 2025 16:38:20 +0000 (18:38 +0200)]
Merge !1713: lib/cache: fix retaining is_cache flag in cdb_clear
Vladimír Čunát [Wed, 2 Jul 2025 16:36:20 +0000 (18:36 +0200)]
add NEWS for the parent commit
Lukáš Ondráček [Wed, 2 Jul 2025 16:00:33 +0000 (18:00 +0200)]
lib/cache: fix retaining is_cache flag in cdb_clear
Vladimír Čunát [Mon, 30 Jun 2025 08:28:07 +0000 (10:28 +0200)]
Merge !1712: manager: metrics: fix typo in one prometheus stat name
Rich [Wed, 25 Jun 2025 07:53:53 +0000 (08:53 +0100)]
manager: metrics: fix typo in one prometheus stat name
Vladimír Čunát [Wed, 25 Jun 2025 07:24:22 +0000 (09:24 +0200)]
Merge !1711: datamodel/templates: fix swapped edns-buffer-size
Vladimír Čunát [Wed, 25 Jun 2025 07:10:19 +0000 (09:10 +0200)]
datamodel/templates: fix swapped edns-buffer-size
Vladimír Čunát [Wed, 25 Jun 2025 06:56:13 +0000 (08:56 +0200)]
Merge !1704: datamodel/templates: fix /dnssec/trust-anchors-files
Vladimír Čunát [Wed, 11 Jun 2025 13:34:40 +0000 (15:34 +0200)]
datamodel/templates: fix /dnssec/trust-anchors-files
I expect this has never worked in 6.x yet :-/
Vladimír Čunát [Thu, 12 Jun 2025 12:04:34 +0000 (14:04 +0200)]
Merge !1706: .gitlab-ci.yml: add pkg:alma-10
Jakub Ružička [Thu, 12 Jun 2025 11:24:25 +0000 (13:24 +0200)]
distro/tests: update test dependencies
Depend on man on almalinux.
Also shorten distro.match invocations for readability.
Vladimír Čunát [Thu, 5 Jun 2025 10:27:47 +0000 (12:27 +0200)]
.gitlab-ci.yml: add pkg:alma-10
Vladimír Čunát [Thu, 12 Jun 2025 08:51:17 +0000 (10:51 +0200)]
Merge !1701: meson: avoid protoc-c, as it's deprecated
Vladimír Čunát [Wed, 4 Jun 2025 07:32:14 +0000 (09:32 +0200)]
meson: avoid protoc-c, as it's (reported as) deprecated
> `protoc-c` is deprecated. Please use `protoc` instead!
Vladimír Čunát [Wed, 11 Jun 2025 11:01:45 +0000 (13:01 +0200)]
Merge !1703: manager: prometheus metrics update
Fixes #917
Aleš Mrázek [Wed, 11 Jun 2025 10:01:36 +0000 (12:01 +0200)]
test/packaging/interactive/metrics: compare number of JSON and prometheus metrics
Aleš Mrázek [Tue, 10 Jun 2025 16:17:27 +0000 (18:17 +0200)]
manager: metrics: added prometheus missing IPv4/6 metrics
Aleš Mrázek [Tue, 3 Jun 2025 10:51:59 +0000 (12:51 +0200)]
Merge branch 'release-6.0.14' into 'master'
Release 6.0.14
See merge request knot/knot-resolver!1700
Aleš Mrázek [Tue, 3 Jun 2025 10:51:59 +0000 (12:51 +0200)]
Release 6.0.14
Vladimír Čunát [Tue, 3 Jun 2025 09:25:33 +0000 (11:25 +0200)]
Merge !1699: datamodel/templates: fix error, as RuleSchema doesn't have .log
Vladimír Čunát [Mon, 2 Jun 2025 12:42:01 +0000 (14:42 +0200)]
lib/rules: drop FIXMEs
These don't need resolving, as the return values for kr_* functions
didn't change really in the end.
Vladimír Čunát [Mon, 2 Jun 2025 12:42:01 +0000 (14:42 +0200)]
datamodel/templates: fix error, as RuleSchema doesn't have .log
Also indent the complicated if-nesting.
Aleš Mrázek [Mon, 2 Jun 2025 07:31:26 +0000 (09:31 +0200)]
Merge branch 'ci-python-run' into 'master'
ci: python:run: job to start the resolver with the dev configuration
See merge request knot/knot-resolver!1698
Aleš Mrázek [Fri, 30 May 2025 08:22:30 +0000 (10:22 +0200)]
.gitlab-ci.yml: added python:run job
Vladimír Čunát [Mon, 2 Jun 2025 07:23:45 +0000 (09:23 +0200)]
Merge !1697: datamodel/templates: fix kr_rule_local_* macros
Vladimír Čunát [Fri, 30 May 2025 05:13:04 +0000 (07:13 +0200)]
add NEWS entry
Brad Cowie [Fri, 30 May 2025 01:57:25 +0000 (13:57 +1200)]
datamodel/templates: fix kr_rule_local_* macros
commit
a782e9c3 broke the jinja2 generation of the
kr_rule_local_* macro functions. C.KR_RULE_OPTS_DEFAULT
was provided as an argument to the assert() function call
instead of the call to the corresponding C.kr_rule_local_* function
Aleš Mrázek [Thu, 29 May 2025 10:42:25 +0000 (12:42 +0200)]
Merge branch 'release-6.0.13' into 'master'
Release 6.0.13
See merge request knot/knot-resolver!1695
Vladimír Čunát [Thu, 29 May 2025 09:16:54 +0000 (11:16 +0200)]
release 6.0.13
Vladimír Čunát [Thu, 29 May 2025 09:15:47 +0000 (11:15 +0200)]
Merge !1696: DoS: fix more rare crashes with `requirement` failing
Fixes #930
Vladimír Čunát [Thu, 29 May 2025 09:07:40 +0000 (11:07 +0200)]
daemon/{session2,worker}: relax a few kr_require() cases
These cases aren't obviously impossible,
and I fail to see why force a crash there.
Vladimír Čunát [Thu, 29 May 2025 09:07:40 +0000 (11:07 +0200)]
daemon/session2_transport_event(): relax a kr_require()
I fail to see why force a crash there, so let's at least
be defensive for now, as it does happen in practice.
Vladimír Čunát [Thu, 29 May 2025 09:07:40 +0000 (11:07 +0200)]
daemon/session2 wire_buf_init(): don't return anything
The function does not return anything but success,
and I don't see any plans for changing that,
so why should the declaration suggest otherwise?
Vladimír Čunát [Thu, 29 May 2025 09:00:09 +0000 (11:00 +0200)]
Merge !1694: /local-data/rpz/*/log: add option to log RPZ matches
Vladimír Čunát [Wed, 28 May 2025 12:35:46 +0000 (14:35 +0200)]
add NEWS entry
Vladimír Čunát [Wed, 28 May 2025 12:35:46 +0000 (14:35 +0200)]
datamodel: hide /local-data/rpz/*/dry-run for now
While this can be practical, let's not promise this approach to
configuration until it's more clear how the more general score
will appear in the config.
Vladimír Čunát [Wed, 28 May 2025 12:35:46 +0000 (14:35 +0200)]
datamodel: add /local-data/rpz/*/{log,dry-run}
Vladimír Čunát [Wed, 28 May 2025 12:35:46 +0000 (14:35 +0200)]
lib/rules: add initial kr_rule_opts_t
For now this relates to logging/dry-run of local-data rules.
Vladimír Čunát [Sun, 25 May 2025 08:19:28 +0000 (10:19 +0200)]
Merge !1688: prefill + elsewhere: error message improvements
Vladimír Čunát [Sun, 25 May 2025 08:17:44 +0000 (10:17 +0200)]
datamodel nit: fix a typo in error message
Vladimír Čunát [Sun, 25 May 2025 08:17:44 +0000 (10:17 +0200)]
trust-anchors nit: print a clearer error message
Vladimír Čunát [Sun, 25 May 2025 08:17:44 +0000 (10:17 +0200)]
daemon/lua: introduce kres.strerror(errcode)
As seen in the grandparent comit, the previous style
was error-prone and a bit verbose.
Vladimír Čunát [Sun, 25 May 2025 08:17:44 +0000 (10:17 +0200)]
lib/ kr_strerror(): unify / cover more error codes
We often propagate errors from Knot libs...
Vladimír Čunát [Sun, 25 May 2025 08:17:44 +0000 (10:17 +0200)]
prefill: download through a temporary file
File rename is an atomic operation, so that's a plus.
We had a practical issue with the canary process,
as (for me) it exits somewhere during the download; example log:
kresd0[912938]: [prefil] downloading root zone to file root.zone ...
kresd0[912942]: [prefil] root zone file valid for 11 hours 59 minutes, reusing data from disk
kresd0[912942]: [prefil] empty zone file
kresd0[912942]: [prefil] error parsing zone file `root.zone`
kresd0[912942]: [prefil] root zone import failed, retry in 01 seconds
kresd0[912942]: [prefil] downloading root zone to file root.zone ...
kresd0[912942]: [prefil] import started for zone file `root.zone`
kresd0[912942]: [prefil] performance: parsing took 0.832 s, hashing took nan s
kresd0[912942]: [prefil] zone successfully parsed, import started
kresd0[912942]: [prefil] root zone refresh in 11 hours 59 minutes
kresd0[912942]: [prefil] performance: validating and caching took 0.736 s
Also avoid the unnecessary pcall+error. Why throw and immediately catch?
Vladimír Čunát [Sun, 25 May 2025 08:17:44 +0000 (10:17 +0200)]
prefill nit: better error messages
Avoid the ugly cdata<const char *>: 0x7fe6202c7f80
Moreover the return code is -1 in my test case,
but that does not imply EPERM: Operation not permitted.
It was all unnecessary mess, including the pcall+error() pair.
Also avoid some double-wrapping by '[prefil]'.
Vladimír Čunát [Sat, 24 May 2025 08:46:21 +0000 (10:46 +0200)]
Merge !1693: daemon/main.c: fix musl incompatible pointer types
Nicolas PARLANT [Sat, 24 May 2025 05:26:35 +0000 (07:26 +0200)]
daemon/main.c: fix musl incompatible pointer types
> ../knot-resolver-6.0.12/daemon/main.c:418:46: warning: incompatible
> pointer types passing 'struct sockaddr_un *' to parameter of type 'const
> struct sockaddr *' [-Wincompatible-pointer-types]
Signed-off-by: Nicolas PARLANT <nicolas.parlant@parhuet.fr>
Vladimír Čunát [Thu, 22 May 2025 16:57:39 +0000 (18:57 +0200)]
Merge !1691: ci: Fedora: +42 -40
Vladimír Čunát [Thu, 22 May 2025 16:48:33 +0000 (18:48 +0200)]
ci: Fedora: +42 -40
40 had EOL the previous week, so let's clean up:
https://fedorapeople.org/groups/schedule/f-40/f-40-key-tasks.html
Vladimír Čunát [Tue, 20 May 2025 12:52:44 +0000 (14:52 +0200)]
Merge !1689: treewide: C++ compatibility in headers
Vladimír Čunát [Tue, 20 May 2025 06:28:32 +0000 (08:28 +0200)]
tests: add check for C++ compatibility in headers
Vladimír Čunát [Tue, 20 May 2025 06:28:32 +0000 (08:28 +0200)]
treewide: explicit conversions to/from void* in (some) headers
They're not needed in C, but they are in C++. While -fpermissive can
downgrade these to warnings, it's still more troublesome than a fix.
Vladimír Čunát [Tue, 20 May 2025 06:28:32 +0000 (08:28 +0200)]
treewide: more C++ compatibility in headers
Vladimír Čunát [Tue, 20 May 2025 06:28:32 +0000 (08:28 +0200)]
lib/selection*: avoid using `private` identifier; because C++
Vladimír Čunát [Mon, 12 May 2025 14:20:09 +0000 (16:20 +0200)]
Merge !1649: ci: docs and manager jobs reorganization
Aleš Mrázek [Mon, 12 May 2025 13:15:00 +0000 (15:15 +0200)]
.gitlab-ci.yml: docs:pages: added 'pages: true'
Vladimír Čunát [Thu, 3 Apr 2025 12:13:28 +0000 (14:13 +0200)]
doc: better build parallelism
`auto` isn't perfect because of nested parallelism,
but I don't see another simple way here,
and I hope the potential slight overload will be OK for docs.
Aleš Mrázek [Mon, 24 Mar 2025 14:16:15 +0000 (15:16 +0100)]
.gitlab-ci.yml: IMAGE_TAG update
Aleš Mrázek [Wed, 22 Jan 2025 13:03:34 +0000 (14:03 +0100)]
.gitlab-ci.yml: removed 'release' stage
Aleš Mrázek [Tue, 21 Jan 2025 15:27:00 +0000 (16:27 +0100)]
.gitlab-ci.yml: python: parallel unit tests
Aleš Mrázek [Mon, 20 Jan 2025 15:37:19 +0000 (16:37 +0100)]
.gitlab-ci.yml: docs: improvements
- docs:environment: replacement for docs:develop and docs:release
- docs:website: use CI_COMMIT_REF_NAME
Aleš Mrázek [Fri, 17 Jan 2025 14:49:29 +0000 (15:49 +0100)]
.gitlab-ci.yml: release stage added
Vladimír Čunát [Mon, 12 May 2025 12:42:26 +0000 (14:42 +0200)]
Merge !1686: daemon: fix a memory leak present since v6.0.9
Fixes #927
Vladimír Čunát [Sat, 10 May 2025 09:11:14 +0000 (11:11 +0200)]
daemon/defer: minor optimization if not debug-logging
Avoids computing those kr_straddr() and sometimes others.
Vladimír Čunát [Sat, 10 May 2025 09:11:14 +0000 (11:11 +0200)]
daemon/defer nit: refactor break_query() a little
Vladimír Čunát [Sat, 10 May 2025 09:11:14 +0000 (11:11 +0200)]
daemon/session2_{inc,dec}_refs() nit: allow compiler to inline
The `inline + extern inline` combination is kind-of arcane,
but I find it nice to leave it to compiler whether to inline or not.
(in particular, in debug builds it's probably better not to inline this)
Lukáš Ondráček [Tue, 6 May 2025 12:10:04 +0000 (14:10 +0200)]
daemon/session2: use ref_count only for deferred iter_ctx (fixes #927)
Partially reverts
bb1babf0 , where the memory-leak bug was introduced.
Aleš Mrázek [Fri, 9 May 2025 08:19:44 +0000 (10:19 +0200)]
Merge branch 'datamodel-defer-fix' into 'master'
datamodel/templates: fix undefined disable_defer
See merge request knot/knot-resolver!1685
Lukáš Ondráček [Tue, 6 May 2025 13:12:31 +0000 (15:12 +0200)]
datamodel/templates: fix undefined disable_defer
Aleš Mrázek [Fri, 9 May 2025 08:07:42 +0000 (10:07 +0200)]
Merge branch 'dnssec-false' into 'master'
datamodel/templates: fix `dnssec: false`
See merge request knot/knot-resolver!1687
Vladimír Čunát [Fri, 9 May 2025 06:50:21 +0000 (08:50 +0200)]
datamodel/templates: fix `dnssec: false`
Vladimír Čunát [Tue, 29 Apr 2025 10:50:36 +0000 (12:50 +0200)]
Merge !1684: tests/integration/deckard: update to latest master
Vladimír Čunát [Tue, 29 Apr 2025 10:38:29 +0000 (12:38 +0200)]
tests/integration/deckard: update to latest master
Hack-compatibility with python >= 3.11
Aleš Mrázek [Thu, 24 Apr 2025 09:32:24 +0000 (11:32 +0200)]
Merge branch 'release-6.0.12' into 'master'
Release 6.0.12
See merge request knot/knot-resolver!1680