]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Vaclav Sraier [Tue, 15 Nov 2022 16:55:31 +0000 (17:55 +0100)]
Merge branch 'manager-install-with-meson' into 'manager'
manager: build manager and install its files with meson
See merge request knot/knot-resolver!1346
Vladimír Čunát [Tue, 15 Nov 2022 08:50:01 +0000 (09:50 +0100)]
Merge !1360: doc/build.rst nit: add dnsdist as optional dependency
Oto Šťáva [Tue, 15 Nov 2022 08:28:11 +0000 (09:28 +0100)]
doc/build.rst nit: add dnsdist as optional dependency
Vladimír Čunát [Mon, 7 Nov 2022 17:30:01 +0000 (18:30 +0100)]
Merge !1356: ci improvements, mainly for respdiff
Vladimír Čunát [Sat, 5 Nov 2022 06:21:43 +0000 (07:21 +0100)]
doc nit: tweak the link to dnsflagday.net
As the web is now, combination without www doesn't redirect https
(only http). So let's switch to the final URL; apex is problematic.
Vladimír Čunát [Thu, 27 Oct 2022 16:08:32 +0000 (18:08 +0200)]
ci respdiff+resperf: make the skipped cases orange
Vladimír Čunát [Wed, 26 Oct 2022 15:38:49 +0000 (17:38 +0200)]
ci respdiff+resperf: make them run manually
In that case there's no need to wait for other jobs, too.
Vladimír Čunát [Wed, 26 Oct 2022 16:45:21 +0000 (18:45 +0200)]
ci: make jobs interruptible by default
We're usually not interested in CI on older commits,
and this default will help cancelling expensive respdiff jobs.
Also add default runner tags to make them less likely
to get underspecified. For example, each job should choose
one option in the docker/lxc and amd64/arm64 pairs.
Vladimír Čunát [Wed, 26 Oct 2022 15:55:35 +0000 (17:55 +0200)]
ci pytests: migrate away from LXC runner
This reverts commit
15c1353544be , with some modifications.
On LXC we've had issues with
FileExistsError: [Errno 17] File exists: '/tmp/pytest-kresd-portdir'
.. which disappear with this commit. (I don't know how/why.)
Vladimír Čunát [Thu, 3 Nov 2022 09:04:42 +0000 (10:04 +0100)]
Merge !1357: doc XDP: update the list of required capabilities
Aleš Mrázek [Sat, 29 Oct 2022 23:39:16 +0000 (01:39 +0200)]
manager: lint fail fix
Aleš Mrázek [Sat, 29 Oct 2022 23:15:44 +0000 (01:15 +0200)]
manager/gitlab-ci.yml: poetry install only deps
Aleš Mrázek [Sat, 29 Oct 2022 23:14:08 +0000 (01:14 +0200)]
manager: ci: poetry version fixed to 1.1.12
Aleš Mrázek [Thu, 27 Oct 2022 11:02:15 +0000 (13:02 +0200)]
manager/scripts/run: build manager with meson
Aleš Mrázek [Wed, 26 Oct 2022 10:57:02 +0000 (12:57 +0200)]
manager: scripts: 'docs' is no longer needed
Vladimír Čunát [Wed, 26 Oct 2022 10:07:09 +0000 (12:07 +0200)]
distro deb: add python3-dev dependency
Otherwise it's possible to end up with an error (e.g. Ubuntu 22.04):
knot_resolver_manager/kresd_controller/supervisord/plugin/notifymodule.c:2:10:
fatal error: Python.h: No such file or directory
Aleš Mrázek [Tue, 25 Oct 2022 22:45:12 +0000 (00:45 +0200)]
manager: meson: use existing script to check dependencies
tests/packaging/dependencies.py: argument for path to setup.py added
Aleš Mrázek [Fri, 21 Oct 2022 13:12:57 +0000 (15:12 +0200)]
doc/build.rst: 'python.install_env' info no needed
Aleš Mrázek [Fri, 21 Oct 2022 13:10:47 +0000 (15:10 +0200)]
doc/build.rst: some additional informations
link to pyproject.toml, tip about pipx
Aleš Mrázek [Fri, 21 Oct 2022 12:43:01 +0000 (14:43 +0200)]
manager: meson.build files removed
Aleš Mrázek [Fri, 21 Oct 2022 12:17:57 +0000 (14:17 +0200)]
meson: manager_client option removed
Aleš Mrázek [Fri, 21 Oct 2022 12:08:31 +0000 (14:08 +0200)]
manager/meson.build: installation script added
subdir removed, python3 deps removed
Aleš Mrázek [Thu, 20 Oct 2022 14:49:26 +0000 (16:49 +0200)]
manager: scripts: add installation script
Aleš Mrázek [Tue, 18 Oct 2022 17:29:26 +0000 (19:29 +0200)]
doc/build.rst: note about meson python module
Aleš Mrázek [Fri, 14 Oct 2022 17:40:14 +0000 (19:40 +0200)]
manager/cli: meson: executable for 'kresctl'
Aleš Mrázek [Fri, 14 Oct 2022 12:51:09 +0000 (14:51 +0200)]
doc/build.rst: enable to build manager with meson
Aleš Mrázek [Fri, 14 Oct 2022 12:20:03 +0000 (14:20 +0200)]
manager: meson: add python deps
Aleš Mrázek [Fri, 14 Oct 2022 12:16:14 +0000 (14:16 +0200)]
meson: disable manager build by default
Aleš Mrázek [Mon, 10 Oct 2022 13:26:08 +0000 (15:26 +0200)]
manager: build python modules with meson
Aleš Mrázek [Wed, 5 Oct 2022 09:35:18 +0000 (11:35 +0200)]
doc/build.rst: Building with 'Meson' section added
manager dependencies added
Aleš Mrázek [Tue, 4 Oct 2022 13:34:46 +0000 (15:34 +0200)]
doc/build.rst: build with 'apkg' added
Aleš Mrázek [Mon, 3 Oct 2022 20:38:37 +0000 (22:38 +0200)]
manager: meson.build added
meson_options.txt: 'manager' option added
Vladimír Čunát [Thu, 27 Oct 2022 15:31:07 +0000 (17:31 +0200)]
doc XDP: update the list of required capabilities
We're the same as knotd in this; it evolved a bit
with libknot and kernel versions. Taken from:
https://www.knot-dns.cz/docs/3.2/singlehtml/#mode-xdp-pre-requisites
Vladimír Čunát [Tue, 25 Oct 2022 07:09:49 +0000 (09:09 +0200)]
Merge !1355: daemon/network: fix heap-buffer-overflow in endpoint key generation
Oto Šťáva [Thu, 20 Oct 2022 11:06:31 +0000 (13:06 +0200)]
daemon/network: fix heap-buffer-overflow in endpoint key generation
Reproducible by listening on an interface by name, ASAN reports a
heap-buffer-overflow. This was a regression caused by !1286, which did
not account for null-terminators properly.
Vladimír Čunát [Fri, 14 Oct 2022 11:57:03 +0000 (13:57 +0200)]
Merge !1349: modules/dns64: add recommendation to also disable DNS64 via IPv4
Tom Herbers [Sat, 8 Oct 2022 12:43:52 +0000 (14:43 +0200)]
modules/dns64: add recommendation to also disable DNS64 via IPv4
It's resonable to assume that people would also want to disable DNS64 for
IPv4 source addresses if they only enable it for some IPv6 sources.
Close https://github.com/CZ-NIC/knot-resolver/pull/83
Vladimír Čunát [Fri, 14 Oct 2022 11:22:50 +0000 (13:22 +0200)]
Merge !1352: ci nixos-unstable:pkgbuild: fixup recent regression
Vladimír Čunát [Fri, 14 Oct 2022 11:16:38 +0000 (13:16 +0200)]
ci nixos-unstable:pkgbuild: fixup recent regression
https://gitlab.nic.cz/knot/knot-resolver/-/jobs/802541#L272
Aleš Mrázek [Wed, 12 Oct 2022 14:03:37 +0000 (16:03 +0200)]
Merge branch 'manager-unified-logging' into 'manager'
manager: unified logging
See merge request knot/knot-resolver!1350
Vasek Sraier [Wed, 12 Oct 2022 10:18:51 +0000 (12:18 +0200)]
manager: supervisord: renamed gc subprocess to cache-gc
Vasek Sraier [Wed, 12 Oct 2022 10:09:45 +0000 (12:09 +0200)]
manager: logging: supervisord forwards stdio even when configured to use syslog in order not to lose any valuable error messages
Vasek Sraier [Wed, 12 Oct 2022 09:50:05 +0000 (11:50 +0200)]
manager: logging: prevent supervisord from creating temporary log files
Vasek Sraier [Tue, 11 Oct 2022 21:28:09 +0000 (23:28 +0200)]
manager: logging: improved formatting
Vasek Sraier [Tue, 11 Oct 2022 12:06:18 +0000 (14:06 +0200)]
manager: unified logging
- when using logging into stdio, supervisord aggregates all logs and tags them
- when logging to syslog, every process logs there directly
Aleš Mrázek [Mon, 10 Oct 2022 18:57:37 +0000 (20:57 +0200)]
Merge branch 'manager-schema-version' into 'manager'
Config schema versioning
See merge request knot/knot-resolver!1347
Vasek Sraier [Sun, 9 Oct 2022 11:44:16 +0000 (13:44 +0200)]
manager: config schema: add schema version to the top level to allow for future changes
Aleš Mrázek [Mon, 10 Oct 2022 18:24:33 +0000 (20:24 +0200)]
Merge branch 'master' into manager
Vladimír Čunát [Mon, 10 Oct 2022 13:59:41 +0000 (15:59 +0200)]
Merge !1348: ci/images/debian-11: drop go
Vladimír Čunát [Fri, 7 Oct 2022 13:24:00 +0000 (15:24 +0200)]
ci/images/debian-11: drop go
I don't know how to fix building the image with it.
A few things were tried around different go versions (from -backports).
Vladimír Čunát [Mon, 3 Oct 2022 14:41:37 +0000 (16:41 +0200)]
Merge !1341: CI: enable new packaging tests using apkg
Vasek Sraier [Fri, 30 Sep 2022 15:58:05 +0000 (17:58 +0200)]
manager: removed specific versions of libraries from dependency list
Jakub Ružička [Fri, 30 Sep 2022 15:35:22 +0000 (17:35 +0200)]
CI: don't (re)install apkg
apkg is already installed in apkg LXC images, no need to install it here.
Also use LXC image for make-archive.
Jakub Ružička [Fri, 30 Sep 2022 14:31:07 +0000 (16:31 +0200)]
CI: update opensuse to 15.4
Jakub Ružička [Thu, 29 Sep 2022 16:03:15 +0000 (18:03 +0200)]
CI: remove old distros unsupported by manager
Vasek Sraier [Thu, 29 Sep 2022 14:21:10 +0000 (16:21 +0200)]
manager: supervisord sd_notify extension: removed assert in favor of an explicit if
Jakub Ružička [Wed, 18 May 2022 11:04:47 +0000 (13:04 +0200)]
CI: enable new packaging tests using apkg
See `distro/tests/README.md` for more info.
New CI pkg stage tests
apkg install --build-dep
apkg test --test-dep
on apkg LXC images using LXC gitlab runner.
A single pkg:make-archive job creates archive shared in all pkg jobs.
A similar change for Knot DNS: https://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1488
See: https://gitlab.nic.cz/knot/knot-resolver/-/issues/612
Jakub Ružička [Thu, 1 Sep 2022 14:37:37 +0000 (16:37 +0200)]
CI: add scripts/enable-repo.py
Requiring only python3-distro, it can be used to enable
upstream repos on any supported system.
Intended for CI.
Jakub Ružička [Tue, 27 Sep 2022 13:16:06 +0000 (15:16 +0200)]
CI: disable OBS pkgtest
in favor of apkg-powered packaging tests without OBS.
See: https://gitlab.nic.cz/knot/knot-resolver/-/issues/612
Jakub Ružička [Tue, 27 Sep 2022 13:14:54 +0000 (15:14 +0200)]
tests: remove distro/tests
Cleanup before introduction of new packaging tests.
See: https://gitlab.nic.cz/knot/knot-resolver/-/issues/612
Jakub Ružička [Fri, 26 Aug 2022 14:58:54 +0000 (16:58 +0200)]
tests: remove tests/packaging
Cleanup before introduction of new packaging tests.
See: https://gitlab.nic.cz/knot/knot-resolver/-/issues/612
Vasek Sraier [Fri, 23 Sep 2022 09:34:32 +0000 (11:34 +0200)]
Merge branch 'master' into manager
Vaclav Sraier [Wed, 21 Sep 2022 16:12:08 +0000 (18:12 +0200)]
Merge branch 'manager-kresctl-packaging-fixes' into 'manager'
fix kresctl packaging
See merge request knot/knot-resolver!1344
Vasek Sraier [Wed, 21 Sep 2022 14:47:02 +0000 (16:47 +0200)]
Revert "tests/packaging: skip workers.sh"
This reverts commit
16ea2c8fc493f3175bfa510682579317ef58587a .
Vasek Sraier [Wed, 21 Sep 2022 14:46:05 +0000 (16:46 +0200)]
manager packaging: kresctl fix
- downgraded pinned version of supervisord
- installing procps in CI
Aleš Mrázek [Wed, 21 Sep 2022 12:09:25 +0000 (14:09 +0200)]
Merge branch 'release-5.5.3' into 'master'
release 5.5.3
See merge request knot/knot-resolver!1343
Vladimír Čunát [Fri, 16 Sep 2022 11:28:52 +0000 (13:28 +0200)]
release 5.5.3
Vladimír Čunát [Wed, 17 Aug 2022 14:34:06 +0000 (16:34 +0200)]
lib/zonecut + iterator: limit large NS sets
It's a mitigation for CVE-2022-40188 and similar DoS attempts.
It's using really trivial approaches, at least for now.
Aleš Mrázek [Tue, 30 Aug 2022 12:42:25 +0000 (14:42 +0200)]
Merge branch 'manager-better-api' into 'manager'
manager: fully featured HTTP API
See merge request knot/knot-resolver!1331
Aleš Mrázek [Tue, 30 Aug 2022 12:28:20 +0000 (14:28 +0200)]
tests/packaging: skip workers.sh
Aleš Mrázek [Mon, 29 Aug 2022 13:04:49 +0000 (15:04 +0200)]
doc/gettingstarted-config.rst: json schema added, API payload
Aleš Mrázek [Fri, 26 Aug 2022 21:36:07 +0000 (23:36 +0200)]
doc/gettingstarted-config.rst: initial info about API
Vladimír Čunát [Fri, 26 Aug 2022 10:46:42 +0000 (12:46 +0200)]
Merge !1340: ci macOS: add Knot 3.2
Oto Šťáva [Fri, 26 Aug 2022 10:46:42 +0000 (12:46 +0200)]
ci macOS: add Knot 3.2
Vladimír Čunát [Thu, 25 Aug 2022 19:17:10 +0000 (21:17 +0200)]
Merge !1339: cache test: loosen conditions on cache usage
Vladimír Čunát [Thu, 25 Aug 2022 19:14:25 +0000 (21:14 +0200)]
NEWS: mention config_tests for macOS
Vladimír Čunát [Thu, 25 Aug 2022 16:02:03 +0000 (18:02 +0200)]
cache test: loosen conditions on cache usage
This fixes config_tests on aarch64 macOS.
The key difference is that they use 16k pages,
so LMDB space usage also behaves a bit different.
Vasek Sraier [Mon, 22 Aug 2022 22:26:59 +0000 (00:26 +0200)]
manager dependencies: accept just about any pyyaml (problems with kresctl refusing to launch due to version mismatch)
Vasek Sraier [Mon, 22 Aug 2022 21:52:13 +0000 (23:52 +0200)]
packaging tests: kresctl changing number of workers
Vasek Sraier [Wed, 17 Aug 2022 08:44:26 +0000 (10:44 +0200)]
kresctl: argument parsing infrastracture and init of tab completion
Vasek Sraier [Fri, 12 Aug 2022 18:57:26 +0000 (20:57 +0200)]
kresctl: basic implementation using the new HTTP API
Vasek Sraier [Fri, 12 Aug 2022 09:08:03 +0000 (11:08 +0200)]
http api improvements and tests
- adds versions to URL's (closes #759)
- adds a basic packaging test for consistent etags
- adds a basic packaging test for working metrics
- fix bugs with API implementation
- fix bugs with /metrics endpoint
Vasek Sraier [Sun, 7 Aug 2022 15:15:12 +0000 (17:15 +0200)]
manager: config API: new query capability inspired by Caddy's HTTP API
Aleš Mrázek [Thu, 25 Aug 2022 07:26:30 +0000 (09:26 +0200)]
Merge branch 'manager-doc' into 'manager'
doc: sphinx-tabs added
See merge request knot/knot-resolver!1335
Aleš Mrázek [Wed, 24 Aug 2022 19:52:41 +0000 (21:52 +0200)]
doc/gettingstarted-config: configuration-chapter reference correction
Vladimír Čunát [Wed, 24 Aug 2022 16:04:34 +0000 (18:04 +0200)]
Merge !1338: macOS nits
Aleš Mrázek [Wed, 24 Aug 2022 13:32:46 +0000 (15:32 +0200)]
doc/gettingstarted-config.rst: network interfaces removed
- added reference to usecases chapter
Vladimír Čunát [Wed, 24 Aug 2022 09:51:49 +0000 (11:51 +0200)]
tests/config: skip `freebind` sub-test on macOS
That option isn't supported there, so the test wouldn't work.
Now the config tests work for me on x86 macOS.
Vladimír Čunát [Wed, 24 Aug 2022 09:50:14 +0000 (11:50 +0200)]
daemon/http nit: silence a warning
Enums are more like ints anyway (in standard),
even when drawn from a small subset.
Vladimír Čunát [Wed, 24 Aug 2022 08:58:26 +0000 (10:58 +0200)]
daemon/io: log another message if `freebind` isn't supported
So far the message wasn't pointing to freebind at all:
[net ] bind to '::1@53' (UDP): Operation not supported
I used preprocessor to avoid duplication and unused warnings.
Another way would be to ignore the freebind option if not supported,
but I think it's better to convince users not to specify it.
Aleš Mrázek [Thu, 18 Aug 2022 13:13:27 +0000 (15:13 +0200)]
doc: usecases: network interfaces added
Aleš Mrázek [Tue, 16 Aug 2022 11:43:52 +0000 (13:43 +0200)]
Merge branch 'release-5.5.2' into 'master'
release 5.5.2
See merge request knot/knot-resolver!1337
Vladimír Čunát [Tue, 16 Aug 2022 07:46:29 +0000 (09:46 +0200)]
ci OBS: replace Ubuntu 21.10 by 22.04
21.10 isn't supported anymore, which is probably why it's failing.
Vladimír Čunát [Tue, 16 Aug 2022 07:40:06 +0000 (09:40 +0200)]
ci OBS: replace Fedora 34 by 36
We've already done that on OBS side, which is probably why it's failing.
Aleš Mrázek [Mon, 15 Aug 2022 13:52:16 +0000 (15:52 +0200)]
release 5.5.2
Vladimír Čunát [Mon, 15 Aug 2022 09:45:32 +0000 (11:45 +0200)]
doc nit: fix broken link, luacov home moved
https://github.com/lunarmodules/luacov/issues/99
Vladimír Čunát [Sun, 14 Aug 2022 15:15:18 +0000 (17:15 +0200)]
NEWS nit: prefer imperative formulations
We're mostly using those in NEWS and first line of commit messages.
I'm not sure if they're much better than alternatives, but at least
consistency is nice.
Vladimír Čunát [Thu, 11 Aug 2022 09:57:09 +0000 (11:57 +0200)]
Merge !1328: daemon/worker: drop caching of kr_request mempools
Vladimír Čunát [Wed, 3 Aug 2022 14:52:01 +0000 (16:52 +0200)]
daemon/worker: drop caching of kr_request mempools
This caused a huge increase in real memory usage in case of queries
arriving to kresd while being disconnected from internet.
The usage was slowly creeping up, even over 2G.
Interesting past commits:
b350d38d and two preceding.
There apparently was no real memory leak. I assume that reusal of
long-living mempools is risky in terms of memory fragmentation,
though the extent of the issue surprised me very much.
The issue seemed the same with normal glibc and jemalloc.
I generally dislike ad-hoc optimization attempts like these freelists.
Now the allocator can better decide *itself* how to reuse memory.
Vladimír Čunát [Wed, 3 Aug 2022 14:39:02 +0000 (16:39 +0200)]
daemon/worker: drop a long unused #define