]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
3 years agoMerge !1271: ci/images: add docs obs-knot-resolver-es11k1/deployments/2065 obs-knot-resolver-es11k1/deployments/2067 obs-knot-resolver-es11k1/deployments/2069 obs-knot-resolver-es11k1/deployments/2070 obs-knot-resolver-es11k1/deployments/2071 obs-knot-resolver-es11k1/deployments/2072 obs-knot-resolver-es11k1/deployments/2073 obs-knot-resolver-es11k1/deployments/2074
Vladimír Čunát [Mon, 21 Mar 2022 10:45:23 +0000 (11:45 +0100)] 
Merge !1271: ci/images: add docs

3 years agoci/images: add debian-11-coverity description
Oto Šťáva [Mon, 21 Mar 2022 05:55:06 +0000 (06:55 +0100)] 
ci/images: add debian-11-coverity description

3 years agoci/images: add image description
Tomas Krizek [Wed, 9 Mar 2022 12:07:35 +0000 (13:07 +0100)] 
ci/images: add image description

3 years agoci/images: ensure base image is updated
Tomas Krizek [Wed, 9 Mar 2022 11:59:32 +0000 (12:59 +0100)] 
ci/images: ensure base image is updated

3 years agoMerge !1275: modules/dns64: fix incorrect packet writes for cached packets
Vladimír Čunát [Mon, 21 Mar 2022 10:03:33 +0000 (11:03 +0100)] 
Merge !1275: modules/dns64: fix incorrect packet writes for cached packets

Fixes #727

3 years agomodules/dns64: fix incorrect packet writes for cached packets
Oto Šťáva [Fri, 18 Mar 2022 14:22:08 +0000 (15:22 +0100)] 
modules/dns64: fix incorrect packet writes for cached packets

Also change the return type of kr_pkt_has_dnssec() and lua's :dobit()

3 years agoMerge branch 'release-5-5-0' into 'master' obs-knot-resolver-8xyvhu/deployments/2058 obs-knot-resolver-es11k1/deployments/2060 obs-knot-resolver-es11k1/deployments/2061 obs-knot-resolver-es11k1/deployments/2062 obs-knot-resolver-es11k1/deployments/2063 obs-knot-resolver-es11k1/deployments/2064 obs-knot-resolver-kv62s6/deployments/2057 v5.5.0
Aleš Mrázek [Tue, 15 Mar 2022 10:28:50 +0000 (11:28 +0100)] 
Merge branch 'release-5-5-0' into 'master'

release 5.5.0

See merge request knot/knot-resolver!1272

3 years agoAUTHORS: duplicate alias removed
Aleš Mrázek [Mon, 14 Mar 2022 21:18:58 +0000 (22:18 +0100)] 
AUTHORS: duplicate alias removed

3 years agorelease 5.5.0
Aleš [Mon, 14 Mar 2022 14:22:13 +0000 (15:22 +0100)] 
release 5.5.0

3 years agoMerge !1273: Documentation nits (policy, predict)
Vladimír Čunát [Tue, 15 Mar 2022 06:53:47 +0000 (07:53 +0100)] 
Merge !1273: Documentation nits (policy, predict)

3 years agopredict docs: be more explicit about recommended use
Vladimír Čunát [Mon, 14 Mar 2022 14:27:54 +0000 (15:27 +0100)] 
predict docs: be more explicit about recommended use

We're still run into people who thought that the example config
is a suitable default.  Example where it caused practical issues:
https://lists.nic.cz/hyperkitty/list/knot-resolver-users@lists.nic.cz/thread/WQDJJ3LLEIZ5U3VVSCITW6DZPICW4L7U/

3 years agopolicy docs: explain non-ASCII names
Vladimír Čunát [Mon, 14 Mar 2022 14:19:45 +0000 (15:19 +0100)] 
policy docs: explain non-ASCII names

3 years agoMerge branch 'selection' into 'master' obs-knot-resolver-es11k1/deployments/2056
Tomas Krizek [Mon, 14 Mar 2022 10:17:14 +0000 (11:17 +0100)] 
Merge branch 'selection' into 'master'

lib/selection: fix interaction of timeouts with reboots

Closes #722

See merge request knot/knot-resolver!1269

3 years agoRevert "daemon/worker: add task timeouts for upstream TCP connections"
Vladimír Čunát [Mon, 14 Mar 2022 06:33:05 +0000 (07:33 +0100)] 
Revert "daemon/worker: add task timeouts for upstream TCP connections"

This reverts commit 0c9ea1332e1c4475043eab571f60915b90985999 (!1226).

CI rp:fwd-tls6.udp-asan now repeatedly shows use-after-free.
That could be a serious issue, and this commit's feature
seems less important than the risk.  Let's revert until the issue
gets deeper investigation.

3 years agolib/selection: fix interaction of timeouts with reboots
Vladimír Čunát [Mon, 7 Mar 2022 17:04:05 +0000 (18:04 +0100)] 
lib/selection: fix interaction of timeouts with reboots

We use "monotonic" time-stamps for the dead_since field;
that breaks on system reboots, in which case we reset the stats.
(if the server was categorized as dead)

If the server times out afterwards, we'd fail the condition
`cur_state.consecutive_timeouts == old_state.consecutive_timeouts`
so its stats would not update.  Therefore we'd get stuck forever
in a state where the unusable server has high priority (no_rtt_info).

This commit changes a bit more than was necessary to fix this,
including precision of the stats (in some cases).

3 years agolib/selection: improve randomness of ties
Vladimír Čunát [Fri, 4 Mar 2022 11:55:55 +0000 (12:55 +0100)] 
lib/selection: improve randomness of ties

The approach was dubious: random shuffle, qsort() and choose the first.
The main functional problem was that qsort() isn't a stable sort,
so the effect of pre-shuffling is not reliable, even though I don't have
any evidence of this causing issues in practice.

The new code should also be a bit more efficient in terms of CPU and
consumed randomness, but that probably won't be noticeable.
The arrays passed into select_transport() are now const (no sorting),
which could make the code easier to "understand".

3 years agoMerge branch 'ci-remove-arm' into 'master' obs-knot-resolver-es11k1/deployments/2050 obs-knot-resolver-es11k1/deployments/2051 obs-knot-resolver-es11k1/deployments/2052 obs-knot-resolver-es11k1/deployments/2053 obs-knot-resolver-es11k1/deployments/2054
Tomas Krizek [Wed, 9 Mar 2022 12:19:18 +0000 (13:19 +0100)] 
Merge branch 'ci-remove-arm' into 'master'

ci: remove experimental arm builds

See merge request knot/knot-resolver!1270

3 years agoci: remove experimental arm builds
Tomas Krizek [Wed, 9 Mar 2022 11:39:57 +0000 (12:39 +0100)] 
ci: remove experimental arm builds

These are running on a hardware setup which is hard to maintain. In the
near future, ARM64 should be covered by a dedicated runner.

3 years agoMerge branch 'keyblock-update' into 'master' obs-knot-resolver-es11k1/deployments/2049
Tomas Krizek [Tue, 8 Mar 2022 14:44:16 +0000 (15:44 +0100)] 
Merge branch 'keyblock-update' into 'master'

pgp: remove tkrizek, add amrazek

See merge request knot/knot-resolver!1268

3 years agopgp: remove tkrizek, add amrazek
Tomas Krizek [Mon, 7 Mar 2022 16:11:14 +0000 (17:11 +0100)] 
pgp: remove tkrizek, add amrazek

3 years agoMerge branch 'distrotests-rocky8' into 'master' obs-knot-resolver-es11k1/deployments/2048
Tomas Krizek [Mon, 7 Mar 2022 12:17:16 +0000 (13:17 +0100)] 
Merge branch 'distrotests-rocky8' into 'master'

distro/tests: use rocky8 instead of centos8

See merge request knot/knot-resolver!1267

3 years agodistro/tests: add Rocky support obs-knot-resolver-bs4hbr/deployments/2047
Tomas Krizek [Mon, 7 Mar 2022 09:25:44 +0000 (10:25 +0100)] 
distro/tests: add Rocky support

3 years ago.gitlabci: add some doc comments for distotest job obs-knot-resolver-bs4hbr/deployments/2043
Tomas Krizek [Fri, 4 Mar 2022 13:11:36 +0000 (14:11 +0100)] 
.gitlabci: add some doc comments for distotest job

3 years agodistro/tests: use rocky8 instead of centos8
Tomas Krizek [Fri, 4 Mar 2022 13:11:16 +0000 (14:11 +0100)] 
distro/tests: use rocky8 instead of centos8

3 years agoMerge !1266: Coverity Scan false positives clarifications obs-knot-resolver-es11k1/deployments/2041 obs-knot-resolver-es11k1/deployments/2042 obs-knot-resolver-es11k1/deployments/2044 obs-knot-resolver-es11k1/deployments/2045 obs-knot-resolver-es11k1/deployments/2046
Vladimír Čunát [Tue, 1 Mar 2022 17:46:47 +0000 (18:46 +0100)] 
Merge !1266: Coverity Scan false positives clarifications

3 years agoCoverity Scan false positives clarifications
Oto Šťáva [Mon, 28 Feb 2022 15:00:25 +0000 (16:00 +0100)] 
Coverity Scan false positives clarifications

3 years agoMerge branch 'cache-nit-ttl' into 'master'
Tomas Krizek [Tue, 1 Mar 2022 08:49:15 +0000 (09:49 +0100)] 
Merge branch 'cache-nit-ttl' into 'master'

cache nit: reduce cache.max_ttl limit a bit

See merge request knot/knot-resolver!1265

3 years agocache nit: reduce cache.max_ttl limit a bit
Vladimír Čunát [Mon, 28 Feb 2022 08:33:25 +0000 (09:33 +0100)] 
cache nit: reduce cache.max_ttl limit a bit

The new limit is over 68 years, so still completely meaningless.

3 years agoMerge !1264: Fix defects detected by Coverity Scan obs-knot-resolver-es11k1/deployments/2039
Vladimír Čunát [Mon, 28 Feb 2022 13:34:56 +0000 (14:34 +0100)] 
Merge !1264: Fix defects detected by Coverity Scan

3 years agoFix defects detected by Coverity Scan
Oto Šťáva [Fri, 25 Feb 2022 06:46:13 +0000 (07:46 +0100)] 
Fix defects detected by Coverity Scan

Targeted CIDs: 155456, 155962, 346121, 346123, 346124, 346125,
  346126, 346127, 346130, 346131, 346132, 346134, 346135, 346138,
  346140, 346145, 346146, 346149, 346152, 346154, 346156, 346157

lib/dnssec/nsec3.c change:
  apparently cleaning fallout from my (= vcunat's) commit b5cf61325ae

3 years agoMerge !1256: modules/dnstap: improve UX for common errors
Vladimír Čunát [Mon, 28 Feb 2022 11:08:14 +0000 (12:08 +0100)] 
Merge !1256: modules/dnstap: improve UX for common errors

3 years agomodules/dnstap: improve UX for common errors
Vladimír Čunát [Tue, 8 Feb 2022 11:59:31 +0000 (12:59 +0100)] 
modules/dnstap: improve UX for common errors

The main thing is the "failed to open socket" message.
But let's also elevate other fatal one-off logs to ERROR level.

3 years agomodules/dnstap: don't do anything on loading the module
Vladimír Čunát [Tue, 8 Feb 2022 11:46:55 +0000 (12:46 +0100)] 
modules/dnstap: don't do anything on loading the module

Usually in configuration the module is loaded in a separate command
from passing configuration to it.  For dnstap this loading would
immediately lead to opening the default socket path, even if the
configuration actually specifies (a different) path later.

Users can still force using the default by passing an empty table:
`dnstap.config({})` or `modules = { dnstap = {}}`
(though I doubt the utility of the default /tmp/dnstap.sock anyway)

3 years agoMerge !1257: lib/resolve, modules: NO_ANSWER for not responding to clients
Vladimír Čunát [Mon, 28 Feb 2022 10:58:54 +0000 (11:58 +0100)] 
Merge !1257: lib/resolve, modules: NO_ANSWER for not responding to clients

Implements #432

3 years agolib/resolve, modules: NO_ANSWER for not responding to clients
Oto Šťáva [Tue, 8 Feb 2022 12:46:15 +0000 (13:46 +0100)] 
lib/resolve, modules: NO_ANSWER for not responding to clients

3 years agoMerge !1238: Support for PROXYv2 protocol
Vladimír Čunát [Mon, 28 Feb 2022 10:43:25 +0000 (11:43 +0100)] 
Merge !1238: Support for PROXYv2 protocol

3 years agodaemon, lib: document API changes made due to PROXYv2
Oto Šťáva [Tue, 8 Feb 2022 09:08:05 +0000 (10:08 +0100)] 
daemon, lib: document API changes made due to PROXYv2

3 years agodaemon: add PROXYv2 SSL TLV handling + minor refactoring
Oto Šťáva [Mon, 7 Feb 2022 13:56:33 +0000 (14:56 +0100)] 
daemon: add PROXYv2 SSL TLV handling + minor refactoring

3 years agodaemon: correct PROXYv2 handling for TCP sessions
Oto Šťáva [Mon, 7 Feb 2022 09:08:21 +0000 (10:08 +0100)] 
daemon: correct PROXYv2 handling for TCP sessions

3 years agodaemon/bindings doc: PROXYv2 clarifications
Oto Šťáva [Fri, 4 Feb 2022 08:16:23 +0000 (09:16 +0100)] 
daemon/bindings doc: PROXYv2 clarifications

3 years agodaemon: use flags from proxy header + refactor comm data
Oto Šťáva [Thu, 3 Feb 2022 13:06:01 +0000 (14:06 +0100)] 
daemon: use flags from proxy header + refactor comm data

3 years agodaemon: allow setting zero netmasks for net.proxy_allowed()
Oto Šťáva [Fri, 28 Jan 2022 08:01:50 +0000 (09:01 +0100)] 
daemon: allow setting zero netmasks for net.proxy_allowed()

3 years agotests/config: net.proxy_allowed() support
Tomas Krizek [Wed, 26 Jan 2022 17:02:22 +0000 (18:02 +0100)] 
tests/config: net.proxy_allowed() support

3 years agodaemon/proxyv2.test: deckard test for PROXYv2
Oto Šťáva [Tue, 4 Jan 2022 12:45:29 +0000 (13:45 +0100)] 
daemon/proxyv2.test: deckard test for PROXYv2

3 years agodaemon/bindings: add net.proxy_allowed() + docs
Oto Šťáva [Thu, 16 Dec 2021 13:24:05 +0000 (14:24 +0100)] 
daemon/bindings: add net.proxy_allowed() + docs

3 years agodaemon: PROXYv2 header processing
Oto Šťáva [Mon, 13 Dec 2021 14:34:36 +0000 (15:34 +0100)] 
daemon: PROXYv2 header processing

3 years agoMerge !1259: .gitlab-ci: Coverity scan obs-knot-resolver-es11k1/deployments/2033 obs-knot-resolver-es11k1/deployments/2034 obs-knot-resolver-es11k1/deployments/2035 obs-knot-resolver-es11k1/deployments/2036 obs-knot-resolver-es11k1/deployments/2037 obs-knot-resolver-es11k1/deployments/2038
Vladimír Čunát [Tue, 22 Feb 2022 10:47:25 +0000 (11:47 +0100)] 
Merge !1259: .gitlab-ci: Coverity scan

Implements #450

3 years ago.gitlab-ci: Coverity scan
Oto Šťáva [Thu, 10 Feb 2022 10:16:24 +0000 (11:16 +0100)] 
.gitlab-ci: Coverity scan

3 years agoMerge branch 'fix-tls-client-resumption' into 'master' obs-knot-resolver-es11k1/deployments/2029 obs-knot-resolver-es11k1/deployments/2030 obs-knot-resolver-es11k1/deployments/2031 obs-knot-resolver-es11k1/deployments/2032
Tomas Krizek [Fri, 18 Feb 2022 10:53:55 +0000 (11:53 +0100)] 
Merge branch 'fix-tls-client-resumption' into 'master'

daemon/tls: fix TLS client resumption

Closes #542

See merge request knot/knot-resolver!1261

3 years agodaemon/tls: fix TLS client resumption
Oto Šťáva [Fri, 18 Feb 2022 10:15:38 +0000 (11:15 +0100)] 
daemon/tls: fix TLS client resumption

3 years agoMerge !1254: lib/resolve: EDNS padding for outgoing TLS queries obs-knot-resolver-es11k1/deployments/2018 obs-knot-resolver-es11k1/deployments/2019 obs-knot-resolver-es11k1/deployments/2021 obs-knot-resolver-es11k1/deployments/2022 obs-knot-resolver-es11k1/deployments/2023 obs-knot-resolver-es11k1/deployments/2024 obs-knot-resolver-es11k1/deployments/2025 obs-knot-resolver-es11k1/deployments/2026 obs-knot-resolver-es11k1/deployments/2027 obs-knot-resolver-es11k1/deployments/2028
Vladimír Čunát [Mon, 7 Feb 2022 18:06:06 +0000 (19:06 +0100)] 
Merge !1254: lib/resolve: EDNS padding for outgoing TLS queries

Fixes #303

3 years agolib/resolve: EDNS padding for outgoing TLS queries
Oto Šťáva [Wed, 2 Feb 2022 14:43:11 +0000 (15:43 +0100)] 
lib/resolve: EDNS padding for outgoing TLS queries

3 years agoMerge !1251: lib/dnssec: conditionally ignore SHA1 DS, as SHOULD by RFC4509 obs-knot-resolver-es11k1/deployments/2015 obs-knot-resolver-es11k1/deployments/2016 obs-knot-resolver-es11k1/deployments/2017
Vladimír Čunát [Fri, 4 Feb 2022 14:38:21 +0000 (15:38 +0100)] 
Merge !1251: lib/dnssec: conditionally ignore SHA1 DS, as SHOULD by RFC4509

3 years agolib/dnssec: conditionally ignore SHA1 DS, as SHOULD by RFC4509
Vladimír Čunát [Thu, 20 Jan 2022 18:43:40 +0000 (19:43 +0100)] 
lib/dnssec: conditionally ignore SHA1 DS, as SHOULD by RFC4509

We're a bit late with this ad-hoc rule; I think it was most useful
when SHA256 support in DS algorithms wasn't wide-spread yet.
(Note that DNSKEY algos have standardized no similar rule.)

Usage of SHA1 as DS algorithm is highly discouraged, but even at this
point it does *not* seem unsafe, in the sense of anyone publishing an
attack that would come anywhere close to breaking *this* usage of SHA1.

3 years agoMerge !1226: daemon/worker: add task timeouts for upstream TCP connections obs-knot-resolver-es11k1/deployments/2011 obs-knot-resolver-es11k1/deployments/2012 obs-knot-resolver-es11k1/deployments/2014
Vladimír Čunát [Mon, 31 Jan 2022 13:23:08 +0000 (14:23 +0100)] 
Merge !1226: daemon/worker: add task timeouts for upstream TCP connections

3 years agodaemon/worker: add task timeouts for upstream TCP connections
Oto Šťáva [Mon, 15 Nov 2021 13:03:01 +0000 (14:03 +0100)] 
daemon/worker: add task timeouts for upstream TCP connections

3 years agoMerge !1253: daemon/bindings/net: add interface name to link-local IPv6 addresses
Vladimír Čunát [Mon, 31 Jan 2022 10:52:21 +0000 (11:52 +0100)] 
Merge !1253: daemon/bindings/net: add interface name to link-local IPv6 addresses

Fixes #80

3 years agodaemon/bindings/net: add interface name to link-local IPv6 addresses
Oto Šťáva [Thu, 27 Jan 2022 14:19:02 +0000 (15:19 +0100)] 
daemon/bindings/net: add interface name to link-local IPv6 addresses

3 years agoMerge branch 'update-tests' into 'master' obs-knot-resolver-es11k1/deployments/1993 obs-knot-resolver-es11k1/deployments/1994 obs-knot-resolver-es11k1/deployments/1996 obs-knot-resolver-es11k1/deployments/1997 obs-knot-resolver-es11k1/deployments/1998 obs-knot-resolver-es11k1/deployments/1999 obs-knot-resolver-es11k1/deployments/2000 obs-knot-resolver-es11k1/deployments/2001 obs-knot-resolver-es11k1/deployments/2002 obs-knot-resolver-es11k1/deployments/2003 obs-knot-resolver-es11k1/deployments/2004 obs-knot-resolver-es11k1/deployments/2005 obs-knot-resolver-es11k1/deployments/2006 obs-knot-resolver-es11k1/deployments/2007 obs-knot-resolver-es11k1/deployments/2008 obs-knot-resolver-es11k1/deployments/2009 obs-knot-resolver-es11k1/deployments/2010
Tomas Krizek [Thu, 13 Jan 2022 11:51:09 +0000 (12:51 +0100)] 
Merge branch 'update-tests' into 'master'

ci: various test updates

See merge request knot/knot-resolver!1243

3 years agotests/README: merge with docs
Tomas Krizek [Mon, 10 Jan 2022 14:38:15 +0000 (15:38 +0100)] 
tests/README: merge with docs

3 years agopytests: migrate to LXC runner
Tomas Krizek [Tue, 21 Dec 2021 15:38:45 +0000 (16:38 +0100)] 
pytests: migrate to LXC runner

Due to missing support on some of the regular runners, let's migrate
these tests to our special LXC runners. This should hopefully make the
results more reliable and stable.

The downside is that we have to keep an additional image (and recipe)
for LXC, since it' slightly different. However, it's probably worth it,
since we'll likely migrate some other tests there in the future (for
better stability).

3 years agoci: omit extra dependencies for arm
Tomas Krizek [Wed, 22 Dec 2021 12:24:18 +0000 (13:24 +0100)] 
ci: omit extra dependencies for arm

3 years agogitignore: pytests junit xml files
Tomas Krizek [Tue, 21 Dec 2021 16:22:27 +0000 (17:22 +0100)] 
gitignore: pytests junit xml files

3 years agoci/images: automate build&push of images
Tomas Krizek [Tue, 21 Dec 2021 16:20:46 +0000 (17:20 +0100)] 
ci/images: automate build&push of images

3 years agomeson: update dependencies for deckard
Tomas Krizek [Tue, 21 Dec 2021 15:36:26 +0000 (16:36 +0100)] 
meson: update dependencies for deckard

3 years agotests: bring README up to date
Tomas Krizek [Tue, 21 Dec 2021 15:36:09 +0000 (16:36 +0100)] 
tests: bring README up to date

3 years agomeson: minor cleanup
Tomas Krizek [Mon, 15 Nov 2021 15:34:18 +0000 (16:34 +0100)] 
meson: minor cleanup

3 years agoMerge branch 'docs-forwarding-filters' into 'master' obs-knot-resolver-es11k1/deployments/1991 obs-knot-resolver-es11k1/deployments/1992
Tomas Krizek [Tue, 11 Jan 2022 11:18:22 +0000 (12:18 +0100)] 
Merge branch 'docs-forwarding-filters' into 'master'

policy docs: warn about filters and forwarding

See merge request knot/knot-resolver!1241

3 years agopolicy docs: warn about filters and forwarding
Vladimír Čunát [Tue, 14 Dec 2021 17:33:16 +0000 (18:33 +0100)] 
policy docs: warn about filters and forwarding

We've been notified about possibility of "cache poisoning" this way,
so let's document this drawback to make the expectations clearer.

3 years agoMerge branch 'docs-hints-shadowed' into 'master'
Tomas Krizek [Tue, 11 Jan 2022 11:17:03 +0000 (12:17 +0100)] 
Merge branch 'docs-hints-shadowed' into 'master'

hints docs: better explain shadowing by policies

See merge request knot/knot-resolver!1244

3 years agohints docs: better explain shadowing by policies
Vladimír Čunát [Thu, 23 Dec 2021 10:11:12 +0000 (11:11 +0100)] 
hints docs: better explain shadowing by policies

3 years agoMerge branch 'doc-links-mailing-lists' into 'master'
Tomas Krizek [Tue, 11 Jan 2022 11:16:06 +0000 (12:16 +0100)] 
Merge branch 'doc-links-mailing-lists' into 'master'

doc: fix links to our mailing lists

See merge request knot/knot-resolver!1247

3 years agodoc: fix links to our mailing lists
Vladimír Čunát [Mon, 10 Jan 2022 18:23:26 +0000 (19:23 +0100)] 
doc: fix links to our mailing lists

Their implementation was changed.
Fortunately I was able to find the message in Google's cache
and thus discover easily which one it is in the new archive.

3 years agoMerge branch 'doh-cors' into 'master'
Tomas Krizek [Tue, 11 Jan 2022 11:11:58 +0000 (12:11 +0100)] 
Merge branch 'doh-cors' into 'master'

doh2: fix CORS by adding `access-control-allow-origin: *`

See merge request knot/knot-resolver!1246

3 years agodoh2 tests: check CORS headers
Vladimír Čunát [Mon, 10 Jan 2022 17:16:04 +0000 (18:16 +0100)] 
doh2 tests: check CORS headers

I didn't feel like adding it to every test, so I picked a mix.
I confirmed this would fail before the parent commit.

3 years agodoh2: fix CORS by adding `access-control-allow-origin: *`
Vladimír Čunát [Mon, 10 Jan 2022 17:07:44 +0000 (18:07 +0100)] 
doh2: fix CORS by adding `access-control-allow-origin: *`

For old doh we added this in commit a34aa1ee743;
with the new implementation we somehow forgot.

3 years agoMerge branch 'release-5-4-4' into 'master' obs-knot-resolver-es11k1/deployments/1985 obs-knot-resolver-es11k1/deployments/1986 obs-knot-resolver-es11k1/deployments/1987 obs-knot-resolver-es11k1/deployments/1988 obs-knot-resolver-es11k1/deployments/1989 obs-knot-resolver-es11k1/deployments/1990
Tomas Krizek [Wed, 5 Jan 2022 14:16:01 +0000 (15:16 +0100)] 
Merge branch 'release-5-4-4' into 'master'

release 5.4.4

Closes #692

See merge request knot/knot-resolver!1245

3 years agoMerge branch 'master' into 'release-5-4-4'
Tomas Krizek [Wed, 5 Jan 2022 14:15:23 +0000 (14:15 +0000)] 
Merge branch 'master' into 'release-5-4-4'

# Conflicts:
#   NEWS

3 years agorelease 5.4.4 obs-knot-resolver-kv62s6/deployments/1983 92925 v5.4.4
Tomas Krizek [Wed, 5 Jan 2022 13:04:10 +0000 (14:04 +0100)] 
release 5.4.4

3 years agoMerge !1225: prefill module: add ZONEMD support obs-knot-resolver-es11k1/deployments/1970 obs-knot-resolver-es11k1/deployments/1971 obs-knot-resolver-es11k1/deployments/1972 obs-knot-resolver-es11k1/deployments/1973 obs-knot-resolver-es11k1/deployments/1974 obs-knot-resolver-es11k1/deployments/1975 obs-knot-resolver-es11k1/deployments/1976 obs-knot-resolver-es11k1/deployments/1977 obs-knot-resolver-es11k1/deployments/1978 obs-knot-resolver-es11k1/deployments/1979 obs-knot-resolver-es11k1/deployments/1980 obs-knot-resolver-es11k1/deployments/1981 obs-knot-resolver-es11k1/deployments/1982
Vladimír Čunát [Thu, 23 Dec 2021 09:23:00 +0000 (10:23 +0100)] 
Merge !1225: prefill module: add ZONEMD support

3 years agodaemon/zimport: better failure logging
Vladimír Čunát [Wed, 22 Dec 2021 12:50:46 +0000 (13:50 +0100)] 
daemon/zimport: better failure logging

The typical DNSSEC problems should happen already when trying to
validate the DNSKEY set, so it's better to be more verbose there.

In the end I gave up on deduplicating with log_bogus_rrsig() code,
as it's different logging group, logging level, no kr_query, etc.

3 years agodaemon/zimport: add unit tests for ZONEMD computation
Vladimír Čunát [Thu, 16 Dec 2021 09:36:39 +0000 (10:36 +0100)] 
daemon/zimport: add unit tests for ZONEMD computation

3 years agomodules/prefill nit: explicit conversion isn't needed here
Vladimír Čunát [Thu, 2 Dec 2021 18:29:30 +0000 (19:29 +0100)] 
modules/prefill nit: explicit conversion isn't needed here

3 years agomodules/prefill nit: unify log tag to `[prefil]`
Vladimír Čunát [Thu, 2 Dec 2021 18:32:17 +0000 (19:32 +0100)] 
modules/prefill nit: unify log tag to `[prefil]`

3 years agolib/log: remove the unused log groups
Vladimír Čunát [Fri, 3 Dec 2021 09:23:14 +0000 (10:23 +0100)] 
lib/log: remove the unused log groups

We can always easily add groups when needed.

3 years agodaemon/zimport: rewrite, support ZONEMD
Vladimír Čunát [Fri, 3 Dec 2021 10:02:01 +0000 (11:02 +0100)] 
daemon/zimport: rewrite, support ZONEMD

The approach of the code was rather hacky, simulating some packets
arriving from upstream and making the module stack CONSUME that.
Instead we take a direct approach now: use the simplified validator API
and then insert into cache directly.

One effect is improved performance, and consequently roughly halving
the lag which happens when prefill module invokes this.
(With root zone the lag goes down to 0.1 s from over 0.2 s,
 on my relatively fast CPU.  Fortunately it's just once a day.)

3 years agoMerge !1239: policy: log selected actions, add .IPTRACE obs-knot-resolver-es11k1/deployments/1969
Vladimír Čunát [Wed, 22 Dec 2021 10:04:18 +0000 (11:04 +0100)] 
Merge !1239: policy: log selected actions, add .IPTRACE

Closes #689

3 years agopolicy: add policy.IPTRACE logging action
Vladimír Čunát [Thu, 16 Dec 2021 12:51:16 +0000 (13:51 +0100)] 
policy: add policy.IPTRACE logging action

3 years agodoc: add mention about policy debug logging near RPZ
Tomas Krizek [Wed, 15 Dec 2021 15:27:21 +0000 (16:27 +0100)] 
doc: add mention about policy debug logging near RPZ

3 years agodoc: fix link to log groups
Tomas Krizek [Wed, 15 Dec 2021 15:16:15 +0000 (16:16 +0100)] 
doc: fix link to log groups

3 years agopolicy: log selected actions
Tomas Krizek [Wed, 15 Dec 2021 15:11:46 +0000 (16:11 +0100)] 
policy: log selected actions

The following actions will now be logged in debug level (or request
tracing): ANSWER, DENY, DENY_MSG, DROP, REFUSE, TC

This can be useful for RPZ and other policy debugging.

Purposefully ommitted actions:
PASS - since it's the same as normal processing
REROUTE - the action itself comes from renumber module
STUB,FORWARD,TLS_FORWARD - this could be more confusing than useful
  (e.g. when response comes from cache)

3 years agoMerge branch 'extended-errors' into 'master' obs-knot-resolver-es11k1/deployments/1968
Tomas Krizek [Tue, 21 Dec 2021 14:02:59 +0000 (15:02 +0100)] 
Merge branch 'extended-errors' into 'master'

extended DNS errors support

See merge request knot/knot-resolver!1234

3 years agoede: add pytest coverage
Tomas Krizek [Mon, 20 Dec 2021 14:16:38 +0000 (15:16 +0100)] 
ede: add pytest coverage

3 years agoede: mark every error with a unique tag
Tomas Krizek [Fri, 17 Dec 2021 16:05:33 +0000 (17:05 +0100)] 
ede: mark every error with a unique tag

To allow for easier debugging, each origin of an extended DNS error has
a unique 4-byte identifier that is included in the extra_text message.

The identifiers are random 4-letter base32 strings, generated with:
base32 /dev/random | head -c 4

3 years agolua: set_extended_error() func for kr_request
Tomas Krizek [Fri, 17 Dec 2021 16:03:28 +0000 (17:03 +0100)] 
lua: set_extended_error() func for kr_request

Add a utility function for simpler lua API when setting extended errors.

3 years agolibknot: bump dependency version to 3.0.2
Tomas Krizek [Wed, 27 Oct 2021 11:36:33 +0000 (13:36 +0200)] 
libknot: bump dependency version to 3.0.2

Version 2.9 isn't supported anymore anyway, but 3.0.2 is needed for
extended error constants.

3 years agopolicy: add extended errors
Tomas Krizek [Tue, 23 Nov 2021 16:46:38 +0000 (17:46 +0100)] 
policy: add extended errors

3 years agomodules/dns64: EDE - mark as forged
Tomas Krizek [Mon, 22 Nov 2021 16:55:59 +0000 (17:55 +0100)] 
modules/dns64: EDE - mark as forged

3 years agolua: extended_error const table
Tomas Krizek [Mon, 22 Nov 2021 16:53:32 +0000 (17:53 +0100)] 
lua: extended_error const table

3 years agokluautil: kr_string2c function
Tomas Krizek [Mon, 22 Nov 2021 16:52:19 +0000 (17:52 +0100)] 
kluautil: kr_string2c function