]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
2 years agorelease 5.6.0 obs-knot-resolver-bs4hbr/deployments/2417
Aleš Mrázek [Thu, 26 Jan 2023 12:21:55 +0000 (13:21 +0100)] 
release 5.6.0

2 years agoMerge branch 'reply-errors' into 'master'
Aleš Mrázek [Thu, 26 Jan 2023 12:17:00 +0000 (13:17 +0100)] 
Merge branch 'reply-errors' into 'master'

avoid excessive TCP reconnections in some cases

See merge request knot/knot-resolver!1380

2 years agoNEWS for the past two commits
Vladimír Čunát [Mon, 23 Jan 2023 11:15:47 +0000 (12:15 +0100)] 
NEWS for the past two commits

2 years agodaemon/io: penalize servers that close without reply
Vladimír Čunát [Thu, 19 Jan 2023 17:54:11 +0000 (18:54 +0100)] 
daemon/io: penalize servers that close without reply

2 years agodaemon/worker: call server_selection.error() more
Vladimír Čunát [Thu, 19 Jan 2023 14:45:09 +0000 (15:45 +0100)] 
daemon/worker: call server_selection.error() more

On most fundamental issues like DNS message not parsing,
we did not call this.  Selection needs such information.

2 years agotests/config/doh2.test.lua: restore commented-out randomization
Oto Šťáva [Tue, 15 Nov 2022 07:22:41 +0000 (08:22 +0100)] 
tests/config/doh2.test.lua: restore commented-out randomization

2 years agodaemon: XDP with protolayers
Oto Šťáva [Thu, 20 Oct 2022 10:10:15 +0000 (12:10 +0200)] 
daemon: XDP with protolayers

2 years agodaemon/session2: documentation
Oto Šťáva [Tue, 18 Oct 2022 11:08:34 +0000 (13:08 +0200)] 
daemon/session2: documentation

2 years agodaemon/session2: fix memory leaks in push function
Oto Šťáva [Thu, 13 Oct 2022 12:26:22 +0000 (14:26 +0200)] 
daemon/session2: fix memory leaks in push function

2 years agodaemon/worker: fix being too eager to close connections with worker_submit errors
Oto Šťáva [Thu, 13 Oct 2022 06:37:38 +0000 (08:37 +0200)] 
daemon/worker: fix being too eager to close connections with worker_submit errors

2 years agodaemon/session2: support for various event types in session2_start_timeout
Oto Šťáva [Wed, 12 Oct 2022 11:18:49 +0000 (13:18 +0200)] 
daemon/session2: support for various event types in session2_start_timeout

2 years agodaemon/session2: always log in/out direction
Oto Šťáva [Thu, 6 Oct 2022 11:32:50 +0000 (13:32 +0200)] 
daemon/session2: always log in/out direction

2 years ago.gitlab-ci.yml: reduce expected scan-build errors
Oto Šťáva [Thu, 6 Oct 2022 07:37:42 +0000 (09:37 +0200)] 
.gitlab-ci.yml: reduce expected scan-build errors

The following line is no longer in `daemon/worker.c`, as it has been
replaced by a different mechanism in session2:

    uv_handle_t *ioreq = malloc(is_stream ? sizeof(uv_write_t) : sizeof(uv_udp_send_t));

It was originally causing the following error, which is now fixed:

    warning: Cast a region whose size is not a multiple of the destination type size

2 years agodaemon: nits
Oto Šťáva [Thu, 6 Oct 2022 07:15:35 +0000 (09:15 +0200)] 
daemon: nits

2 years agodaemon/worker: remove unused lines; comment out XDP
Oto Šťáva [Wed, 5 Oct 2022 11:38:27 +0000 (13:38 +0200)] 
daemon/worker: remove unused lines; comment out XDP

2 years agodaemon/http: fix iteration context leaks
Oto Šťáva [Wed, 5 Oct 2022 11:30:26 +0000 (13:30 +0200)] 
daemon/http: fix iteration context leaks

2 years agodaemon: use init_request in more places; docs
Oto Šťáva [Thu, 29 Sep 2022 11:24:07 +0000 (13:24 +0200)] 
daemon: use init_request in more places; docs

2 years agodaemon/tls: fix non-removal of cleaned up iteration contexts from unwrap_queue
Oto Šťáva [Thu, 29 Sep 2022 08:29:24 +0000 (10:29 +0200)] 
daemon/tls: fix non-removal of cleaned up iteration contexts from unwrap_queue

2 years agodaemon nits: fix lint:tidy issues
Oto Šťáva [Tue, 27 Sep 2022 08:35:43 +0000 (10:35 +0200)] 
daemon nits: fix lint:tidy issues

2 years agodaemon: fix DoH not sending entire messages + nits
Oto Šťáva [Tue, 27 Sep 2022 08:06:01 +0000 (10:06 +0200)] 
daemon: fix DoH not sending entire messages + nits

2 years agodaemon: fix DoH truncation and tasklist addition
Oto Šťáva [Thu, 22 Sep 2022 10:12:37 +0000 (12:12 +0200)] 
daemon: fix DoH truncation and tasklist addition

2 years agodaemon/session2 nit: use `const char *` for names
Vladimír Čunát [Mon, 26 Sep 2022 10:31:25 +0000 (12:31 +0200)] 
daemon/session2 nit: use `const char *` for names

That also matches the real type of those string literals.

2 years agodaemon: adapt DNS-over-HTTPS for protocol layers
Oto Šťáva [Wed, 21 Sep 2022 06:50:14 +0000 (08:50 +0200)] 
daemon: adapt DNS-over-HTTPS for protocol layers

Has a few problems that need to be solved:
 - Answers are being truncated, because PROTOLAYER_DNS_DGRAM treats the
   communication as UDP. Since `session->stream` has multiple
   responsibilities, it needs to be split up into two (or more)
   different flags; then we'll be able to use it properly.
 - There is an unsolved use-after-free

2 years agodaemon/session: remove (superseded by session2)
Oto Šťáva [Thu, 15 Sep 2022 07:46:07 +0000 (09:46 +0200)] 
daemon/session: remove (superseded by session2)

2 years agodaemon/session2: cleanup; clarify naming and docs
Oto Šťáva [Wed, 14 Sep 2022 07:45:42 +0000 (09:45 +0200)] 
daemon/session2: cleanup; clarify naming and docs

2 years agodaemon/session2: docs clarifications
Oto Šťáva [Tue, 13 Sep 2022 11:22:40 +0000 (13:22 +0200)] 
daemon/session2: docs clarifications

2 years agodaemon/session2: move iteration data into struct protolayer_cb_ctx
Oto Šťáva [Tue, 13 Sep 2022 10:12:30 +0000 (12:12 +0200)] 
daemon/session2: move iteration data into struct protolayer_cb_ctx

2 years agodaemon/session2: remove protolayer_push - consolidate with protolayer_continue
Oto Šťáva [Wed, 7 Sep 2022 10:48:16 +0000 (12:48 +0200)] 
daemon/session2: remove protolayer_push - consolidate with protolayer_continue

2 years agodaemon: replace a few libuv references with generic flags and move stats handling
Oto Šťáva [Wed, 7 Sep 2022 07:25:38 +0000 (09:25 +0200)] 
daemon: replace a few libuv references with generic flags and move stats handling

2 years agodaemon/worker: flush worker mempool after submitting
Oto Šťáva [Tue, 6 Sep 2022 11:42:39 +0000 (13:42 +0200)] 
daemon/worker: flush worker mempool after submitting

2 years agodaemon/tls: fix incorrect freeing
Oto Šťáva [Tue, 6 Sep 2022 08:19:05 +0000 (10:19 +0200)] 
daemon/tls: fix incorrect freeing

2 years agodaemon: fix leaking of session2
Oto Šťáva [Tue, 6 Sep 2022 06:18:57 +0000 (08:18 +0200)] 
daemon: fix leaking of session2

2 years agodaemon: various protolayer fixes
Oto Šťáva [Fri, 26 Aug 2022 07:29:30 +0000 (09:29 +0200)] 
daemon: various protolayer fixes

2 years agodaemon/session2: some cleanups and documentation
Oto Šťáva [Thu, 25 Aug 2022 08:24:32 +0000 (10:24 +0200)] 
daemon/session2: some cleanups and documentation

2 years agodaemon: implement TLS with protocol layers
Oto Šťáva [Tue, 23 Aug 2022 11:08:58 +0000 (13:08 +0200)] 
daemon: implement TLS with protocol layers

2 years agodaemon: channel udp_queue through protolayers
Oto Šťáva [Thu, 11 Aug 2022 07:25:41 +0000 (09:25 +0200)] 
daemon: channel udp_queue through protolayers

2 years agodaemon/worker: nits
Oto Šťáva [Tue, 9 Aug 2022 09:05:34 +0000 (11:05 +0200)] 
daemon/worker: nits

2 years agodaemon: protolayer timeout and stream fixes
Oto Šťáva [Fri, 5 Aug 2022 06:22:37 +0000 (08:22 +0200)] 
daemon: protolayer timeout and stream fixes

Incoming TCP sessions (from clients) were not marked as `connected`,
causing the wrong timeout function to be called. This may have resulted
in assertion failures in some cases when using TCP.

Some error codes were not wrapped in `kr_error` - this probably did not
cause any real issues currently, but for the sake of consistency this is
now fixed.

Stream wire buffers were not being processed in a loop, which could
potentially cause input data to be discarded or processed with a delay.
This is now fixed.

2 years agodaemon/worker: use libknot to retrieve packet size
Oto Šťáva [Thu, 4 Aug 2022 12:16:17 +0000 (14:16 +0200)] 
daemon/worker: use libknot to retrieve packet size

2 years agodaemon/session2: put event handling into separate functions
Oto Šťáva [Thu, 4 Aug 2022 09:15:13 +0000 (11:15 +0200)] 
daemon/session2: put event handling into separate functions

Originally, events were simply just another payload for the regular data
callbacks. That could, however, lead to problems with the control flow
of the layer iterations, e.g. when a buffer causes a layer to `_WAIT`,
but the next payload is an event instead of another buffer. This
separation should fix that problem.

2 years agodaemon: TCP connection timeouts with protolayers
Oto Šťáva [Wed, 3 Aug 2022 08:03:44 +0000 (10:03 +0200)] 
daemon: TCP connection timeouts with protolayers

2 years agodaemon: basic implementation of TCP and UDP with protolayers
Oto Šťáva [Tue, 2 Aug 2022 08:53:38 +0000 (10:53 +0200)] 
daemon: basic implementation of TCP and UDP with protolayers

2 years agosession2: protocol layer API
Oto Šťáva [Mon, 18 Jul 2022 06:51:39 +0000 (08:51 +0200)] 
session2: protocol layer API

2 years agodaemon: refactor stage 1
Oto Šťáva [Mon, 23 May 2022 10:18:38 +0000 (12:18 +0200)] 
daemon: refactor stage 1

2 years agoMerge !1379: tests/integration/deckard: update to version with --forked
Vladimír Čunát [Thu, 26 Jan 2023 09:57:46 +0000 (10:57 +0100)] 
Merge !1379: tests/integration/deckard: update to version with --forked

2 years agotests/integration/deckard: update to version with --forked
Oto Šťáva [Thu, 26 Jan 2023 08:27:07 +0000 (09:27 +0100)] 
tests/integration/deckard: update to version with --forked

2 years agoMerge branch 'manager-doc-gitlab-pages' into 'manager'
Vaclav Sraier [Sun, 22 Jan 2023 08:15:39 +0000 (09:15 +0100)] 
Merge branch 'manager-doc-gitlab-pages' into 'manager'

manager: GitLab pages with current version of docs

See merge request knot/knot-resolver!1372

2 years agodocs: gitlab pages deploy via CI is now manual and does not run automatically
Vasek Sraier [Sun, 22 Jan 2023 07:44:07 +0000 (08:44 +0100)] 
docs: gitlab pages deploy via CI is now manual and does not run automatically

2 years agodocs: automatic publishing using gitlab pages
Vasek Sraier [Fri, 6 Jan 2023 09:57:24 +0000 (10:57 +0100)] 
docs: automatic publishing using gitlab pages

2 years agoMerge branch 'manager-build-file-removal' into 'manager'
Vaclav Sraier [Fri, 13 Jan 2023 10:51:05 +0000 (11:51 +0100)] 
Merge branch 'manager-build-file-removal' into 'manager'

manager: removal of accidentally commited build artifact

See merge request knot/knot-resolver!1376

2 years agodoc: removed doc/_static/config.schema.md which was generated and accidentally commited
Vasek Sraier [Fri, 13 Jan 2023 10:44:37 +0000 (11:44 +0100)] 
doc: removed doc/_static/config.schema.md which was generated and accidentally commited

there are no secrets in that file ;) it's just a build artifact

2 years agoMerge branch 'ci-pkgtest-update' into 'manager'
Vladimír Čunát [Wed, 11 Jan 2023 10:44:01 +0000 (11:44 +0100)] 
Merge branch 'ci-pkgtest-update' into 'manager'

CI: update pkgtest for new apkg images

See merge request knot/knot-resolver!1373

2 years agoCI: update pkgtest for new apkg images
Jakub Ružička [Thu, 5 Jan 2023 15:47:37 +0000 (16:47 +0100)] 
CI: update pkgtest for new apkg images

also:

* add Fedora 37, remove Fedora 35
* add AlmaLinux 9, remove Rocky 8 (image stopped working)

2 years agoMerge branch 'manager-copyright-sweep' into 'manager'
Vladimír Čunát [Wed, 11 Jan 2023 10:29:46 +0000 (11:29 +0100)] 
Merge branch 'manager-copyright-sweep' into 'manager'

Copyright notices: remove years and replace e-mail (cherry-pick into manager)

See merge request knot/knot-resolver!1374

2 years agoCopyright notices: remove years and replace e-mail
Oto Šťáva [Mon, 12 Dec 2022 09:34:23 +0000 (10:34 +0100)] 
Copyright notices: remove years and replace e-mail

2 years agoMerge branch 'master' into manager
Vasek Sraier [Tue, 10 Jan 2023 21:48:18 +0000 (22:48 +0100)] 
Merge branch 'master' into manager

2 years agoMerge branch 'manager-doc2' into 'manager'
Vaclav Sraier [Tue, 10 Jan 2023 19:24:37 +0000 (20:24 +0100)] 
Merge branch 'manager-doc2' into 'manager'

manager: docs improvement

See merge request knot/knot-resolver!1375

2 years agodoc: moved command rosetta to upgrade guide
Vasek Sraier [Mon, 9 Jan 2023 22:21:01 +0000 (23:21 +0100)] 
doc: moved command rosetta to upgrade guide

2 years agodoc: fix links
Vasek Sraier [Mon, 9 Jan 2023 22:20:12 +0000 (23:20 +0100)] 
doc: fix links

2 years agodocs: moved old lua configuration to section "advanced configuration"
Vasek Sraier [Sun, 8 Jan 2023 22:04:15 +0000 (23:04 +0100)] 
docs: moved old lua configuration to section "advanced configuration"

2 years agodoc: improvement of the configuration section and schema description
Vasek Sraier [Sun, 8 Jan 2023 16:40:21 +0000 (17:40 +0100)] 
doc: improvement of the configuration section and schema description

2 years agodocs: overhall of the getting started section, autogenerating readable JSON schema...
Vasek Sraier [Sun, 18 Dec 2022 16:40:58 +0000 (17:40 +0100)] 
docs: overhall of the getting started section, autogenerating readable JSON schema reference

2 years agoMerge branch 'manager-kresctl' into 'manager'
Vaclav Sraier [Tue, 10 Jan 2023 19:02:03 +0000 (20:02 +0100)] 
Merge branch 'manager-kresctl' into 'manager'

manager: kresctl utility

See merge request knot/knot-resolver!1342

2 years agomanager: client: comment incomplete completion code
Aleš Mrázek [Tue, 10 Jan 2023 18:56:06 +0000 (19:56 +0100)] 
manager: client: comment incomplete completion code

2 years agomanager: client: exit code on cmd fail
Aleš Mrázek [Tue, 10 Jan 2023 18:12:45 +0000 (19:12 +0100)] 
manager: client: exit code on cmd fail

2 years agomanager: client: exit cmd removed
Aleš Mrázek [Tue, 10 Jan 2023 14:58:51 +0000 (15:58 +0100)] 
manager: client: exit cmd removed

2 years agomanager: client: allow to get schema using API
Aleš Mrázek [Mon, 9 Jan 2023 10:14:46 +0000 (11:14 +0100)] 
manager: client: allow to get schema using API

2 years agomanager: client: args description/help updated
Aleš Mrázek [Tue, 3 Jan 2023 10:39:51 +0000 (11:39 +0100)] 
manager: client: args description/help updated

2 years agodoc/manager-client.rst: kresctl commands doc
Aleš Mrázek [Fri, 16 Dec 2022 21:02:21 +0000 (22:02 +0100)] 
doc/manager-client.rst: kresctl commands doc

2 years agomanager: api: json schema indent
Aleš Mrázek [Wed, 14 Dec 2022 09:06:41 +0000 (10:06 +0100)] 
manager: api: json schema indent

2 years agomanager: client: reformat function fix
Aleš Mrázek [Tue, 13 Dec 2022 16:00:27 +0000 (17:00 +0100)] 
manager: client: reformat function fix

2 years agomanager: client: 'help' cmd added
Aleš Mrázek [Tue, 13 Dec 2022 15:38:25 +0000 (16:38 +0100)] 
manager: client: 'help' cmd added

2 years agodoc: new chapter added for kresctl and API pages
Aleš Mrázek [Mon, 12 Dec 2022 20:57:55 +0000 (21:57 +0100)] 
doc:  new chapter added for kresctl and API pages

2 years agodoc/gettingstarted-config: kresctl doc update
Aleš Mrázek [Mon, 12 Dec 2022 20:54:14 +0000 (21:54 +0100)] 
doc/gettingstarted-config: kresctl doc update

2 years agodoc/gettingstarted-config: API doc update
Aleš Mrázek [Mon, 12 Dec 2022 15:18:12 +0000 (16:18 +0100)] 
doc/gettingstarted-config: API doc update

2 years agomanager: client: completion improvements
Aleš Mrázek [Thu, 8 Dec 2022 13:33:26 +0000 (14:33 +0100)] 
manager: client: completion improvements

2 years agomanager: client: replace POST method with PUT in config cmd
Aleš Mrázek [Mon, 5 Dec 2022 21:59:53 +0000 (22:59 +0100)] 
manager: client: replace POST method with PUT in config cmd

2 years agomanager: client: uknown_args removed
Aleš Mrázek [Fri, 2 Dec 2022 16:11:39 +0000 (17:11 +0100)] 
manager: client: uknown_args removed

2 years agomanager: client: config path completion
Aleš Mrázek [Wed, 23 Nov 2022 00:11:05 +0000 (01:11 +0100)] 
manager: client: config path completion

2 years agomanager: client: functional 'completion' command
Aleš Mrázek [Wed, 16 Nov 2022 15:06:01 +0000 (16:06 +0100)] 
manager: client: functional 'completion' command

2 years agomanager: client: completion script for bash
Aleš Mrázek [Wed, 16 Nov 2022 15:03:21 +0000 (16:03 +0100)] 
manager: client: completion script for bash

2 years agomanager: meson: install shell completion scripts
Aleš Mrázek [Tue, 15 Nov 2022 17:15:08 +0000 (18:15 +0100)] 
manager: meson: install shell completion scripts

2 years agomanager: kresctl: move main function from __main__
Aleš Mrázek [Mon, 7 Nov 2022 21:45:47 +0000 (22:45 +0100)] 
manager: kresctl: move main function from __main__

2 years agomanager: kresctl: 'reload' cmd added
Aleš Mrázek [Wed, 2 Nov 2022 11:36:59 +0000 (12:36 +0100)] 
manager: kresctl: 'reload' cmd added

2 years agomanager: kresctl: 'validate' comd added
Aleš Mrázek [Tue, 1 Nov 2022 17:47:33 +0000 (18:47 +0100)] 
manager: kresctl: 'validate' comd added

2 years agomanager: kresctl: completion for 'completion' cmd
Aleš Mrázek [Mon, 31 Oct 2022 22:41:24 +0000 (23:41 +0100)] 
manager: kresctl: completion for 'completion' cmd

2 years agomanager: kresctl: shell-completion files renamed
Aleš Mrázek [Mon, 31 Oct 2022 22:39:20 +0000 (23:39 +0100)] 
manager: kresctl: shell-completion files renamed

2 years agomanager: kresctl: completion options in dict instead of in list
Aleš Mrázek [Fri, 30 Sep 2022 13:23:38 +0000 (15:23 +0200)] 
manager: kresctl: completion options in dict instead of in list

2 years agomanager: kresctl: config cmd: write to file only with 200 response status
Aleš Mrázek [Fri, 30 Sep 2022 13:12:03 +0000 (15:12 +0200)] 
manager: kresctl: config cmd: write to file only with 200 response status

2 years agomanager: duplicit 'shell-completion' directory removed
Aleš Mrázek [Fri, 30 Sep 2022 12:58:03 +0000 (14:58 +0200)] 
manager: duplicit 'shell-completion' directory removed

2 years agomanager: pkg: deb: completion files for kresctl utility
Aleš Mrázek [Fri, 30 Sep 2022 12:48:27 +0000 (14:48 +0200)] 
manager: pkg: deb: completion files for kresctl utility

2 years agomanager: pkg: rpm: completion files for kresctl utility
Aleš Mrázek [Fri, 30 Sep 2022 12:02:36 +0000 (14:02 +0200)] 
manager: pkg: rpm: completion files for kresctl utility

2 years agomanager: schema utils: updated documentation about serialization of custom value...
Vasek Sraier [Thu, 29 Sep 2022 09:45:33 +0000 (11:45 +0200)] 
manager: schema utils: updated documentation about serialization of custom value types, fixed UncheckedPath serialization so that it does not depend on cwd

2 years agomanager: doc: JSON Schema install fix
Aleš Mrázek [Thu, 29 Sep 2022 08:40:36 +0000 (10:40 +0200)] 
manager: doc: JSON Schema install fix

2 years agodocs: generating and linking JSON schema for the declarative config
Vasek Sraier [Mon, 26 Sep 2022 11:21:32 +0000 (13:21 +0200)] 
docs: generating and linking JSON schema for the declarative config

2 years agokresctl: fix typing annotations for old python
Vasek Sraier [Mon, 26 Sep 2022 11:11:39 +0000 (13:11 +0200)] 
kresctl: fix typing annotations for old python

2 years agomanager: pkg: completion dir fix
Aleš Mrázek [Wed, 21 Sep 2022 22:20:20 +0000 (00:20 +0200)] 
manager: pkg: completion dir fix

2 years agomanager: kresctl: 'completion' method for commands added
Aleš Mrázek [Wed, 21 Sep 2022 10:38:09 +0000 (12:38 +0200)] 
manager: kresctl: 'completion' method for commands added
- lint and formating fixes

2 years agomanager: utils: modeling: function to try parse yaml or json
Aleš Mrázek [Tue, 20 Sep 2022 14:35:27 +0000 (16:35 +0200)] 
manager: utils: modeling: function to try parse yaml or json

2 years agomanager: kresctl: scripts for shells completion added
Aleš Mrázek [Sun, 18 Sep 2022 20:35:07 +0000 (22:35 +0200)] 
manager: kresctl: scripts for shells completion added