]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Marek Vavrusa [Fri, 22 Jan 2016 07:43:47 +0000 (23:43 -0800)]
daemon/lua: kres can see request zone cut (part)
a part of the zone cut is visible from Lua world:
- zone cut name (dname)
- trust anchor (rrset)
- current key (rrset)
Marek Vavrusa [Fri, 22 Jan 2016 07:42:17 +0000 (23:42 -0800)]
lib/resolve: new flag ALWAYS_CUT
when raised, a response zone cut will be recovered
even if the response came from cache. this is
normally not needed (and incurs additional cache
lookups), but it may be useful for
inspection
Marek Vavrusa [Fri, 22 Jan 2016 07:40:26 +0000 (23:40 -0800)]
daemon: "-c -" doesn't ready any configuration
this includes default configuration, resolver
starts completely blank
Marek Vavrusa [Fri, 22 Jan 2016 07:39:34 +0000 (23:39 -0800)]
daemon: resolve callback has request as well
the second parameter to resolve() callback function
is request (kres.request_t), so the caller can
look into request stats, timing and zone cut data
Marek Vavrusa [Thu, 21 Jan 2016 17:57:23 +0000 (09:57 -0800)]
daemon: -q for quiet mode, deferred TA update
the quiet mode doesn't print neither intro messages nor prompt
in the interactive mode, which makes it useful for scripted usage
Marek Vavrusa [Thu, 21 Jan 2016 05:42:21 +0000 (21:42 -0800)]
daemon/trust_anchors: fixed root key fetch
Marek Vavrusa [Thu, 21 Jan 2016 05:23:44 +0000 (21:23 -0800)]
tests/deckard: synced to master
Marek Vavrusa [Thu, 21 Jan 2016 05:20:47 +0000 (21:20 -0800)]
Merge branch 'deck_test'
Grigorii Demidov [Wed, 20 Jan 2016 09:05:05 +0000 (10:05 +0100)]
tests: sync deckard; lib\iterate: sync to master
Marek Vavrusa [Tue, 19 Jan 2016 20:27:23 +0000 (12:27 -0800)]
lib/iterate: ignore out-of-bailiwick NSs for positive answers
there are broken resolution chains where a zone cut is advertised,
but it doesn't exist and the final NS answers from its parent's
zone cut, which is an attempt to escape bailiwick
example:
resolving A ab.cd.ef
NS ef responds:
- ab.cd.ef NS X ; adverises ab.cd.ef zone cut
X responds:
- A ab.cd.ef A 1.2.3.4
- cd.ef NS X ; escapes previously advertised cut
on the other hand, it is important to fail early for referrals as
it signifies a lame answer
Marek Vavrusa [Tue, 19 Jan 2016 20:27:23 +0000 (12:27 -0800)]
lib/iterate: ignore out-of-bailiwick NSs for positive answers
there are broken resolution chains where a zone cut is advertised,
but it doesn't exist and the final NS answers from its parent's
zone cut, which is an attempt to escape bailiwick
example:
resolving A ab.cd.ef
NS ef responds:
- ab.cd.ef NS X ; adverises ab.cd.ef zone cut
X responds:
- A ab.cd.ef A 1.2.3.4
- cd.ef NS X ; escapes previously advertised cut
on the other hand, it is important to fail early for referrals as
it signifies a lame answer
Grigorii Demidov [Mon, 18 Jan 2016 09:27:19 +0000 (10:27 +0100)]
lib/dnssec: wrong prepend_asterisk() usage was fixed, cleanup
Grigorii Demidov [Fri, 15 Jan 2016 11:43:58 +0000 (12:43 +0100)]
tests/deckard: sync to master
Grigorii Demidov [Fri, 15 Jan 2016 11:31:20 +0000 (12:31 +0100)]
lib/dnssec: nsec3.c, wrong prepend_asterisk() usage was fixed
Grigorii Demidov [Mon, 11 Jan 2016 12:47:19 +0000 (13:47 +0100)]
deckard: sync to master
Marek Vavrusa [Mon, 11 Jan 2016 07:01:29 +0000 (23:01 -0800)]
modules/zonefile: cleanup
Marek Vavrusa [Mon, 11 Jan 2016 05:55:55 +0000 (21:55 -0800)]
scripts: moved LuaJIT to Github, updated deckard
Marek Vavrusa [Mon, 11 Jan 2016 04:31:39 +0000 (20:31 -0800)]
Merge branch 'new-libknot'
Marek Vavrusa [Mon, 11 Jan 2016 04:30:39 +0000 (20:30 -0800)]
tests: synced deckard
Marek Vavrusa [Mon, 11 Jan 2016 04:30:31 +0000 (20:30 -0800)]
tests/cache: disabled malloc faking (broken)
this is broken by changes in libknot2/db api,
needs to be done differently later
Marek Vavrusa [Mon, 11 Jan 2016 04:29:51 +0000 (20:29 -0800)]
modules/view: fixed direct access to addr family
Marek Vavrusa [Mon, 11 Jan 2016 04:29:00 +0000 (20:29 -0800)]
lib/utils: added function for addr family
the field length is platform-dependent
Marek Vavrusa [Mon, 11 Jan 2016 04:27:43 +0000 (20:27 -0800)]
daemon: ignore empty TA instead of failing
Grigorii Demidov [Wed, 30 Dec 2015 10:44:48 +0000 (11:44 +0100)]
daemon: proper initialization of requests's source address
lib: answer finalization was changed
Marek Vavrusa [Fri, 8 Jan 2016 08:49:35 +0000 (00:49 -0800)]
modules/tinyweb: fixed module path
Marek Vavruša [Tue, 22 Dec 2015 16:26:16 +0000 (17:26 +0100)]
wip: trustanchor(), compat with libknot2/libzscanner1
Marek Vavruša [Thu, 17 Dec 2015 22:29:11 +0000 (23:29 +0100)]
tests: synced deckard
Marek Vavruša [Thu, 17 Dec 2015 17:52:57 +0000 (18:52 +0100)]
all: ported to upcoming libknot APIs
this is not going to be backwards compatible change, but it will be the first tagged libknot release sufficient for resolver
Marek Vavruša [Thu, 17 Dec 2015 14:17:27 +0000 (15:17 +0100)]
modules: doc update
Marek Vavruša [Thu, 17 Dec 2015 14:17:08 +0000 (15:17 +0100)]
daemon: optional FFI to support e500
Marek Vavruša [Thu, 17 Dec 2015 14:16:51 +0000 (15:16 +0100)]
build: version bump
Marek Vavruša [Fri, 11 Dec 2015 13:29:37 +0000 (14:29 +0100)]
modules/policy: updated readme
Marek Vavruša [Fri, 11 Dec 2015 09:50:46 +0000 (10:50 +0100)]
build: fixed NDEBUG build
Marek Vavruša [Thu, 10 Dec 2015 23:54:01 +0000 (00:54 +0100)]
tests/deckard: synced to master
Marek Vavruša [Thu, 10 Dec 2015 23:53:35 +0000 (00:53 +0100)]
layer/iterate: fail answers with NSs outside bailiwick immediately
Marek Vavruša [Thu, 10 Dec 2015 23:04:08 +0000 (00:04 +0100)]
build: better incremental builds (less depends)
Marek Vavruša [Thu, 10 Dec 2015 22:32:52 +0000 (23:32 +0100)]
build: do not rebuild hiredis/libmc every time
Marek Vavruša [Thu, 10 Dec 2015 22:26:39 +0000 (23:26 +0100)]
build: revert hiredis to git
Marek Vavruša [Thu, 10 Dec 2015 22:24:34 +0000 (23:24 +0100)]
build: install hiredis to PREFIX
Marek Vavruša [Thu, 10 Dec 2015 22:14:15 +0000 (23:14 +0100)]
build: follow redirects in dl links
Marek Vavruša [Thu, 10 Dec 2015 22:09:29 +0000 (23:09 +0100)]
build: cleanup, added hiredis/libmemcached to Travis build
Marek Vavruša [Thu, 10 Dec 2015 20:12:32 +0000 (21:12 +0100)]
daemon: luasec/luasocket optional
Marek Vavruša [Thu, 10 Dec 2015 17:47:36 +0000 (18:47 +0100)]
build: merged #21,#22
thanks @darix!
fixes #21,#22
Marek Vavruša [Thu, 10 Dec 2015 17:44:59 +0000 (18:44 +0100)]
build: set soname for ELF libraries with versioning
fixes #20
Marek Vavruša [Thu, 10 Dec 2015 17:33:13 +0000 (18:33 +0100)]
build: fixed modules depends
fixes #19
Marek Vavruša [Thu, 10 Dec 2015 17:16:33 +0000 (18:16 +0100)]
build: fixed modules broken by latest build
fixes #18
Marek Vavruša [Thu, 10 Dec 2015 16:44:54 +0000 (17:44 +0100)]
Merge branch 'build-improvements'
Marek Vavruša [Thu, 10 Dec 2015 16:44:05 +0000 (17:44 +0100)]
scripts: added basic service/sysconfig/apparmor templates
this should help packaging the project to other platforms
thanks @darix!
Marek Vavruša [Thu, 10 Dec 2015 16:43:03 +0000 (17:43 +0100)]
support: updated doc, added config examples
Marek Vavruša [Wed, 9 Dec 2015 22:52:09 +0000 (23:52 +0100)]
build: library able to compile to both static/dynamic versioned libs
* PIE,RELRO+NOW and other security features enabled
* support for both static/dynamic builds with BUILDMODE
* dynamic library is ABI-versioned, starting at 1
* pkg-config file is installed
Marek Vavruša [Wed, 9 Dec 2015 18:30:22 +0000 (19:30 +0100)]
contrib: compile to convenience static library
this is needed to make sure it always compiles with PIC
Marek Vavruša [Tue, 8 Dec 2015 18:38:24 +0000 (19:38 +0100)]
build: hardening, doc, cleanup build rules
Marek Vavruša [Tue, 8 Dec 2015 18:40:18 +0000 (19:40 +0100)]
lib: do not use potentially large stack allocations
rdata may be <=64k + 8B on stack which may be source of various mystery
errors later, for example in bindings or stackspace-constricted env
Marek Vavruša [Tue, 8 Dec 2015 18:38:36 +0000 (19:38 +0100)]
doc: documented default paths
Marek Vavruša [Tue, 8 Dec 2015 13:54:48 +0000 (14:54 +0100)]
layer/validate: buggy rrsig qtype resolution in tests
Marek Vavruša [Tue, 8 Dec 2015 12:36:05 +0000 (13:36 +0100)]
daemon/lua: update defaults (both v4/v6 localhost, 100M cache)
Marek Vavruša [Tue, 8 Dec 2015 11:57:34 +0000 (12:57 +0100)]
daemon: worker.id and worker.count documented
Marek Vavruša [Mon, 7 Dec 2015 11:16:41 +0000 (12:16 +0100)]
lib/cache: count clear()s as deletes
Marek Vavruša [Sun, 6 Dec 2015 13:51:09 +0000 (14:51 +0100)]
build: DESTDIR= support, doc
Marek Vavruša [Sun, 6 Dec 2015 12:20:39 +0000 (13:20 +0100)]
build: *DIR variables are assembled in Makefile
this allows to override any dstdir variable without
patching config.mk
Marek Vavruša [Sat, 5 Dec 2015 17:09:23 +0000 (18:09 +0100)]
daemon: root trust anchors automatically bootstrapped from IANA
if the root key file doesn’t exist, it will be populated from root DNSKEY query, which will be validated against root trust anchors retrieved over HTTPS with IANA cert verification against built-in current IANA cert CA. it requires luasocket and luasec for it to work. trust anchors XML file signature is not checked, as there’s no facility for PKCS7 checking yet.
Marek Vavruša [Fri, 4 Dec 2015 09:39:47 +0000 (10:39 +0100)]
modules/renumber: check config value more properly
Marek Vavruša [Thu, 3 Dec 2015 22:48:57 +0000 (23:48 +0100)]
travis: more commands
Marek Vavruša [Thu, 3 Dec 2015 22:29:34 +0000 (23:29 +0100)]
build: updated travis, deckard
Marek Vavruša [Thu, 3 Dec 2015 22:24:56 +0000 (23:24 +0100)]
Merge branch 'subreq-deduping'
Marek Vavruša [Thu, 3 Dec 2015 22:24:47 +0000 (23:24 +0100)]
daemon/engine: upped limits
Marek Vavruša [Thu, 3 Dec 2015 18:01:56 +0000 (19:01 +0100)]
daemon/worker: deduplicate outbound queries
worker can track outbound requests and if N resolutions want the same
subrequest, only one will lead it and others will be notified when it
finishes
this massively reduces number of outbound requests for
slow/unresponsive/low ttl requests
Marek Vavruša [Thu, 3 Dec 2015 18:00:18 +0000 (19:00 +0100)]
lib/utils: function to get unique key for RR (string)
Marek Vavruša [Thu, 3 Dec 2015 14:14:27 +0000 (15:14 +0100)]
Merge branch 'cached-insecure-delegs'
Marek Vavruša [Thu, 3 Dec 2015 13:54:30 +0000 (14:54 +0100)]
lib/resolve: penalize failing NSs
any answer that is considered as malformed/servfail/otherwise bad
penalizes the NS for the next time like timeout, this doesn't apply for
DNSSEC validation failures as it still may be okay for insecure
resolution. EDNS failures are okay because the server is requeried in
the most simple RFC1035 mode before flagging it as failed
this avoids instant requeries for SERVFAILing resolutions
Marek Vavruša [Thu, 3 Dec 2015 12:55:04 +0000 (13:55 +0100)]
lib/zonecut: do not fetch DS/DNSKEY for cached insecure delegations
when a delegation is provably insecure, it is flagged as INSECURE in
cache (this is different from "unchecked"), when the next query finds
the same zone cut, this information is retrieved and if it was proved to
be insecure before, this status is reused
this prevents refetching of NS/DNSKEY in some situations
Marek Vavruša [Thu, 3 Dec 2015 10:47:02 +0000 (11:47 +0100)]
modules/stats: added NODATA tracking
Marek Vavruša [Thu, 3 Dec 2015 10:37:16 +0000 (11:37 +0100)]
lib/rplan: check for null name
Marek Vavruša [Wed, 2 Dec 2015 13:18:36 +0000 (14:18 +0100)]
Merge branch 'include_cleanup' into 'master'
daemon/io: remove redundant libknot/internal/utils.h include
See merge request !16
Daniel Salzman [Wed, 2 Dec 2015 11:56:21 +0000 (12:56 +0100)]
daemon/io: remove redundant libknot/internal/utils.h include
Marek Vavruša [Sun, 29 Nov 2015 16:01:01 +0000 (17:01 +0100)]
lib/dnssec: hoisted some calculations
notably key id doesn’t have to be recalculated every time, cheaper checks should come first, name equality check is cheaper as well
Marek Vavruša [Sun, 29 Nov 2015 12:40:00 +0000 (13:40 +0100)]
lib/utils: avoid snprintf for latency
Marek Vavruša [Sat, 28 Nov 2015 22:50:43 +0000 (23:50 +0100)]
lib/resolve: inlining not forced
Marek Vavruša [Sat, 28 Nov 2015 22:44:53 +0000 (23:44 +0100)]
tests: synced deckard latest repo
Marek Vavruša [Sat, 28 Nov 2015 22:41:07 +0000 (23:41 +0100)]
lib/resolver: Saturday indulgence
Marek Vavruša [Sat, 28 Nov 2015 22:37:54 +0000 (23:37 +0100)]
lib/dnssec: bad condition
Marek Vavruša [Sat, 28 Nov 2015 20:51:40 +0000 (21:51 +0100)]
lib/resolve: explicit cast for <<31 shift
Marek Vavruša [Sat, 28 Nov 2015 20:45:39 +0000 (21:45 +0100)]
dnssec/signature: static buffer, checks
Marek Vavruša [Sat, 28 Nov 2015 20:44:44 +0000 (21:44 +0100)]
lib/dnssec: fixed nsec3 opt-out ignored
Marek Vavruša [Sat, 28 Nov 2015 20:44:24 +0000 (21:44 +0100)]
lib: cleanup, return value checks
Marek Vavruša [Sat, 28 Nov 2015 20:35:51 +0000 (21:35 +0100)]
tests: updated deckard for OS X 10.10
Marek Vavruša [Sat, 28 Nov 2015 20:35:33 +0000 (21:35 +0100)]
lib+daemon: annotated lua_error() for static checkers
Marek Vavruša [Sat, 28 Nov 2015 20:34:13 +0000 (21:34 +0100)]
contrib/ucw: fixed bad malloc retval check
Marek Vavruša [Fri, 27 Nov 2015 15:01:30 +0000 (16:01 +0100)]
lib/dnssec: fixed missing checks in label skipping
skipping over last/root label returns a pointer to a memory after domain name, this is unsafe
Grigorii Demidov [Fri, 27 Nov 2015 12:25:09 +0000 (13:25 +0100)]
Merge branch 'master' of gitlab.labs.nic.cz:knot/resolver
Marek Vavruša [Fri, 27 Nov 2015 10:57:06 +0000 (11:57 +0100)]
daemon/worker: added new metrics (queries, dropped, timeout)
Marek Vavruša [Fri, 27 Nov 2015 10:27:12 +0000 (11:27 +0100)]
Merge branch 'amalg-build'
Marek Vavruša [Fri, 27 Nov 2015 10:19:04 +0000 (11:19 +0100)]
dnssec/nsec3: fixed oob, bad asserts
Grigorii Demidov [Fri, 27 Nov 2015 09:47:40 +0000 (10:47 +0100)]
tests: deckard new commit
Marek Vavruša [Fri, 27 Nov 2015 00:28:54 +0000 (01:28 +0100)]
daemon/engine: relax cache syncing strategy
this doesn’t guarantee valid cache after crash,
but then it’s a cache. most of the time on cold
cache is spent on fsyncing as it’s done per each
commit (=> resolved query)
Marek Vavruša [Fri, 27 Nov 2015 00:27:07 +0000 (01:27 +0100)]
daemon/io: negotiate socket buffer size
Marek Vavruša [Fri, 27 Nov 2015 00:26:44 +0000 (01:26 +0100)]
daemon/worker: cleanup, cancel active tmrs only
this also fails if the timeout timer cannot be started,
as it would wait for undefined time otherwise
Marek Vavruša [Thu, 26 Nov 2015 21:11:51 +0000 (22:11 +0100)]
daemon/worker: fixed receiving very large TCP payloads
Marek Vavruša [Thu, 26 Nov 2015 18:05:35 +0000 (19:05 +0100)]
daemon/worker: cancel immediately when not possible to xmit
Marek Vavruša [Thu, 26 Nov 2015 17:45:06 +0000 (18:45 +0100)]
lib/resolve: returned tcp-fallback