]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Vladimír Čunát [Tue, 1 Aug 2023 07:21:37 +0000 (09:21 +0200)]
Merge !1433: datamodel: prediction moved to cache section
Aleš Mrázek [Fri, 28 Jul 2023 14:01:18 +0000 (16:01 +0200)]
datamodel: templates: separator for NSID removed
Aleš Mrázek [Fri, 28 Jul 2023 13:57:19 +0000 (15:57 +0200)]
manager: datamodel: prediction moved to cache
Aleš Mrázek [Thu, 27 Jul 2023 14:32:11 +0000 (16:32 +0200)]
Merge branch 'manager-validation-errors-improvements' into '6.0'
manager: configuration validation errors improvements
See merge request knot/knot-resolver!1432
Aleš Mrázek [Thu, 27 Jul 2023 11:51:27 +0000 (13:51 +0200)]
manager: better logging for config validation
Aleš Mrázek [Tue, 25 Jul 2023 08:20:16 +0000 (10:20 +0200)]
replace '_' with '-' in validation error path
This is not the best way to do it, but it is the easiest.
Aleš Mrázek [Mon, 24 Jul 2023 21:36:19 +0000 (23:36 +0200)]
datamodel: types: verbose errors for paths
Aleš Mrázek [Tue, 25 Jul 2023 11:03:37 +0000 (13:03 +0200)]
Merge branch 'manager-scripts-run' into '6.0'
manager/scripts/run: create runtime directories
See merge request knot/knot-resolver!1431
Aleš Mrázek [Mon, 24 Jul 2023 21:24:29 +0000 (23:24 +0200)]
manager/scripts/run: create runtime directories
Vladimír Čunát [Tue, 25 Jul 2023 08:02:17 +0000 (10:02 +0200)]
Merge !1430: manager: update mentions of Python versions
Oto Šťáva [Mon, 24 Jul 2023 08:15:20 +0000 (10:15 +0200)]
manager: ignore .egg-info directory
Oto Šťáva [Mon, 24 Jul 2023 08:14:57 +0000 (10:14 +0200)]
manager: add new Python versions
Oto Šťáva [Mon, 24 Jul 2023 07:40:57 +0000 (09:40 +0200)]
manager: replace mentions of Python 3.6 with 3.7
Support for Python <3.7 has been dropped - mentions of 3.6 are therefore
outdated.
Vladimír Čunát [Sun, 23 Jul 2023 13:50:59 +0000 (15:50 +0200)]
Merge !1428: manager: config file can be also in JSON
Aleš Mrázek [Tue, 18 Jul 2023 11:44:15 +0000 (13:44 +0200)]
manager: config file can be also in JSON
First try parsing as JSON, then as YAML.
Vladimír Čunát [Sun, 23 Jul 2023 09:10:14 +0000 (11:10 +0200)]
Merge !1426: manager: use .yaml suffix for config files
Vladimír Čunát [Sun, 23 Jul 2023 08:57:23 +0000 (10:57 +0200)]
doc: .yml -> .yaml
At least in parts where it wouldn't conflict with other doc WIP.
Aleš Mrázek [Tue, 18 Jul 2023 08:17:03 +0000 (10:17 +0200)]
manager: use .yaml suffix for config files
Vladimír Čunát [Wed, 19 Jul 2023 16:48:54 +0000 (18:48 +0200)]
Merge !1429: datamodel: local-data: render ttl and nodata
Aleš Mrázek [Wed, 19 Jul 2023 15:30:57 +0000 (17:30 +0200)]
datamodel: local-data: render ttl and nodata
Vladimír Čunát [Thu, 13 Jul 2023 08:38:42 +0000 (10:38 +0200)]
Merge !1291: manager: datamodel: validate or escape strings in datamodel
Aleš Mrázek [Fri, 23 Jun 2023 10:02:08 +0000 (12:02 +0200)]
manager: datamodel: types: multiline method for EscapedStr
It escapes double square brackets.
Aleš Mrázek [Tue, 20 Jun 2023 13:16:12 +0000 (15:16 +0200)]
manager: datamodel: types: EscapedStr32B type
Aleš Mrázek [Tue, 20 Jun 2023 12:52:54 +0000 (14:52 +0200)]
manager: datamodel: 'str' type removed from schemas
Aleš Mrázek [Tue, 20 Jun 2023 12:30:18 +0000 (14:30 +0200)]
manager: datamodel: types: EscapedStr type
Aleš Mrázek [Tue, 20 Jun 2023 10:11:56 +0000 (12:11 +0200)]
manager: datamodel: types: StringLengthBase type
Aleš Mrázek [Tue, 20 Jun 2023 09:20:15 +0000 (11:20 +0200)]
manager: datamodel: base types refactored
Aleš Mrázek [Tue, 20 Jun 2023 08:37:50 +0000 (10:37 +0200)]
manager: datamodel: types: PinSha256 custom type
Aleš Mrázek [Tue, 13 Jun 2023 15:26:27 +0000 (17:26 +0200)]
manager: tests: check that there is no 'str' in datamodel
Aleš Mrázek [Mon, 12 Jun 2023 10:06:01 +0000 (12:06 +0200)]
manager: datamodel: types: hyphen added to IDPattern
Vladimír Čunát [Thu, 13 Jul 2023 06:53:05 +0000 (08:53 +0200)]
Merge !1421: doc/config-policy-new: add this section
Vladimír Čunát [Fri, 7 Jul 2023 14:30:22 +0000 (16:30 +0200)]
doc/config-policy-new: add this section
This includes some reformulations and adjustments from ostava.
Vladimír Čunát [Wed, 12 Jul 2023 14:24:44 +0000 (16:24 +0200)]
lib/rules kr_view_insert_action(): fix subnet truncation
The rule DB keys were truncated by one byte.
Unfortunately that often kept them behaving OK so it went unnoticed;
but in particular any /0 views got ignored as a result.
Vladimír Čunát [Wed, 12 Jul 2023 08:35:25 +0000 (10:35 +0200)]
Merge !1423: distro/pkg/rpm: require setuptools on suse
Jakub Ružička [Tue, 11 Jul 2023 10:43:24 +0000 (12:43 +0200)]
distro/pkg/rpm: require setuptools on suse
Otherwise:
Traceback (most recent call last):
File "/builddir/build/BUILD/knot-resolver-6.0.1.dev90+5003e3/manager/setup.py", line 2, in <module>
from setuptools import setup
ModuleNotFoundError: No module named 'setuptools'
Vladimír Čunát [Tue, 11 Jul 2023 08:54:13 +0000 (10:54 +0200)]
daemon/http nit: fix a warning
I was careless with the merge of master -> 6.0
Vladimír Čunát [Tue, 11 Jul 2023 08:52:10 +0000 (10:52 +0200)]
fixup! Merge branch 'master' into 6.0
Vladimír Čunát [Tue, 11 Jul 2023 08:17:57 +0000 (10:17 +0200)]
Merge branch 'master' into 6.0
Vladimír Čunát [Tue, 11 Jul 2023 08:13:26 +0000 (10:13 +0200)]
Merge !1422: avoid knot_pkt_default_padding_size()
Vladimír Čunát [Tue, 11 Jul 2023 08:08:14 +0000 (10:08 +0200)]
Merge !1418: avoid 5.x style config and systemd units, by default
Vladimír Čunát [Wed, 28 Jun 2023 08:17:41 +0000 (10:17 +0200)]
deprecate legacy systemd units
- separate meson option, disabled by default
- deb,rpm: don't install these legacy units
- deb,rpm: use the new knot-resolver.service on all the places
Vladimír Čunát [Wed, 28 Jun 2023 07:51:06 +0000 (09:51 +0200)]
kresd.conf: don't install by default, drop from packages
Installing a legacy lua config by default would be confusing.
Vladimír Čunát [Wed, 28 Jun 2023 15:48:51 +0000 (17:48 +0200)]
avoid knot_pkt_default_padding_size()
The reserved size in packet is a messy thing, broken by
https://gitlab.nic.cz/knot/knot-dns/-/commit/
ded5fbf01d00a875f141
Fortunately this function is trivial, so we can inline what we need.
It gets complicated by an earlier typo fix, though.
Vladimír Čunát [Wed, 28 Jun 2023 16:24:00 +0000 (18:24 +0200)]
Merge !1419: manager: datamodel: missing options for dns64
Aleš Mrázek [Wed, 28 Jun 2023 13:35:38 +0000 (15:35 +0200)]
manager: datamodel: missing options for dns64
Vladimír Čunát [Wed, 28 Jun 2023 07:38:47 +0000 (09:38 +0200)]
Merge !1409: kresc: remove this client
Vladimír Čunát [Tue, 13 Jun 2023 07:09:51 +0000 (09:09 +0200)]
kresc: remove this client
It's never gone beyond experiment/alpha and now we have kresctl
which should be much better. Keeping installed bin/kresc could
confuse users.
Vladimír Čunát [Wed, 28 Jun 2023 07:31:39 +0000 (09:31 +0200)]
Merge !1417: distro/pkg/deb: make manager package arch specific
Jakub Ružička [Mon, 26 Jun 2023 14:06:26 +0000 (16:06 +0200)]
distro/pkg/deb: make manager package arch specific
The supervisor plugin is compiled and arch specific.
Vladimír Čunát [Mon, 26 Jun 2023 10:17:18 +0000 (12:17 +0200)]
Merge !1324: Protocol layers
Oto Šťáva [Fri, 23 Jun 2023 10:20:35 +0000 (12:20 +0200)]
Merge remote-tracking branch 'origin/6.0' into daemon-refactor-2
Vladimír Čunát [Fri, 23 Jun 2023 10:11:55 +0000 (12:11 +0200)]
Merge !1402: packaging changes and improvements for v6
Oto Šťáva [Fri, 23 Jun 2023 09:02:34 +0000 (11:02 +0200)]
daemon/session2: make copies short-lived buffers when needed
Vladimír Čunát [Thu, 22 Jun 2023 16:29:22 +0000 (18:29 +0200)]
distro/pkg/rpm: cleanup an old TODO
Jakub Ružička [Thu, 22 Jun 2023 14:24:56 +0000 (16:24 +0200)]
Bump version to 6.0.1
No need for "a1", 6.0.x versions are reserved for alpha.
Jakub Ružička [Tue, 13 Jun 2023 19:23:07 +0000 (21:23 +0200)]
scripts: shorten devel version string
It's now also PEP440 compatible.
Before:
6.0.0.
1686682076 .
ad1eaf76 .tar.xz
Now:
6.0.0.dev157+1bcc45.tar.xz
Jakub Ružička [Tue, 23 May 2023 11:42:28 +0000 (13:42 +0200)]
scripts: improve make-archive.sh script
Copy resulting tarball into pkg/archives/dev and delete build_dist/ dir
to keep working copy clean.
Vladimír Čunát [Thu, 22 Jun 2023 14:02:40 +0000 (16:02 +0200)]
upgrade-4-to-5: remove the rest of occurrences
Jakub Ružička [Thu, 22 Jun 2023 13:27:38 +0000 (15:27 +0200)]
distro/tests: improve systemd service tests debug
Vladimír Čunát [Thu, 15 Jun 2023 10:35:32 +0000 (12:35 +0200)]
distro/pkg/rpm: drop %check
By definition it doesn't allow some kinds of tests.
Jakub Ružička [Thu, 22 Jun 2023 12:17:35 +0000 (14:17 +0200)]
distro/pkg/rpm: drop redundant file listing
This prevents
RPM build warnings:
File listed twice: /usr/lib64/knot-resolver
Jakub Ružička [Wed, 14 Jun 2023 11:54:21 +0000 (13:54 +0200)]
distro/pkg/rpm: align rpm packaging with deb
Jakub Ružička [Tue, 23 May 2023 10:44:47 +0000 (12:44 +0200)]
distro/pkg/deb: maintainer scripts cleanup
Remove 4 to 5 upgrade scripts and more.
Jakub Ružička [Wed, 17 May 2023 11:00:27 +0000 (13:00 +0200)]
distro/pkg/deb: debian packaging changes for v6
Oto Šťáva [Thu, 22 Jun 2023 09:25:33 +0000 (11:25 +0200)]
daemon/session2: prevent submitting payloads when session is closing
Oto Šťáva [Thu, 22 Jun 2023 07:43:18 +0000 (09:43 +0200)]
Merge remote-tracking branch 'origin/6.0' into daemon-refactor-2
Vladimír Čunát [Thu, 22 Jun 2023 07:05:12 +0000 (09:05 +0200)]
Merge !1416: docker: minor fixes
Vladimír Čunát [Mon, 19 Jun 2023 12:00:40 +0000 (14:00 +0200)]
ci docker: make it work with kresd 6.0
The lua CLI is not exposed anymore.
Vladimír Čunát [Mon, 19 Jun 2023 11:17:41 +0000 (13:17 +0200)]
Dockerfile: really expose all the services
Aleš Mrázek [Mon, 19 Jun 2023 12:11:37 +0000 (14:11 +0200)]
Merge branch 'manager-modeling-strict-validation' into '6.0'
manager: datamodel: global option for config validation strictness
See merge request knot/knot-resolver!1415
Aleš Mrázek [Mon, 19 Jun 2023 10:04:47 +0000 (12:04 +0200)]
manager: allowed to get 'rundir' from default config
Aleš Mrázek [Thu, 15 Jun 2023 14:37:07 +0000 (16:37 +0200)]
manager: datamodel: fields types changes
Aleš Mrázek [Fri, 16 Jun 2023 12:43:53 +0000 (14:43 +0200)]
manager: cli: validate: --no-strict arg added
Aleš Mrázek [Fri, 16 Jun 2023 12:38:33 +0000 (14:38 +0200)]
manager: datamodel: config validation strictness
The new global variable is intended to
distinguish between strict and normal validation.
Vladimír Čunát [Thu, 15 Jun 2023 15:22:44 +0000 (17:22 +0200)]
Merge !1406: hints: fix names inside home.arpa.
Vladimír Čunát [Thu, 15 Jun 2023 15:15:56 +0000 (17:15 +0200)]
Merge !1411: ci: refresh versions of tested distros
Vladimír Čunát [Tue, 13 Jun 2023 16:04:36 +0000 (18:04 +0200)]
ci: cleanup forgotten conflict
Vladimír Čunát [Tue, 13 Jun 2023 16:03:40 +0000 (18:03 +0200)]
ci: comment on platforms defaulting to python 3.6
Vladimír Čunát [Tue, 13 Jun 2023 15:59:31 +0000 (17:59 +0200)]
ci pkg:fedora-*: switch to the current versions
Vladimír Čunát [Tue, 13 Jun 2023 15:53:53 +0000 (17:53 +0200)]
ci pkg:debian-12: add
Vladimír Čunát [Sat, 10 Jun 2023 08:34:12 +0000 (10:34 +0200)]
hints: fix names inside home.arpa.
Reported on https://forum.turris.cz/t/knot-resolver-with-local-fqdn-hostnames/19034/8
I write it as three comparisons, as it seems like a simple way of
still running only a single comparison in the typical case of QNAME
not falling under .arpa.
Tested just quickly, manually. This chunk of code already is replaced
for kresd >= 6.0.0.
Aleš Mrázek [Thu, 15 Jun 2023 10:16:36 +0000 (12:16 +0200)]
Merge branch 'manager-kresctl-convert-context' into '6.0'
manager: kresctl: global validation context for convert cmd
See merge request knot/knot-resolver!1414
Aleš Mrázek [Thu, 15 Jun 2023 10:14:10 +0000 (12:14 +0200)]
manager: cli: convert: set global validation context
Aleš Mrázek [Thu, 15 Jun 2023 09:54:37 +0000 (11:54 +0200)]
Merge branch 'manager-datamodel-local-data' into '6.0'
manager: datamodel: local-data: missing config options added
See merge request knot/knot-resolver!1413
Vladimír Čunát [Thu, 15 Jun 2023 09:31:57 +0000 (11:31 +0200)]
manager /local-data/addresses*: be stricter about errors
In versions before 6.x these errors intentionally didn't cause
the startup fail, but I think we can be more strict now.
Aleš Mrázek [Wed, 14 Jun 2023 14:42:48 +0000 (16:42 +0200)]
manager: datamodel: local-data: missing config options added
Vladimír Čunát [Wed, 14 Jun 2023 08:12:44 +0000 (10:12 +0200)]
Merge !1410: manager: new-policy cleanup
Aleš Mrázek [Tue, 13 Jun 2023 14:08:05 +0000 (16:08 +0200)]
manager: update dev config with policy rules
Aleš Mrázek [Tue, 13 Jun 2023 12:46:49 +0000 (14:46 +0200)]
manager: unnecessary scripts removed
Vladimír Čunát [Wed, 14 Jun 2023 08:10:25 +0000 (10:10 +0200)]
Merge !1412: manager: cli: global validation context
Aleš Mrázek [Tue, 13 Jun 2023 21:52:03 +0000 (23:52 +0200)]
manager: cli: global validation context
Vladimír Čunát [Tue, 13 Jun 2023 13:41:08 +0000 (15:41 +0200)]
Merge !1408: ci: drop `doc`; we have `pages` instead now
Vladimír Čunát [Fri, 9 Jun 2023 19:30:01 +0000 (21:30 +0200)]
ci: drop `doc`; we have `pages` instead now
The `pages` job works. We might consolidate this later,
also e.g. drop the doc dependencies from the default image
if we won't really use that image for docs anymore.
Vladimír Čunát [Mon, 12 Jun 2023 09:00:52 +0000 (11:00 +0200)]
Merge !1407: new policy engine
Vladimír Čunát [Fri, 9 Jun 2023 09:01:06 +0000 (11:01 +0200)]
lib/rules: DB size+path: make configurable, bump to 100 MiB
Ideally we'd expand it as needed, but that seems relatively complicated,
so for now let's go big with the sparse file and allow to override.
Vladimír Čunát [Thu, 8 Jun 2023 10:07:05 +0000 (12:07 +0200)]
lib/cache: improve logging for the LMDB with policy rules
In particular, log them with `[rules ]` instead of `[cache ]`
Vladimír Čunát [Tue, 6 Jun 2023 14:13:57 +0000 (16:13 +0200)]
lib/rules,cache: use transactions, improve assertions
When inserting rules from a config file, process everything
in a single transaction to avoid using inconsistent sets of rules,
especially in a different instance and/or in case some error happens.
Also fix some over-eager assertions (CHECK_RET).
Vladimír Čunát [Wed, 24 May 2023 11:05:13 +0000 (13:05 +0200)]
ci lint:scan-build: fix the error count
The new reports are:
./lib/rules/api.c:301:3: warning: Memory copy function overflows destination buffer
memcpy(key_data_ruleset_end, &KEY_EXACT_MATCH, sizeof(KEY_EXACT_MATCH));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./lib/rules/api.c:506:2: warning: Memory copy function overflows destination buffer
memcpy(key.data, &KEY_EXACT_MATCH, sizeof(KEY_EXACT_MATCH));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./lib/rules/api.c:699:2: warning: Memory copy function overflows destination buffer
memcpy(key.data, &KEY_ZONELIKE_A, sizeof(KEY_ZONELIKE_A));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 warnings generated.
I re-checked those places, and I believe they can never overflow.
I regularly run with ASAN as well, which would catch overflows.
I can't see a simple way of amending the code in a way
that the linter might be happy.
Vladimír Čunát [Wed, 24 May 2023 10:12:42 +0000 (12:12 +0200)]
lib: tweak selection errors when consuming cached answer
Forwarding-related changes uncovered this case
in integration.iter_limits test. Errors can happen also
when consuming data produced by cache, in which case there's
no suitable server to blame for the error.
Vladimír Čunát [Wed, 24 May 2023 14:09:13 +0000 (16:09 +0200)]
lib/rules forwarding: per-IP .tls
We planned it that way for the new config schema - and, why not.