]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Vladimír Čunát [Tue, 22 Feb 2022 10:47:25 +0000 (11:47 +0100)]
Merge !1259: .gitlab-ci: Coverity scan
Implements #450
Oto Šťáva [Thu, 10 Feb 2022 10:16:24 +0000 (11:16 +0100)]
.gitlab-ci: Coverity scan
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
Oto Šťáva [Fri, 18 Feb 2022 10:15:38 +0000 (11:15 +0100)]
daemon/tls: fix TLS client resumption
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
Oto Šťáva [Wed, 2 Feb 2022 14:43:11 +0000 (15:43 +0100)]
lib/resolve: EDNS padding for outgoing TLS queries
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
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.
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
Oto Šťáva [Mon, 15 Nov 2021 13:03:01 +0000 (14:03 +0100)]
daemon/worker: add task timeouts for upstream TCP connections
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
Oto Šťáva [Thu, 27 Jan 2022 14:19:02 +0000 (15:19 +0100)]
daemon/bindings/net: add interface name to link-local IPv6 addresses
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
Tomas Krizek [Mon, 10 Jan 2022 14:38:15 +0000 (15:38 +0100)]
tests/README: merge with docs
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).
Tomas Krizek [Wed, 22 Dec 2021 12:24:18 +0000 (13:24 +0100)]
ci: omit extra dependencies for arm
Tomas Krizek [Tue, 21 Dec 2021 16:22:27 +0000 (17:22 +0100)]
gitignore: pytests junit xml files
Tomas Krizek [Tue, 21 Dec 2021 16:20:46 +0000 (17:20 +0100)]
ci/images: automate build&push of images
Tomas Krizek [Tue, 21 Dec 2021 15:36:26 +0000 (16:36 +0100)]
meson: update dependencies for deckard
Tomas Krizek [Tue, 21 Dec 2021 15:36:09 +0000 (16:36 +0100)]
tests: bring README up to date
Tomas Krizek [Mon, 15 Nov 2021 15:34:18 +0000 (16:34 +0100)]
meson: minor cleanup
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
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.
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
Vladimír Čunát [Thu, 23 Dec 2021 10:11:12 +0000 (11:11 +0100)]
hints docs: better explain shadowing by policies
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
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.
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
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.
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.
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
Tomas Krizek [Wed, 5 Jan 2022 14:15:23 +0000 (14:15 +0000)]
Merge branch 'master' into 'release-5-4-4'
# Conflicts:
# NEWS
Tomas Krizek [Wed, 5 Jan 2022 13:04:10 +0000 (14:04 +0100)]
release 5.4.4
Vladimír Čunát [Thu, 23 Dec 2021 09:23:00 +0000 (10:23 +0100)]
Merge !1225: prefill module: add ZONEMD support
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.
Vladimír Čunát [Thu, 16 Dec 2021 09:36:39 +0000 (10:36 +0100)]
daemon/zimport: add unit tests for ZONEMD computation
Vladimír Čunát [Thu, 2 Dec 2021 18:29:30 +0000 (19:29 +0100)]
modules/prefill nit: explicit conversion isn't needed here
Vladimír Čunát [Thu, 2 Dec 2021 18:32:17 +0000 (19:32 +0100)]
modules/prefill nit: unify log tag to `[prefil]`
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.
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.)
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
Vladimír Čunát [Thu, 16 Dec 2021 12:51:16 +0000 (13:51 +0100)]
policy: add policy.IPTRACE logging action
Tomas Krizek [Wed, 15 Dec 2021 15:27:21 +0000 (16:27 +0100)]
doc: add mention about policy debug logging near RPZ
Tomas Krizek [Wed, 15 Dec 2021 15:16:15 +0000 (16:16 +0100)]
doc: fix link to log groups
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)
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
Tomas Krizek [Mon, 20 Dec 2021 14:16:38 +0000 (15:16 +0100)]
ede: add pytest coverage
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
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.
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.
Tomas Krizek [Tue, 23 Nov 2021 16:46:38 +0000 (17:46 +0100)]
policy: add extended errors
Tomas Krizek [Mon, 22 Nov 2021 16:55:59 +0000 (17:55 +0100)]
modules/dns64: EDE - mark as forged
Tomas Krizek [Mon, 22 Nov 2021 16:53:32 +0000 (17:53 +0100)]
lua: extended_error const table
Tomas Krizek [Mon, 22 Nov 2021 16:52:19 +0000 (17:52 +0100)]
kluautil: kr_string2c function
Tomas Krizek [Mon, 15 Nov 2021 16:42:58 +0000 (17:42 +0100)]
ede: handle not authoritative
Tomas Krizek [Mon, 15 Nov 2021 16:35:28 +0000 (17:35 +0100)]
ede: handle stale answers
Tomas Krizek [Thu, 11 Nov 2021 14:12:05 +0000 (15:12 +0100)]
ede: add KNOT_EDNS_EDE_NREACH_AUTH
Tomas Krizek [Tue, 9 Nov 2021 15:06:25 +0000 (16:06 +0100)]
logging: remove QVERBOSE in favor of kr_log_q
Tomas Krizek [Tue, 9 Nov 2021 14:10:46 +0000 (15:10 +0100)]
modules/extended_error: package module
Tomas Krizek [Thu, 4 Nov 2021 11:05:31 +0000 (12:05 +0100)]
validate: additional EDE DNSSEC errors
Tomas Krizek [Mon, 1 Nov 2021 14:39:04 +0000 (15:39 +0100)]
validate: refactor - remove check for impossible return values
kr_dnskeys_trusted() only returns EINVAL, ENOENT or EOK.
Tomas Krizek [Fri, 29 Oct 2021 14:34:33 +0000 (16:34 +0200)]
validate: add extended DNS errors
Tomas Krizek [Wed, 27 Oct 2021 14:32:18 +0000 (16:32 +0200)]
modules/extended_error: OPT section modification
Tomas Krizek [Wed, 27 Oct 2021 14:11:24 +0000 (16:11 +0200)]
lib/log: add LOG_GRP_EDE
Tomas Krizek [Tue, 26 Oct 2021 12:43:12 +0000 (14:43 +0200)]
lib/resolve: kr_extended_error_t and related func
Vladimír Čunát [Tue, 21 Dec 2021 09:08:53 +0000 (10:08 +0100)]
Merge !1242: ci nix: avoid the failure
Vladimír Čunát [Mon, 20 Dec 2021 11:48:04 +0000 (12:48 +0100)]
ci nix: tweak details around using "unstable" nix CLI
We don't need this on the versions before nix 2.4,
but let's switch now already.
Vladimír Čunát [Thu, 16 Dec 2021 11:24:22 +0000 (12:24 +0100)]
ci nix: temporarily(?) avoid issues
Vladimír Čunát [Tue, 21 Dec 2021 07:42:17 +0000 (08:42 +0100)]
Merge !1240: lib/utils: rename union inaddr to union kr_sockaddr
Oto Šťáva [Mon, 20 Dec 2021 11:28:40 +0000 (12:28 +0100)]
lib/utils: rename union inaddr to union kr_sockaddr
Tomas Krizek [Thu, 9 Dec 2021 11:48:05 +0000 (12:48 +0100)]
Merge branch 'fix-aws-console' into 'master'
iterate: fix bad zone_cut update in a rare case
See merge request knot/knot-resolver!1237
Vladimír Čunát [Wed, 8 Dec 2021 13:42:50 +0000 (14:42 +0100)]
iterate nit: don't log a space at the end of a line
Vladimír Čunát [Wed, 8 Dec 2021 13:30:18 +0000 (14:30 +0100)]
iterate: fix bad zone_cut update in a rare case
https://forum.turris.cz/t/kresd-name-unresolution/16275
Example problematic query during QNAME minimization:
```
[resolv][43578.24] => id: '08532' querying: 'ns-921.amazon.com.'@'34.196.62.143#00053' zone cut: 'aws.amazon.com.' qname: 'coNsOlE.aWs.AmAzON.Com.' qtype: 'NS' proto: 'udp'
[iterat][43578.24] <= answer received:
;; ->>HEADER<<- opcode: QUERY; status: NXDOMAIN; id: 8532
;; Flags: qr aa QUERY: 1; ANSWER: 4; AUTHORITY: 1; ADDITIONAL: 0
;; QUESTION SECTION
console.aws.amazon.com. NS
;; ANSWER SECTION
console.aws.amazon.com. 600 NS ns-921.amazon.com.
console.aws.amazon.com. 60 CNAME us-east-1.console.aws.amazon.com.
us-east-1.console.aws.amazon.com. 600 NS ns-921.amazon.com.
us-east-1.console.aws.amazon.com. 60 CNAME gr.console-geo.us-east-1.amazonaws.com.
;; AUTHORITY SECTION
us-east-1.amazonaws.com. 60 SOA ns-921.amazon.com. root.amazon.com.
1638962488 3600 900
7776000 60
[iterat][43578.24] <= rcode: NXDOMAIN
```
Here the zone_cut would get updated to us-east-1.console.aws.amazon.com.
breaking further resolution towards eu-west-3.console.aws.amazon.com.
Tomas Krizek [Wed, 1 Dec 2021 11:52:38 +0000 (12:52 +0100)]
Merge branch 'release-5-4-3' into 'master'
release 5.4.3
See merge request knot/knot-resolver!1236
Tomas Krizek [Fri, 26 Nov 2021 10:48:58 +0000 (11:48 +0100)]
release 5.4.3
Tomas Krizek [Fri, 26 Nov 2021 10:48:45 +0000 (11:48 +0100)]
AUTHORS: update
Tomas Krizek [Tue, 30 Nov 2021 16:57:36 +0000 (17:57 +0100)]
Merge branch 'nitpicks' into 'master'
nitpicks
See merge request knot/knot-resolver!1235
Tomas Krizek [Mon, 22 Nov 2021 16:55:19 +0000 (17:55 +0100)]
config: properly document loading of hints module
Tomas Krizek [Fri, 26 Nov 2021 10:33:42 +0000 (11:33 +0100)]
Merge branch 'parse-rdata' into 'master'
lua: add parse_rdata() utility function
See merge request knot/knot-resolver!1233
Tomas Krizek [Thu, 25 Nov 2021 12:12:43 +0000 (13:12 +0100)]
doc: document kres.parse_rdata() near policy.ANSWER
Tomas Krizek [Thu, 25 Nov 2021 11:14:31 +0000 (12:14 +0100)]
config.basic: test coverage for parse_rdata()
Tomas Krizek [Thu, 25 Nov 2021 10:43:30 +0000 (11:43 +0100)]
lua: add parse_rdata() utility function
Credit for code goes to Vladimír Čunát
Tomas Krizek [Wed, 24 Nov 2021 15:02:07 +0000 (16:02 +0100)]
Merge branch 'reroute-renumber' into 'master'
renumber and reroute: documentation updates
See merge request knot/knot-resolver!1232
Tomas Krizek [Wed, 24 Nov 2021 13:55:54 +0000 (14:55 +0100)]
renumber: graceful error on invalid subnet
Tomas Krizek [Tue, 23 Nov 2021 14:27:16 +0000 (15:27 +0100)]
policy: update REROUTE doc to reflect real configuration
Tomas Krizek [Tue, 23 Nov 2021 14:23:07 +0000 (15:23 +0100)]
renumber: warn when using unsupported network mask
Tomas Krizek [Tue, 23 Nov 2021 10:24:01 +0000 (11:24 +0100)]
modules/renumber: remove useless code
Unspecified mask is already returned as full bitlen by
kr_straddr_subnet().
Vladimír Čunát [Tue, 23 Nov 2021 18:52:42 +0000 (19:52 +0100)]
Merge !1230: lua: ensure answer_clear() keeps original EDNS
Fixes #657
Tomas Krizek [Fri, 19 Nov 2021 16:25:33 +0000 (17:25 +0100)]
lua: ensure answer_clear() keeps original EDNS
Answers to EDNS requests from certain lua policies that use the
answer_clear() function would lack OPT RR and thus violate the MUST
condition in RFC6891.6.1.1.
Tomas Krizek [Tue, 23 Nov 2021 14:42:30 +0000 (15:42 +0100)]
Merge branch 'nitpicks' into 'master'
nitpicks
See merge request knot/knot-resolver!1224
Tomas Krizek [Thu, 18 Nov 2021 20:20:35 +0000 (21:20 +0100)]
doc: edns_keepalive
Tomas Krizek [Wed, 10 Nov 2021 14:57:42 +0000 (15:57 +0100)]
ci: use allow_failure for known issues
Tomas Krizek [Wed, 10 Nov 2021 13:12:09 +0000 (14:12 +0100)]
tests/config: increate http timeouts to 16s
On some platforms in CI, even 8s doesn't seem sufficient enough to
guarantee stability. Hopefully this improves the situation.
Tomas Krizek [Mon, 22 Nov 2021 10:02:33 +0000 (11:02 +0100)]
Merge branch 'gitignore-cache' into 'master'
.gitignore: add '.cache'
See merge request knot/knot-resolver!1231
Oto Šťáva [Mon, 22 Nov 2021 10:02:33 +0000 (11:02 +0100)]
.gitignore: add '.cache'
Tomas Krizek [Fri, 19 Nov 2021 16:37:22 +0000 (17:37 +0100)]
Merge branch 'policy-domain' into 'master'
modules/policy: add 'domain' filter for equality matching
See merge request knot/knot-resolver!1228
Oto Šťáva [Fri, 19 Nov 2021 13:44:44 +0000 (14:44 +0100)]
modules/policy: deduplicate doc
Vladimír Čunát [Fri, 19 Nov 2021 13:03:50 +0000 (14:03 +0100)]
modules/policy docs: tweak an example
Overriding records makes more sense on a particular name
than in a whole sub-tree.
Oto Šťáva [Fri, 19 Nov 2021 12:57:43 +0000 (13:57 +0100)]
modules/policy: fix doc
Oto Šťáva [Fri, 19 Nov 2021 12:27:16 +0000 (13:27 +0100)]
modules/policy: fix unused variable (luacheck)