]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Grigorii Demidov [Fri, 13 Apr 2018 08:19:14 +0000 (10:19 +0200)]
daemon/worker: robustness against the slow-lorris attack
Petr Špaček [Fri, 20 Apr 2018 15:26:29 +0000 (17:26 +0200)]
Merge branch 'stale_verbose' into 'master'
serve_stale: log only in verbose mode
See merge request knot/knot-resolver!564
Petr Špaček [Fri, 20 Apr 2018 14:50:24 +0000 (16:50 +0200)]
serve_stale: log only in verbose mode
Tomas Krizek [Fri, 20 Apr 2018 14:43:27 +0000 (16:43 +0200)]
Merge branch 'packaging-update' into 'master'
distro/rpm: update dependency declarations to conform with pkg standards
See merge request knot/knot-resolver!563
Tomas Krizek [Fri, 20 Apr 2018 14:34:19 +0000 (16:34 +0200)]
distro/rpm: update dependency declarations to conform with pkg standards
Tomas Krizek [Fri, 20 Apr 2018 14:19:30 +0000 (16:19 +0200)]
Merge branch 'packaging-update' into 'master'
distro/deb: add prefill module
See merge request knot/knot-resolver!562
Tomas Krizek [Fri, 20 Apr 2018 13:57:33 +0000 (15:57 +0200)]
distro/deb: add prefill module
Petr Špaček [Fri, 20 Apr 2018 11:11:26 +0000 (13:11 +0200)]
Merge branch 'fromjson' into 'master'
export a JSON decode function to lua
See merge request knot/knot-resolver!560
Anbang Wen [Wed, 18 Apr 2018 20:37:42 +0000 (13:37 -0700)]
export a JSON decode function to lua
Since there is already a bundled JSON library, expose it to lua for
modules to use.
Petr Špaček [Thu, 19 Apr 2018 12:13:10 +0000 (14:13 +0200)]
Merge branch 'separate-tls-counter' into 'master'
daemon/worker: separate counter for TLS sendings
See merge request knot/knot-resolver!557
Grigorii Demidov [Fri, 13 Apr 2018 15:42:55 +0000 (17:42 +0200)]
daemon/worker: separate counter for TLS sendings
Petr Špaček [Wed, 18 Apr 2018 15:18:59 +0000 (17:18 +0200)]
Merge branch 'root-zone-import' into 'master'
root zone import implementation
See merge request knot/knot-resolver!511
Petr Špaček [Wed, 18 Apr 2018 12:33:42 +0000 (14:33 +0200)]
prefill: documentation
Petr Špaček [Wed, 18 Apr 2018 10:49:50 +0000 (12:49 +0200)]
prefill: replace CA directory path with CA file path
luasec internally calls SSL_CTX_load_verify_locations() which has
non-intuituve behavior for directories. Given that we already use path
to certificate file for TLS_FORWARD it is better to use consistent and
intuitive interface.
Petr Špaček [Wed, 18 Apr 2018 10:45:16 +0000 (12:45 +0200)]
prefill: mandate explicit URL configuration
Default values would cause confusion when we introduce support for
non-root zones.
Petr Špaček [Wed, 18 Apr 2018 07:46:28 +0000 (09:46 +0200)]
prefill: configation syntax for multiple zones
Only root zone can be imported (for now) but we want to
avoid changing syntax when support for other zones is added.
Petr Špaček [Mon, 16 Apr 2018 16:07:04 +0000 (18:07 +0200)]
prefill: import zone immediately after start
Delaying import would leak bunch of queries from the resolver between
moment of start and import.
Petr Špaček [Mon, 16 Apr 2018 16:03:05 +0000 (18:03 +0200)]
prefill: split into separate functions, handle daemon restart
The original prefill module did not import zone data after daemon
restart unless the file TTL was expired. The module now reuses data
on disk as long as TTL is not expired, and imports the zone after module
load.
Petr Špaček [Mon, 16 Apr 2018 11:59:56 +0000 (13:59 +0200)]
prefill: avoid rename syscall
An attempt to rename/move temporary file to its final destination will
fail if /tmp and working directory belong to different filesystems.
It seems that temporary file is not required so it easier to get rid of
it altogether.
Petr Špaček [Mon, 16 Apr 2018 11:59:04 +0000 (13:59 +0200)]
zimport: fix error reporting
Petr Špaček [Fri, 13 Apr 2018 19:24:00 +0000 (21:24 +0200)]
prefill: log delay before first refresh
Petr Špaček [Fri, 13 Apr 2018 18:04:11 +0000 (20:04 +0200)]
prefill: check that CA path is a directory, use name ca_dir for clarity
Petr Špaček [Fri, 13 Apr 2018 12:30:00 +0000 (14:30 +0200)]
prefill: mandate certificate verification
ca_path parameter is now required so the module does not do anything
until its config() method is called.
Petr Špaček [Fri, 13 Apr 2018 07:42:55 +0000 (09:42 +0200)]
prefill: rename local variables prefetch -> prefill
Grigorii Demidov [Tue, 6 Mar 2018 15:49:00 +0000 (16:49 +0100)]
daemon: cache prefill module
Grigorii Demidov [Fri, 2 Mar 2018 11:26:47 +0000 (12:26 +0100)]
lib/utils: merge kr_rrkey() and kr_rrkey2() functions
The old kr_rrkey() was used only on one place (and incorrectly) so now
we are replacing both copies with single implementation for general
resolver and root zone import.
It should not make any practical difference.
Grigorii Demidov [Tue, 27 Feb 2018 16:25:01 +0000 (17:25 +0100)]
daemon: root zone import
Petr Špaček [Wed, 18 Apr 2018 11:10:48 +0000 (13:10 +0200)]
Merge branch 'marek/fix-infinite-loop-on-send-error' into 'master'
worker: fixed infinite loop on send failure
See merge request knot/knot-resolver!559
Marek Vavruša [Sat, 14 Apr 2018 04:18:42 +0000 (21:18 -0700)]
worker: fixed infinite loop on send failure
The problem here is when qr_task_send() returns an error, the
following error handler will attempt to cancel all tasks that were
started on the same connection, but that will only work for the first
task (which is finished), the qr_task_on_send() will have no effect
on tasks in progress as the passed handle is NULL, and the task->finished
is false, thus looping infinitely.
The solution here is to let the rest of the tasks complete, even though
sending answer back will fail (which is fine).
Petr Špaček [Fri, 13 Apr 2018 17:12:59 +0000 (19:12 +0200)]
Merge branch 'tls_polish' into 'master'
tls_client logging and doc improvements
See merge request knot/knot-resolver!536
Petr Špaček [Thu, 29 Mar 2018 11:33:18 +0000 (13:33 +0200)]
tls_client: log specific errors during CA+hostname authentication
Petr Špaček [Thu, 29 Mar 2018 11:36:18 +0000 (13:36 +0200)]
tls_client: unify spelling tls-client -> tls_client
Petr Špaček [Thu, 29 Mar 2018 11:32:57 +0000 (13:32 +0200)]
tls_client: verbose log number of imported certificates
Petr Špaček [Thu, 29 Mar 2018 11:32:09 +0000 (13:32 +0200)]
tls_client: fix CA authentication examples in documentation
Vladimír Čunát [Fri, 13 Apr 2018 15:34:35 +0000 (17:34 +0200)]
Merge !558: worker_ctx: migrate leaders from map_t to trie_t
Vladimír Čunát [Fri, 13 Apr 2018 14:15:26 +0000 (16:15 +0200)]
worker_ctx: migrate leaders from map_t to trie_t
Vladimír Čunát [Fri, 13 Apr 2018 13:16:22 +0000 (15:16 +0200)]
lib/generic/array: add array_push_mm shorthand
It just feels more consistent with the rest.
Vladimír Čunát [Fri, 13 Apr 2018 14:35:38 +0000 (16:35 +0200)]
Merge !556: daemon/worker: fix missed statistics for TLS writes
Grigorii Demidov [Fri, 13 Apr 2018 13:49:13 +0000 (15:49 +0200)]
daemon/worker: fix missed collection of statistics when data is sended over TLS
Petr Špaček [Fri, 13 Apr 2018 07:32:03 +0000 (09:32 +0200)]
Merge branch 'tls-crash' into 'master'
improve TLS error handling
Closes #340
See merge request knot/knot-resolver!555
Grigorii Demidov [Wed, 11 Apr 2018 08:52:29 +0000 (10:52 +0200)]
daemon: improved error handling
Grigorii Demidov [Tue, 10 Apr 2018 15:02:56 +0000 (17:02 +0200)]
daemon: improved error handling
Vladimír Čunát [Thu, 12 Apr 2018 15:59:51 +0000 (17:59 +0200)]
Merge !550: add trie from knot-dns...
... and migrate kr_zonecut to it.
Vladimír Čunát [Tue, 10 Apr 2018 17:41:15 +0000 (19:41 +0200)]
lib/generic/set: it's unused, so stop including it
Vladimír Čunát [Tue, 10 Apr 2018 17:19:55 +0000 (19:19 +0200)]
struct kr_zonecut::nsset: migrate from map_t to trie_t
Vladimír Čunát [Tue, 10 Apr 2018 17:17:42 +0000 (19:17 +0200)]
lib/generic/trie: KR_EXPORT some functions
Needed for followup commits. The trie_* names aren't ideal for global
namespace, but ATM I can't see a better way.
Vladimír Čunát [Tue, 10 Apr 2018 17:17:10 +0000 (19:17 +0200)]
lib/generic/{array,pack}: improve documentation
Vladimír Čunát [Tue, 10 Apr 2018 17:15:58 +0000 (19:15 +0200)]
lib/generic/trie: documentation nitpicks
Vladimír Čunát [Tue, 10 Apr 2018 12:35:49 +0000 (14:35 +0200)]
pack_clone: new function
Vladimír Čunát [Tue, 10 Apr 2018 09:50:03 +0000 (11:50 +0200)]
lib/generic/trie: avoid uint redefinition
Well, we could e.g require C11 instead of C99, but this one is easy.
Vladimír Čunát [Tue, 10 Apr 2018 09:33:23 +0000 (11:33 +0200)]
lib/generic/trie: add tries from knot-dns
(Don't use them anywhere yet.)
Petr Špaček [Thu, 12 Apr 2018 15:42:59 +0000 (17:42 +0200)]
Merge branch 'marek/fix-servfails-for-root-ds' into 'master'
fixed validation of root DS
See merge request knot/knot-resolver!544
Vladimír Čunát [Mon, 9 Apr 2018 13:01:48 +0000 (15:01 +0200)]
validate: avoid DNSSEC_NODS for . DS queries
... after the parent commit. Perhaps it can't cause trouble,
but I'll feel safer this way.
Marek Vavruša [Thu, 5 Apr 2018 03:41:15 +0000 (20:41 -0700)]
fixed validation of root DS
The root DS exists outside of DNS hierarchy, so its NSEC proving non-existence
always contains the SOA, as that's the root of DNS and there's nothing above it.
Petr Špaček [Thu, 12 Apr 2018 10:13:30 +0000 (12:13 +0200)]
Merge branch 'vicky/disable_dupcheck_for_listenfd' into 'master'
Always create a endpoint in network_listen_fd
See merge request knot/knot-resolver!523
Vicky Shrestha [Wed, 17 Jan 2018 05:10:15 +0000 (21:10 -0800)]
Always create a endpoint in network_listen_fd
There is no need to check for unique addr+port for FDs passed
by a supervisor process like systemd.
Vladimír Čunát [Thu, 12 Apr 2018 09:05:43 +0000 (11:05 +0200)]
Merge !554: ci: GIT_STRATEGY: clone
Vladimír Čunát [Thu, 12 Apr 2018 08:47:27 +0000 (10:47 +0200)]
ci: GIT_STRATEGY: clone
Tomas Krizek [Wed, 11 Apr 2018 08:16:15 +0000 (10:16 +0200)]
Merge branch 'packaging-improvements' into 'master'
Packaging improvements
Closes #323
See merge request knot/knot-resolver!540
Tomas Krizek [Thu, 5 Apr 2018 16:10:18 +0000 (18:10 +0200)]
distro/deb: sync keyfile-ro patch from debian
Tomas Krizek [Tue, 27 Mar 2018 14:07:16 +0000 (16:07 +0200)]
distro/deb: avoid shipping duplicate root.hints and icann-ca.pem
Closes #323
Petr Špaček [Tue, 10 Apr 2018 07:00:07 +0000 (09:00 +0200)]
Merge branch 'aho-corasick-update' into 'master'
Aho corasick update
See merge request knot/knot-resolver!548
Daniel Kahn Gillmor [Mon, 9 Apr 2018 19:08:52 +0000 (15:08 -0400)]
Update lua-aho-corasick build rules
This continues work done in !547 by respecting sensible build patterns
across a submodule.
Daniel Kahn Gillmor [Mon, 9 Apr 2018 19:11:02 +0000 (15:11 -0400)]
use https for lua-aho-corasick submodule
Vladimír Čunát [Mon, 9 Apr 2018 13:55:30 +0000 (15:55 +0200)]
Merge !547: use CPPFLAGS if set
Daniel Kahn Gillmor [Mon, 9 Apr 2018 04:14:00 +0000 (00:14 -0400)]
use CPPFLAGS if set
CPPFLAGS is a traditional build environment variable used to set C
pre-processor flags. Accept these flags during the build if they've
been set.
Grigorii Demidov [Mon, 9 Apr 2018 08:41:30 +0000 (10:41 +0200)]
Merge branch 'marek/fix-parentchild-insecure-delegation' into 'master'
iterate: update zone cut when NS is authoritative for both parent and child
See merge request knot/knot-resolver!543
Grigorii Demidov [Mon, 9 Apr 2018 08:26:25 +0000 (10:26 +0200)]
iterate: move structure declaratin outside of ifdef block
Marek Vavruša [Sun, 8 Apr 2018 01:37:55 +0000 (18:37 -0700)]
iterate: update zone cut when NS is authoritative for both parent and child
In some cases the NS is authoritative for both parent and the child side of
the delegation (e.g. nrl.navy.mil). When it gets the query for such NS,
it can respond from the child side with an NS record in the answer and AA=1.
The resolver should update the zone cut accordingly, otherwise it would fail
validation in cases when the child-side of the delegation is insecure,
but parent side of the delegation is secure, because the child side
would respond without DNSSEC records, and it wouldn't indicate that
the zone cut needs updating (when using minimal answers) (e.g. www.nrl.navy.mil).
Vladimír Čunát [Sat, 7 Apr 2018 13:10:23 +0000 (15:10 +0200)]
Merge !542: Grammar and wording improvements in README
David Beitey [Sat, 7 Apr 2018 12:33:36 +0000 (12:33 +0000)]
Grammar and wording improvements in README
Petr Špaček [Fri, 6 Apr 2018 13:28:19 +0000 (15:28 +0200)]
Merge branch 'nsfetch-nokey' into 'master'
lib/resolve: cut fetching: don't use root hints if no keys fetched, but glue addresses found
See merge request knot/knot-resolver!513
Vladimír Čunát [Mon, 5 Mar 2018 14:51:41 +0000 (15:51 +0100)]
lib/zonecut: nitpicks in kr_zonecut_has_glue()
Grigorii Demidov [Fri, 2 Mar 2018 11:34:09 +0000 (12:34 +0100)]
lib/zonecut: get rid off incorrect function name
Grigorii Demidov [Thu, 1 Mar 2018 10:43:48 +0000 (11:43 +0100)]
lib/resolve: cut fetching: don't use root hints if no keys fetched, but glue addresses found
Petr Špaček [Wed, 4 Apr 2018 07:19:27 +0000 (09:19 +0200)]
Merge branch 'nitpicks' into 'master'
Nitpicks
See merge request knot/knot-resolver!537
Vladimír Čunát [Thu, 29 Mar 2018 12:06:01 +0000 (14:06 +0200)]
docs: cross-linking nitpicks
- clickable module references
- clickable RFC references via :rfc:`NNN#anchor`
Vladimír Čunát [Thu, 29 Mar 2018 11:50:19 +0000 (13:50 +0200)]
predict: don't auto-load stats if not needed
and make docs conform to the reality.
Vladimír Čunát [Thu, 29 Mar 2018 11:15:08 +0000 (13:15 +0200)]
daemon/bindings: keep the pattern for function names
Vladimír Čunát [Thu, 29 Mar 2018 11:13:44 +0000 (13:13 +0200)]
document cache.ns_tout
Petr Špaček [Wed, 4 Apr 2018 07:06:17 +0000 (09:06 +0200)]
Merge branch 'validate-cname-nxdomain' into 'master'
validator: fix CNAME to NXDOMAIN in a single answer
See merge request knot/knot-resolver!538
Vladimír Čunát [Tue, 3 Apr 2018 14:15:26 +0000 (16:15 +0200)]
validator: fix CNAME to NXDOMAIN in a single answer
Real example: cname.nohats.ca
This case was handled for forwarding only, presumably because it
happened more often (no need to be withing single zone to be within
single answer); now the approach is the same.
Tomas Krizek [Wed, 28 Mar 2018 11:33:39 +0000 (13:33 +0200)]
Merge branch 'release-2-2-0' into 'master'
Release 2.2.0
See merge request knot/knot-resolver!535
Vladimír Čunát [Wed, 28 Mar 2018 10:36:40 +0000 (12:36 +0200)]
cache: nitpick after !532 (no effect)
Vladimír Čunát [Wed, 28 Mar 2018 09:42:02 +0000 (11:42 +0200)]
lua bindings: fix generator after !534
Tomas Krizek [Tue, 27 Mar 2018 08:57:59 +0000 (10:57 +0200)]
debian: bump to libkres7
Tomas Krizek [Tue, 27 Mar 2018 08:52:40 +0000 (10:52 +0200)]
release 2.2.0
Petr Špaček [Wed, 28 Mar 2018 09:26:35 +0000 (11:26 +0200)]
Merge branch 'serve-stale-rcache-v1' into 'master'
Serve stale with reputation cache: version 1
See merge request knot/knot-resolver!534
Grigorii Demidov [Thu, 22 Mar 2018 10:54:52 +0000 (11:54 +0100)]
lib/nsrep: cleanup
Grigorii Demidov [Wed, 21 Mar 2018 18:15:22 +0000 (19:15 +0100)]
lib/nsrep: tuning of serve-stale parameters; valid NS's sometimes been ignored by ns election algorithm, fixed
Grigorii Demidov [Tue, 20 Mar 2018 16:14:31 +0000 (17:14 +0100)]
daemon: tuning of stale-serve parameters
Grigorii Demidov [Mon, 19 Mar 2018 16:42:31 +0000 (17:42 +0100)]
daemon: time period which determines how long NS non-reachabilty will be cached made configurable
Grigorii Demidov [Mon, 19 Mar 2018 14:37:14 +0000 (15:37 +0100)]
daemon/engine: remove cache cleaning timer since this functionality was relocated to nsrep
Grigorii Demidov [Mon, 19 Mar 2018 14:15:00 +0000 (15:15 +0100)]
lib/nsrep: tuning of 'serve_stale' module
Grigorii Demidov [Mon, 12 Mar 2018 11:02:18 +0000 (12:02 +0100)]
lib/nsrep: when timeout occurs and NS has no cached RTT yet, don't mark it as timeouted
Grigorii Demidov [Fri, 9 Mar 2018 15:18:21 +0000 (16:18 +0100)]
lib/nsrep: don't mark NS as 'timeouted' immediately, but after two retries
Grigorii Demidov [Fri, 9 Mar 2018 10:35:54 +0000 (11:35 +0100)]
lib/nsrep: minor changes
Grigorii Demidov [Thu, 8 Mar 2018 16:15:42 +0000 (17:15 +0100)]
lib/nsrep: some changes in NS selection algorithm
Grigorii Demidov [Wed, 7 Mar 2018 16:21:07 +0000 (17:21 +0100)]
lib/nsrep: some changes in NS selection algorythm
Petr Špaček [Wed, 28 Mar 2018 09:09:25 +0000 (11:09 +0200)]
Merge branch 'fix-crash-with-large-rrsets' into 'master'
cache: fixed crash with RR sets with over 255 records
See merge request knot/knot-resolver!532