]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Petr Špaček [Wed, 3 Apr 2019 14:27:07 +0000 (16:27 +0200)]
stats: collect stats on inbound transport protocol
Petr Špaček [Wed, 3 Apr 2019 13:12:38 +0000 (15:12 +0200)]
doh: remember source transport
Petr Špaček [Wed, 3 Apr 2019 12:08:05 +0000 (14:08 +0200)]
doh: test RFC 8484 section 6 - huge answers
Petr Špaček [Tue, 2 Apr 2019 17:12:46 +0000 (19:12 +0200)]
doh: make client and server address available to modules
This will allow modules like view etc. work in the same way with packets
received over HTTP.
Petr Špaček [Tue, 2 Apr 2019 16:18:34 +0000 (18:18 +0200)]
doh: fix memory leaks
Petr Špaček [Tue, 2 Apr 2019 13:49:17 +0000 (15:49 +0200)]
doh: send out HTTP TTL
We intentionally compute max-age header as minimum over all RRs, doing
so only over ANSWER section does not make sense (and RFC 8484 allows us
to do so).
Petr Špaček [Mon, 1 Apr 2019 17:05:57 +0000 (19:05 +0200)]
doh: GET support, breaks on large payloads
This seems to be a limitation in cqueues but we have to confirm this.
Petr Špaček [Mon, 1 Apr 2019 16:01:08 +0000 (18:01 +0200)]
doh: checks around POST HTTP method
Vladimír Čunát [Fri, 29 Mar 2019 19:46:36 +0000 (20:46 +0100)]
fixup! WIP: DoH experiment
Vladimír Čunát [Fri, 29 Mar 2019 19:16:31 +0000 (20:16 +0100)]
cache: fix incorrect TTL of positive packets in cache
It's a regression of
b00ee5fa8 (v3.0.0). Fortunately, since that
version we use cache for positive packets only when they are BOGUS
(see `bool want_pkt =`) so that they're available for +cd queries.
Therefore the impact was really negligible, until the DoT module.
Petr Špaček [Fri, 29 Mar 2019 15:35:31 +0000 (16:35 +0100)]
DoH experiment
First version which actually works with Firefox DoH in default
configuration.
Limitations:
- does not support HTTP GET method
- headers for HTTP cache are not generated
- error handling is largely missing
- no tests
- ACLs will not work, modules do not see source IP address of the HTTP
endpoint
Petr Špaček [Wed, 10 Apr 2019 12:24:29 +0000 (12:24 +0000)]
Merge branch 'table_print' into 'master'
Usability improvements for table_print
See merge request knot/knot-resolver!790
Vladimír Čunát [Wed, 10 Apr 2019 11:59:14 +0000 (13:59 +0200)]
fixup! sandbox: table_print prints function signatures instead of pointers
Vladimír Čunát [Wed, 10 Apr 2019 11:44:59 +0000 (13:44 +0200)]
fixup! sandbox: table_print sorts table keys
Petr Špaček [Sat, 16 Mar 2019 11:26:19 +0000 (12:26 +0100)]
sandbox: table_print prints function signatures instead of pointers
This does not work with C functions etc. but it seems that we do not
expose them directly in Lua interface for users.
Petr Špaček [Sat, 16 Mar 2019 10:06:21 +0000 (11:06 +0100)]
sandbox: table_print sorts table keys
This makes it much easier to navigate in complex data structures.
AFAIK table_print is not used for anything except user interface so it
is not performance critical and we can re-sort table every time.
Tomas Krizek [Wed, 10 Apr 2019 11:06:42 +0000 (11:06 +0000)]
Merge branch 'deb-pkging-cleanup' into 'master'
drop libkres9 and libkres-dev packages
See merge request knot/knot-resolver!795
Daniel Kahn Gillmor [Sun, 24 Mar 2019 18:03:45 +0000 (19:03 +0100)]
drop libkres9 and libkres-dev packages
Debian packaging as of 3.2.1-3 is no longer shipping libkres9 or
libkres-dev (see https://bugs.debian.org/923970). This brings the
upstream debian-style packaging in line with the Debian packaging on
that front.
Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
Petr Špaček [Mon, 8 Apr 2019 12:44:49 +0000 (12:44 +0000)]
Merge branch 'ds-algo-nodata' into 'master'
validate nitpick fix: unsupported algo edge case
See merge request knot/knot-resolver!798
Vladimír Čunát [Thu, 28 Mar 2019 07:34:26 +0000 (08:34 +0100)]
validate nitpick fix: unsupported algo edge case
kr_dnskeys_trusted() semantics is changed, but I do NOT consider that
a part of public API.
Go insecure due to algorithm support even if DNSKEY is NODATA.
I can't see how that's relevant to practical usage, but I think this new
behavior makes more sense. We still do try to fetch the DNSKEY even
though we have information about its un-usability beforehand.
I'd consider fixing that a premature optimization.
We'll still be affected if the DNSKEY query SERVFAILs or something.
Thanks to PowerDNS people for catching this!
Petr Špaček [Fri, 5 Apr 2019 16:45:03 +0000 (16:45 +0000)]
Merge branch 'pytests-check-gnutls' into 'master'
pytests: check minimum required gnutls version
Closes #457
See merge request knot/knot-resolver!796
Tomas Krizek [Mon, 25 Mar 2019 08:46:57 +0000 (09:46 +0100)]
pytests: check minimum required gnutls version
Add a message to make extra requirements clear instead of throwing
a compilation error.
Closes #457
Tomas Krizek [Thu, 4 Apr 2019 13:03:10 +0000 (13:03 +0000)]
Merge branch 'key-rollover' into 'master'
daemon/lua/trust_anchors: don't crash when dealing with unknown algorhitm
Closes #449
See merge request knot/knot-resolver!788
Petr Špaček [Thu, 4 Apr 2019 11:46:51 +0000 (13:46 +0200)]
trust_anchors: update Deckard to take ta_update module into account
Tomas Krizek [Thu, 28 Mar 2019 11:41:32 +0000 (12:41 +0100)]
trust_anchors: improve error messages
Petr Špaček [Fri, 22 Mar 2019 15:32:12 +0000 (16:32 +0100)]
trust_anchors: add explanatory error messages for removed functions
Petr Špaček [Fri, 22 Mar 2019 15:30:17 +0000 (16:30 +0100)]
unify error message format between between C and Lua
User-friendly error message is intentionally at the end so users,
typically looking at the last line in logs, can see immediatelly what
happened.
Petr Špaček [Fri, 22 Mar 2019 13:45:56 +0000 (14:45 +0100)]
trust_anchors: do not accept add_file() for managed TA without ta_update module
Previous version would add the TA and then print error message, which is
not expected.
Tomas Krizek [Wed, 20 Mar 2019 12:32:55 +0000 (13:32 +0100)]
meson: config_tests - remove obsolete args, retuncode checks
Tomas Krizek [Mon, 18 Mar 2019 13:05:30 +0000 (14:05 +0100)]
trust_anchrors/bootstrap.test: fix test
Tomas Krizek [Wed, 13 Mar 2019 11:51:39 +0000 (12:51 +0100)]
WIP: test/integration: update deckard
Tomas Krizek [Tue, 19 Mar 2019 16:16:03 +0000 (17:16 +0100)]
ci: fix luacheck
Tomas Krizek [Tue, 19 Mar 2019 15:45:50 +0000 (16:45 +0100)]
ta_update.test: increase time for testing in CI
Tomas Krizek [Tue, 19 Mar 2019 15:20:11 +0000 (16:20 +0100)]
ta_update: abort update if keyset is no longer managed
Tomas Krizek [Tue, 19 Mar 2019 14:33:57 +0000 (15:33 +0100)]
ta_update: remove useless initialization
It's impossible to add managed keysets unless ta_update is loaded,
in which case ta_update.start() is called by trust_anchors.add_file().
On ta_update unload, previously managed keys are flagged as unmanaged.
Tomas Krizek [Tue, 19 Mar 2019 13:27:05 +0000 (14:27 +0100)]
doc/upgrading: document removal of -k and -K
Tomas Krizek [Tue, 19 Mar 2019 12:01:35 +0000 (13:01 +0100)]
trust_anchors: remove syntactic sugar and duplicity
Tomas Krizek [Tue, 19 Mar 2019 11:20:55 +0000 (12:20 +0100)]
trust_anchors: always load keyfile_default
Tomas Krizek [Mon, 18 Mar 2019 17:31:12 +0000 (18:31 +0100)]
trust_anchors: make sure to stop tracking managed key when overriding it
Tomas Krizek [Mon, 18 Mar 2019 17:24:11 +0000 (18:24 +0100)]
daemon: remove -k/-K options
Since DNSSEC is now enabled by default and always loads the
keyfile_default specified during compilation, these options are
obsolete.
Use trust_anchors.add_file() in config file if you require this
functionality.
Tomas Krizek [Mon, 18 Mar 2019 16:25:18 +0000 (17:25 +0100)]
scripts/launch-test-instance: remove obsolete script
Tomas Krizek [Mon, 18 Mar 2019 12:17:13 +0000 (13:17 +0100)]
ta_update: polish test
Tomas Krizek [Mon, 18 Mar 2019 11:57:49 +0000 (12:57 +0100)]
trust_anchors: rename distrust to remove
Petr Špaček [Fri, 15 Mar 2019 16:23:57 +0000 (17:23 +0100)]
trust_anchors: document distrust and polish related docs
Petr Špaček [Fri, 15 Mar 2019 15:58:06 +0000 (16:58 +0100)]
ta_update: remove parameter refresh_plan(is_initial)
It was unused since cleanup in trust_anchors and just cluttering the code.
Tomas Krizek [Tue, 19 Mar 2019 13:10:27 +0000 (14:10 +0100)]
trust_anchors: use cleaner interface between ta_update and trust_anchors module
+ tests
Exracting RFC 5011 to separate module was a good opportunity for
cleanup.
Petr Špaček [Fri, 15 Mar 2019 15:32:29 +0000 (16:32 +0100)]
trust_anchors: add distrust function to remove TA
Petr Špaček [Thu, 14 Mar 2019 16:57:49 +0000 (17:57 +0100)]
trust_anchors: do not bootstrap if root TA exists
Previously a typo in keyfile path triggered re-bootstrap even if root TA
was already installed.
Petr Špaček [Thu, 14 Mar 2019 16:54:33 +0000 (17:54 +0100)]
trust_anchors: get rid of double negation in add_file()
This simple change makes it easier to follow what the code does.
Tomas Krizek [Wed, 13 Mar 2019 13:31:31 +0000 (14:31 +0100)]
ci: luacheckrc - organize, add ta_update
Tomas Krizek [Wed, 13 Mar 2019 12:41:45 +0000 (13:41 +0100)]
nitpick: modules/ta_update - unify log message format
Tomas Krizek [Wed, 13 Mar 2019 12:40:25 +0000 (13:40 +0100)]
modules/ta_update: remove all asserts
Tomas Krizek [Wed, 13 Mar 2019 11:51:14 +0000 (12:51 +0100)]
tests/integration: update kresd config for deckard
Tomas Krizek [Wed, 13 Mar 2019 11:23:22 +0000 (12:23 +0100)]
lua/trust_anchors: use tabs everywhere
Tomas Krizek [Wed, 13 Mar 2019 11:22:28 +0000 (12:22 +0100)]
daemon/lua/trust_anchors: write keyset after bootstrap
Tomas Krizek [Tue, 12 Mar 2019 17:47:35 +0000 (18:47 +0100)]
modules/ta_update: move RFC5011 to a separate module
Tomas Krizek [Tue, 12 Mar 2019 14:47:46 +0000 (15:47 +0100)]
daemon/lua/trust_anchors: bootstrap TA immediately after startup
Tomas Krizek [Tue, 12 Mar 2019 14:31:42 +0000 (15:31 +0100)]
daemon/lua/trust_anchors: don't crash when dealing with unknown algorhitm
Tomas Krizek [Mon, 11 Mar 2019 16:20:31 +0000 (17:20 +0100)]
daemon/lua/trust_anchors.test.integr: test key rollover to unsupported algorhitm
Petr Špaček [Fri, 22 Mar 2019 08:34:47 +0000 (08:34 +0000)]
Merge branch 'pytests-silent' into 'master'
pytests: omit verbose log for query flood test
See merge request knot/knot-resolver!793
Tomas Krizek [Thu, 21 Mar 2019 14:57:25 +0000 (15:57 +0100)]
pytests: omit verbose log for query flood test
Tomas Krizek [Wed, 20 Mar 2019 12:47:33 +0000 (12:47 +0000)]
Merge branch 'listen-on-tls' into 'master'
daemon: listen on TLS port 853 by default
See merge request knot/knot-resolver!792
Tomas Krizek [Wed, 20 Mar 2019 11:57:16 +0000 (12:57 +0100)]
daemon: listen on TLS port 853 by default
Tomas Krizek [Wed, 20 Mar 2019 09:41:27 +0000 (09:41 +0000)]
Merge branch 'ci-updates' into 'master'
ci: minor updates
See merge request knot/knot-resolver!791
Tomas Krizek [Tue, 19 Mar 2019 16:20:23 +0000 (17:20 +0100)]
ci: archive logs properly testlogs
Tomas Krizek [Wed, 20 Mar 2019 09:14:34 +0000 (10:14 +0100)]
ci: fix obs-devel nightly build
Tomas Krizek [Tue, 19 Mar 2019 16:21:22 +0000 (16:21 +0000)]
Merge branch 'meson-fix-includes' into 'master'
meson: use correct luajit includes from pkgconfig
See merge request knot/knot-resolver!789
Tomas Krizek [Wed, 13 Mar 2019 17:00:37 +0000 (18:00 +0100)]
ci/travis: update script to reflect API changes
Tomas Krizek [Wed, 13 Mar 2019 16:47:07 +0000 (17:47 +0100)]
meson: use correct luajit includes from pkgconfig
Petr Špaček [Tue, 12 Mar 2019 13:04:42 +0000 (13:04 +0000)]
Merge branch 'nsrep-bugfix' into 'master'
nsrep: allow inclusion of good nameservers if there's space in selection
See merge request knot/knot-resolver!787
Marek Vavruša [Tue, 5 Mar 2019 18:35:21 +0000 (10:35 -0800)]
nsrep: allow inclusion of good nameservers if there's space in selection
The current algorithm doesn't work if there's 3 unknown nameservers in the
address selection set, and the 4th is known working with higher score
than unknown.
Petr Špaček [Tue, 12 Mar 2019 13:03:36 +0000 (13:03 +0000)]
Merge branch 'netlist' into 'master'
change net.list() output format
Closes #448
See merge request knot/knot-resolver!786
Vladimír Čunát [Tue, 12 Mar 2019 10:17:27 +0000 (11:17 +0100)]
daemon/network endpoint_array_t: decrease indirection
The extra pointer layer was useless. Note: we couldn't put an UV handle
directly inside an array because their addresses can't be moved IIRC,
but we had it behind a pointer already.
Vladimír Čunát [Tue, 12 Mar 2019 09:28:53 +0000 (10:28 +0100)]
daemon/network: enum endpoint_flag -> endpoint_flags_t
The dual UDP+TCP is completely eliminated except for the externally
exposed "APIs" - lua net.listen() and command-line parameters.
Vladimír Čunát [Mon, 11 Mar 2019 17:33:19 +0000 (18:33 +0100)]
daemon/network: adapt _listen and _close to repeats
We could get multiple addr#port tuples even before the UDP+TCP split,
but now it would becom quite common, so the API needs to count on that.
Vladimír Čunát [Mon, 11 Mar 2019 14:31:35 +0000 (15:31 +0100)]
daemon/network: stop using combined UDP+TCP endpoints
It was confusing, e.g. the new net.list() or net.bpf_set() were wrong.
Implementation cleanup: merge _fd variant into open_endpoint(),
as the code was repetitive and differed in unnecessary places.
Vladimír Čunát [Mon, 11 Mar 2019 13:49:47 +0000 (14:49 +0100)]
daemon/io nitpick: more const in parameters
Vladimír Čunát [Mon, 11 Mar 2019 15:14:48 +0000 (16:14 +0100)]
tests: adapt to change of net.list() output
Tomas Krizek [Fri, 8 Mar 2019 15:44:24 +0000 (16:44 +0100)]
daemon/bindings/net: change output format of net.list()
Vladimír Čunát [Tue, 12 Mar 2019 11:41:06 +0000 (11:41 +0000)]
Merge !769: resolve: always send DO bit when iterating
Closes #153.
Vladimír Čunát [Tue, 5 Mar 2019 16:15:07 +0000 (17:15 +0100)]
resolve nitpick: simplify deep nesting in query_finalize()
Vladimír Čunát [Tue, 30 Jan 2018 08:23:35 +0000 (09:23 +0100)]
resolve: always send DO bit when iterating or forwarding
Petr Špaček [Tue, 12 Mar 2019 11:30:14 +0000 (11:30 +0000)]
Merge branch 'dkg/update-dygraph' into 'master'
modules/http: bring dygraph in sync with upstream dygraph 2.1.0
See merge request knot/knot-resolver!783
Daniel Kahn Gillmor [Thu, 7 Mar 2019 20:42:12 +0000 (15:42 -0500)]
modules/http: use upstream dygraph 2.1.0
For some reason, knot-resolver was shipping a copy of dygraph 2.1.0
that identified itself as 2.0.0. This patch changes a single octet
(the minor version number) by fetching a clean copy from
http://dygraphs.com/2.1.0/dygraph.min.js.
Daniel Kahn Gillmor [Thu, 7 Mar 2019 20:40:39 +0000 (15:40 -0500)]
modules/http: rename dygraph-combined.js to dygraph.min.js to match upstream
Since dygraph version 2.0.0, upstream dygraph has been calling their
shipped files dygraph.min.js (see http://dygraphs.com/download.html).
Use the standard upstream name.
Tomas Krizek [Tue, 12 Mar 2019 11:12:22 +0000 (11:12 +0000)]
Merge branch 'meson' into 'master'
meson build system
Closes #452, #451, #338, #290, #279, #212, and #350
See merge request knot/knot-resolver!771
Tomas Krizek [Tue, 12 Mar 2019 10:23:34 +0000 (11:23 +0100)]
gitlabci: use correct container version in resperf
Petr Špaček [Tue, 12 Mar 2019 08:03:29 +0000 (09:03 +0100)]
docs: polish section Compiling from sources
Petr Špaček [Mon, 11 Mar 2019 12:42:11 +0000 (13:42 +0100)]
docs: polish upgrade docs
Petr Špaček [Fri, 8 Mar 2019 19:31:15 +0000 (20:31 +0100)]
docs: remove mentions of Go
Petr Špaček [Fri, 8 Mar 2019 19:25:15 +0000 (20:25 +0100)]
docs: split user/expert/devel docs in TOC
Petr Špaček [Fri, 8 Mar 2019 18:56:51 +0000 (19:56 +0100)]
docs: rename migration to upgrading
We might eventually have section "migrating from other resolvers".
Petr Špaček [Fri, 8 Mar 2019 18:36:51 +0000 (19:36 +0100)]
docs: polish build documentation
Tomas Krizek [Thu, 7 Mar 2019 15:55:18 +0000 (16:55 +0100)]
gitlabci: add retry to pkg build jobs
Tomas Krizek [Wed, 6 Mar 2019 16:25:38 +0000 (17:25 +0100)]
gitlabci: remove unnecessary job priviledges for build-asan
Tomas Krizek [Wed, 27 Feb 2019 12:07:35 +0000 (13:07 +0100)]
migrate to Knot DNS 2.8
Tomas Krizek [Mon, 18 Feb 2019 17:34:04 +0000 (18:34 +0100)]
distro/deb: update libkres9.symbols
Tomas Krizek [Wed, 6 Mar 2019 15:18:45 +0000 (16:18 +0100)]
gitlabci: remove unrelated artifacts from lint:tidy
Tomas Krizek [Wed, 6 Mar 2019 14:35:07 +0000 (15:35 +0100)]
meson: run luacheck on all lua files
Tomas Krizek [Wed, 6 Mar 2019 14:25:07 +0000 (15:25 +0100)]
daemon/lua/trust_anchors: keyfile_default always has default value