]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
10 years agoEnable gitter.im webhook
Ondřej Surý [Thu, 16 Jul 2015 15:11:17 +0000 (17:11 +0200)] 
Enable gitter.im webhook

10 years agolayer/validate: preliminary implementation of RRSIG validation
Karel Slany [Thu, 16 Jul 2015 14:13:13 +0000 (16:13 +0200)] 
layer/validate: preliminary implementation of RRSIG validation

10 years agotravis: changed knot commit because of missing functionality
Karel Slany [Wed, 15 Jul 2015 17:50:54 +0000 (19:50 +0200)] 
travis: changed knot commit because of missing functionality

10 years agotests/validate: increased time to roughly match test RRSIG RRSet
Karel Slany [Wed, 15 Jul 2015 17:48:21 +0000 (19:48 +0200)] 
tests/validate: increased time to roughly match test RRSIG RRSet

10 years agolayer/validate: implemented checking of RRSIG RR validity (RFC4035 5.3.1)
Karel Slany [Wed, 15 Jul 2015 17:46:01 +0000 (19:46 +0200)] 
layer/validate: implemented checking of RRSIG RR validity (RFC4035 5.3.1)

10 years agoMerge commit '931d736540012dd8a770650434b3d901434930e3'
Marek Vavruša [Wed, 15 Jul 2015 16:20:48 +0000 (18:20 +0200)] 
Merge commit '931d736540012dd8a770650434b3d901434930e3'

10 years agodaemon/worker: cleanup and fixed early memset
Marek Vavruša [Wed, 15 Jul 2015 15:20:04 +0000 (17:20 +0200)] 
daemon/worker: cleanup and fixed early memset

10 years agodaemon/io: use recvmmsg for master sockets, recvmsg otherwise
Marek Vavruša [Wed, 15 Jul 2015 15:19:43 +0000 (17:19 +0200)] 
daemon/io: use recvmmsg for master sockets, recvmsg otherwise

this applies for Linux with recvmmsg() support only

10 years agodaemon/worker: fixed bad memory access with delayed send completion
Marek Vavruša [Wed, 15 Jul 2015 15:19:20 +0000 (17:19 +0200)] 
daemon/worker: fixed bad memory access with delayed send completion

when the timeout event was fired, it started another step in query
resolution, but there may have been pending events on previous handle
if the events on the previous handle completed, they would check the
memory of their task (which may have been non-existent) and possibly
double-close the handle

10 years agolayer/validate: added DS to DNSKEY authentication code
Karel Slany [Wed, 15 Jul 2015 09:21:00 +0000 (11:21 +0200)] 
layer/validate: added DS to DNSKEY authentication code

10 years agolib/validate: merging with zone cut DNSKEY RRSet
Karel Slany [Wed, 15 Jul 2015 09:14:32 +0000 (11:14 +0200)] 
lib/validate: merging with zone cut DNSKEY RRSet

10 years agolib/validate: compiler complained about mismatching types
Karel Slany [Wed, 15 Jul 2015 09:08:08 +0000 (11:08 +0200)] 
lib/validate: compiler complained about mismatching types

10 years agocrypto: added libdnssec dependency and initialisation
Karel Slany [Wed, 15 Jul 2015 09:04:36 +0000 (11:04 +0200)] 
crypto: added libdnssec dependency and initialisation

10 years agolayer/iterate: do DNS 0x20 only for outbound queries
Marek Vavruša [Tue, 14 Jul 2015 17:31:18 +0000 (19:31 +0200)] 
layer/iterate: do DNS 0x20 only for outbound queries

no need to scramble queries satisfied from cache

10 years agolib/zonecut: implemented finding of closest trust anchor
Karel Slany [Tue, 14 Jul 2015 13:36:06 +0000 (15:36 +0200)] 
lib/zonecut: implemented finding of closest trust anchor

10 years agolib/zonecut: added forgotten feeing of trust_anchor
Karel Slany [Tue, 14 Jul 2015 13:34:07 +0000 (15:34 +0200)] 
lib/zonecut: added forgotten feeing of trust_anchor

10 years agolib/validate: added missing #pragma once
Karel Slany [Tue, 14 Jul 2015 13:32:06 +0000 (15:32 +0200)] 
lib/validate: added missing #pragma once

10 years agodaemon/worker: smaller starting mempool per request (16k)
Marek Vavruša [Tue, 14 Jul 2015 11:26:42 +0000 (13:26 +0200)] 
daemon/worker: smaller starting mempool per request (16k)

an average request from cache requires ~12k, an average iterative request 16-64k
this reduces allocation cost when there are now pools on the freelist

10 years agodaemon/worker: satisfy subreq sockets from freelist
Marek Vavruša [Tue, 14 Jul 2015 11:24:46 +0000 (13:24 +0200)] 
daemon/worker: satisfy subreq sockets from freelist

since the structures are ~ same size as I/O requests (udp_send_t being 60B larger than others), they all share the same freelist

10 years agodaemon/io: fix closing TCP sockets without worker knowing it
Marek Vavruša [Tue, 14 Jul 2015 11:22:38 +0000 (13:22 +0200)] 
daemon/io: fix closing TCP sockets without worker knowing it

10 years agodaemon/worker: track ipv4/ipv6 requests
Marek Vavruša [Mon, 13 Jul 2015 22:48:01 +0000 (00:48 +0200)] 
daemon/worker: track ipv4/ipv6 requests

10 years agolib/rrcache: allow replacement of expiring records
Marek Vavruša [Mon, 13 Jul 2015 22:24:51 +0000 (00:24 +0200)] 
lib/rrcache: allow replacement of expiring records

10 years agomodules/stats: 10-100-1000 ms latency tracking
Marek Vavruša [Mon, 13 Jul 2015 22:19:34 +0000 (00:19 +0200)] 
modules/stats: 10-100-1000 ms latency tracking

10 years agolib/validate: code for parsing trust anchor DNSKEY records
Karel Slany [Mon, 13 Jul 2015 16:59:39 +0000 (18:59 +0200)] 
lib/validate: code for parsing trust anchor DNSKEY records

10 years agoliv/validate: added missing header file
Karel Slany [Mon, 13 Jul 2015 16:56:08 +0000 (18:56 +0200)] 
liv/validate: added missing header file

10 years agomodules/stats: expose frequent queries LRU turnover
Marek Vavruša [Mon, 13 Jul 2015 16:29:31 +0000 (18:29 +0200)] 
modules/stats: expose frequent queries LRU turnover

10 years agogeneric/lru: count updates in slot for item-slot stickiness
Marek Vavruša [Mon, 13 Jul 2015 16:22:50 +0000 (18:22 +0200)] 
generic/lru: count updates in slot for item-slot stickiness

10 years agolib/validate: code for parsing trust anchor DS records
Karel Slany [Mon, 13 Jul 2015 15:04:17 +0000 (17:04 +0200)] 
lib/validate: code for parsing trust anchor DS records

10 years agomodules/stats: fixed potential crash on empty prefix
Marek Vavruša [Mon, 13 Jul 2015 14:16:27 +0000 (16:16 +0200)] 
modules/stats: fixed potential crash on empty prefix

10 years agodaemon/lua: fixed output printing
Marek Vavruša [Mon, 13 Jul 2015 13:34:37 +0000 (15:34 +0200)] 
daemon/lua: fixed output printing

10 years agoMerge branch 'stats-improved' into prefetch-wip
Marek Vavruša [Mon, 13 Jul 2015 13:58:13 +0000 (15:58 +0200)] 
Merge branch 'stats-improved' into prefetch-wip

10 years agomodules/stats: sample list of most frequent iterative queries
Marek Vavruša [Mon, 13 Jul 2015 13:57:20 +0000 (15:57 +0200)] 
modules/stats: sample list of most frequent iterative queries

the stats module keeps track of frequent iterative queries using
probabilistic sampling. the list includes subrequests.
it is useful for tracking over time, prefetching and anomaly reporting

10 years agomodules/stats: persistent metrics table
Marek Vavruša [Mon, 13 Jul 2015 13:37:50 +0000 (15:37 +0200)] 
modules/stats: persistent metrics table

enumerated metrics are always present (set to 0 if not used), this fixes
missing values when not measuring and provides a faster access to common
data

10 years agogeneric/lru: evictions counter to aid efficiency prediction
Marek Vavruša [Mon, 13 Jul 2015 13:35:19 +0000 (15:35 +0200)] 
generic/lru: evictions counter to aid efficiency prediction

10 years agodaemon/lua: fixed output printing
Marek Vavruša [Mon, 13 Jul 2015 13:34:37 +0000 (15:34 +0200)] 
daemon/lua: fixed output printing

10 years agotests: can execute specific tests, fixed EDNS+RR merging
Marek Vavruša [Fri, 10 Jul 2015 01:15:26 +0000 (03:15 +0200)] 
tests: can execute specific tests, fixed EDNS+RR merging

10 years agotests: raw query support
Grigorii Demidov [Fri, 10 Jul 2015 06:44:33 +0000 (08:44 +0200)] 
tests: raw query support

10 years agolib/resolve: clear await cut at the end
Marek Vavruša [Fri, 10 Jul 2015 01:39:00 +0000 (03:39 +0200)] 
lib/resolve: clear await cut at the end

10 years agolib: added validation skeleton + simple test
Marek Vavruša [Fri, 10 Jul 2015 01:21:42 +0000 (03:21 +0200)] 
lib: added validation skeleton + simple test

the resolution driver now correctly fetches keys,
and the zonecut lookup should find closest TA,
then the validation module should have all the
information needed for simple validation

10 years agolib/resolve: added support for kr_request flags
Marek Vavruša [Fri, 10 Jul 2015 01:19:28 +0000 (03:19 +0200)] 
lib/resolve: added support for kr_request flags

the only flag supported now is the KR_REQ_DNSSEC,
which indicates that the caller wants a secure answer

10 years agotests: can execute specific tests, fixed EDNS+RR merging
Marek Vavruša [Fri, 10 Jul 2015 01:15:26 +0000 (03:15 +0200)] 
tests: can execute specific tests, fixed EDNS+RR merging

10 years agoMerge branch 'master' into HEAD
Marek Vavruša [Thu, 9 Jul 2015 20:22:37 +0000 (22:22 +0200)] 
Merge branch 'master' into HEAD

10 years agolayer/rrcache: cleanup cruft
Marek Vavruša [Thu, 9 Jul 2015 20:19:25 +0000 (22:19 +0200)] 
layer/rrcache: cleanup cruft

10 years agolib: made tests pass again, cleanup
Marek Vavruša [Thu, 9 Jul 2015 20:19:15 +0000 (22:19 +0200)] 
lib: made tests pass again, cleanup

10 years agotests: raw query support
Grigorii Demidov [Thu, 9 Jul 2015 08:49:09 +0000 (10:49 +0200)] 
tests: raw query support

10 years agolib/resolve: fetching missing first DNSKEY
Karel Slany [Thu, 9 Jul 2015 08:18:47 +0000 (10:18 +0200)] 
lib/resolve: fetching missing first DNSKEY

10 years agodoc: updated lib
Marek Vavruša [Thu, 9 Jul 2015 00:11:48 +0000 (02:11 +0200)] 
doc: updated lib

10 years agodoc: updated dependencies
Marek Vavruša [Thu, 9 Jul 2015 00:03:57 +0000 (02:03 +0200)] 
doc: updated dependencies

10 years agodoc: updated library doc for developers
Marek Vavruša [Wed, 8 Jul 2015 23:58:43 +0000 (01:58 +0200)] 
doc: updated library doc for developers

10 years agoMerge branch 'async-io-requests'
Marek Vavruša [Wed, 8 Jul 2015 20:49:49 +0000 (22:49 +0200)] 
Merge branch 'async-io-requests'

10 years agodaemon/worker: fixed leak
Marek Vavruša [Wed, 8 Jul 2015 16:09:59 +0000 (18:09 +0200)] 
daemon/worker: fixed leak

10 years agodaemon/worker: asynchronous I/O requests
Marek Vavruša [Wed, 8 Jul 2015 01:36:48 +0000 (03:36 +0200)] 
daemon/worker: asynchronous I/O requests

this can coalesce sends/writes in future versions of libuv

10 years agodaemon/worker: compile-time support for recvmmsg in worker buffers
Marek Vavruša [Wed, 8 Jul 2015 01:36:02 +0000 (03:36 +0200)] 
daemon/worker: compile-time support for recvmmsg in worker buffers

10 years agolib: faster rdata iterators
Marek Vavruša [Tue, 7 Jul 2015 23:28:53 +0000 (01:28 +0200)] 
lib: faster rdata iterators

10 years agodaemon: worker can accept multiple pkts, cleanup
Marek Vavruša [Tue, 7 Jul 2015 21:43:05 +0000 (23:43 +0200)] 
daemon: worker can accept multiple pkts, cleanup

10 years agodaemon: fork earlier, keep instance id in 'worker.id'
Marek Vavruša [Tue, 7 Jul 2015 21:39:50 +0000 (23:39 +0200)] 
daemon: fork earlier, keep instance id in 'worker.id'

this fixes an issue with libuv sometimes crashing with mismatching number
of descriptors with REUSEPORT

10 years agodoc: fixed typo
Marek Vavruša [Mon, 6 Jul 2015 14:17:06 +0000 (16:17 +0200)] 
doc: fixed typo

10 years agoMerge branch 'prefetch-wip'
Marek Vavruša [Mon, 6 Jul 2015 14:13:48 +0000 (16:13 +0200)] 
Merge branch 'prefetch-wip'

10 years agodoc: added documentation for worker api
Marek Vavruša [Mon, 6 Jul 2015 14:13:09 +0000 (16:13 +0200)] 
doc: added documentation for worker api

10 years agomodules/prefetch: fixed lua error on bad queries, iterative
Marek Vavruša [Mon, 6 Jul 2015 00:06:41 +0000 (02:06 +0200)] 
modules/prefetch: fixed lua error on bad queries, iterative

10 years agolayer/rrcache: cache authority only if chasing referral/cname
Marek Vavruša [Mon, 6 Jul 2015 00:02:55 +0000 (02:02 +0200)] 
layer/rrcache: cache authority only if chasing referral/cname

10 years agomodules/prefetch: basic prefetching of frequently used records
Marek Vavruša [Sun, 5 Jul 2015 20:14:10 +0000 (22:14 +0200)] 
modules/prefetch: basic prefetching of frequently used records

10 years agomodules: api fixups
Marek Vavruša [Sun, 5 Jul 2015 20:13:07 +0000 (22:13 +0200)] 
modules: api fixups

10 years agodaemon/bindings: cleanup, checking, rrclass wrapper
Marek Vavruša [Sun, 5 Jul 2015 20:11:13 +0000 (22:11 +0200)] 
daemon/bindings: cleanup, checking, rrclass wrapper

10 years agodaemon/bindings: Lua API for worker (resolve, stats)
Marek Vavruša [Sun, 5 Jul 2015 20:09:48 +0000 (22:09 +0200)] 
daemon/bindings: Lua API for worker (resolve, stats)

10 years agolib/cache: track expiring records in cache
Marek Vavruša [Sun, 5 Jul 2015 20:07:18 +0000 (22:07 +0200)] 
lib/cache: track expiring records in cache

11 years agoprefetch wip
Marek Vavruša [Thu, 2 Jul 2015 20:09:22 +0000 (22:09 +0200)] 
prefetch wip

11 years agolib/utils: fixed recycle on already filled packet
Marek Vavruša [Fri, 3 Jul 2015 22:25:38 +0000 (00:25 +0200)] 
lib/utils: fixed recycle on already filled packet

11 years agobindings: pkt:get(section,id) wrapper
Marek Vavruša [Thu, 2 Jul 2015 20:09:01 +0000 (22:09 +0200)] 
bindings: pkt:get(section,id) wrapper

11 years agolib: cleanup
Marek Vavruša [Fri, 3 Jul 2015 22:01:12 +0000 (00:01 +0200)] 
lib: cleanup

11 years agoblock: improved suffix match, added doc
Marek Vavruša [Fri, 3 Jul 2015 14:27:34 +0000 (16:27 +0200)] 
block: improved suffix match, added doc

11 years agomodules+bindings: cleanup
Marek Vavruša [Fri, 3 Jul 2015 14:27:12 +0000 (16:27 +0200)] 
modules+bindings: cleanup

11 years agoMerge branch 'tests_wrapped' into 'master'
Marek Vavruša [Fri, 3 Jul 2015 12:08:34 +0000 (14:08 +0200)] 
Merge branch 'tests_wrapped' into 'master'

Tests wrapped

See merge request !15

11 years agotests: style fixes, notes
Marek Vavruša [Fri, 3 Jul 2015 11:58:51 +0000 (13:58 +0200)] 
tests: style fixes, notes

11 years agoscripts: updated broken Lua build on some linkers
Marek Vavruša [Fri, 3 Jul 2015 11:39:22 +0000 (13:39 +0200)] 
scripts: updated broken Lua build on some linkers

11 years agoscripts: updated broken Lua build on some linkers
Marek Vavruša [Fri, 3 Jul 2015 11:39:22 +0000 (13:39 +0200)] 
scripts: updated broken Lua build on some linkers

11 years agotests: integration tests with wrapped syscalls
Grigorii Demidov [Fri, 3 Jul 2015 11:31:05 +0000 (13:31 +0200)] 
tests: integration tests with wrapped syscalls

11 years agobuild: placed ldflags after libraries (may be static)
Marek Vavruša [Fri, 3 Jul 2015 11:21:13 +0000 (13:21 +0200)] 
build: placed ldflags after libraries (may be static)

11 years agolayer/rrcache: Implemented RRSIG caching without validation.
Karel Slany [Thu, 2 Jul 2015 09:25:11 +0000 (11:25 +0200)] 
layer/rrcache: Implemented RRSIG caching without validation.

11 years agoMerge branch 'hive-wip'
Marek Vavruša [Tue, 30 Jun 2015 22:34:17 +0000 (00:34 +0200)] 
Merge branch 'hive-wip'

11 years agodoc: documented forked mode
Marek Vavruša [Tue, 30 Jun 2015 22:33:36 +0000 (00:33 +0200)] 
doc: documented forked mode

11 years agodaemon/bindings: missing brk in wrapped lookup tables
Marek Vavruša [Mon, 29 Jun 2015 23:53:25 +0000 (01:53 +0200)] 
daemon/bindings: missing brk in wrapped lookup tables

11 years agolib/validate: pseudocode of the validation flow
Marek Vavruša [Tue, 30 Jun 2015 20:03:51 +0000 (22:03 +0200)] 
lib/validate: pseudocode of the validation flow

1. validate module must be between iterate/cache
2. produce: copy OPT with DO=1, ask for DNSKEY if we don’t have it
3. resolve.c: subrequest DNSKEY if asked to do it
4. consume: check DNSKEY and set it, validate RRSIGs against it

another issues:

rrsigcache is copypasta of rrcache, there is one special case with storing RRSIGs which doesn’t deserve it’s own module (if the validation is off, then nothing will get written in there anyway)

since the resolution is asynchronous, layers must only *ask* resolver to do subrequests for them using query flags (like when we encounter an unknown zone cut)

11 years agolayer/rrsigcache: Inserts query for DNSKEY when keys not cached.
Karel Slany [Tue, 30 Jun 2015 15:51:08 +0000 (17:51 +0200)] 
layer/rrsigcache: Inserts query for DNSKEY when keys not cached.

11 years agolayer/rrsigcache: Check for DNSKEY RRSet presence in cache.
Karel Slany [Tue, 30 Jun 2015 13:49:08 +0000 (15:49 +0200)] 
layer/rrsigcache: Check for DNSKEY RRSet presence in cache.

11 years agolib: helping compiler with early returns
Marek Vavruša [Mon, 29 Jun 2015 23:08:44 +0000 (01:08 +0200)] 
lib: helping compiler with early returns

11 years agodaemon/main: cleanup, forking and remote tty
Marek Vavruša [Mon, 29 Jun 2015 22:27:00 +0000 (00:27 +0200)] 
daemon/main: cleanup, forking and remote tty

when the daemon starts in non-interactive mode, it creates a pipe in the ‘tty/<pid>’ which can be used to interact with it remotely - much wow

e.g. $ socat - UNIX-CONNECT:tty/38284

11 years agocontrib/ccan: added ‘asprintf’ compatibility
Marek Vavruša [Mon, 29 Jun 2015 22:25:16 +0000 (00:25 +0200)] 
contrib/ccan: added ‘asprintf’ compatibility

11 years agodaemon: forking wip
Marek Vavruša [Mon, 29 Jun 2015 19:27:13 +0000 (21:27 +0200)] 
daemon: forking wip

11 years agodaemon/network: enabled Linux-style SO_REUSEPORT if supported
Marek Vavruša [Thu, 25 Jun 2015 17:09:00 +0000 (19:09 +0200)] 
daemon/network: enabled Linux-style SO_REUSEPORT if supported

11 years agolayer/rrsigcache: Fixed return value of stash_add_rrsig().
Karel Slany [Mon, 29 Jun 2015 15:09:07 +0000 (17:09 +0200)] 
layer/rrsigcache: Fixed return value of stash_add_rrsig().

11 years agolayer/rrsigcache: Removed debugging messages.
Karel Slany [Mon, 29 Jun 2015 15:07:37 +0000 (17:07 +0200)] 
layer/rrsigcache: Removed debugging messages.

11 years agolayer/rrsigcache: Small ttl check before merging.
Karel Slany [Mon, 29 Jun 2015 08:28:01 +0000 (10:28 +0200)] 
layer/rrsigcache: Small ttl check before merging.

11 years agolayer/rrsigcache: Disabled debugging messages.
Karel Slany [Thu, 25 Jun 2015 12:40:03 +0000 (14:40 +0200)] 
layer/rrsigcache: Disabled debugging messages.

11 years agolayer/rrcache: RRSIGs are read from RRSIG cache.
Karel Slany [Wed, 24 Jun 2015 16:46:10 +0000 (18:46 +0200)] 
layer/rrcache: RRSIGs are read from RRSIG cache.

11 years agolayer/rrsigcache: RRSIG caching (writes) enabled.
Karel Slany [Wed, 24 Jun 2015 16:43:13 +0000 (18:43 +0200)] 
layer/rrsigcache: RRSIG caching (writes) enabled.

11 years agolayer/rrsigcache: Added layer responsible for caching RRSIGs.
Karel Slany [Wed, 24 Jun 2015 16:40:47 +0000 (18:40 +0200)] 
layer/rrsigcache: Added layer responsible for caching RRSIGs.

11 years agolib/cache: Updated RRSIG cache to meet the latest cache interface.
Karel Slany [Tue, 23 Jun 2015 14:04:39 +0000 (16:04 +0200)] 
lib/cache: Updated RRSIG cache to meet the latest cache interface.

11 years agolib/cache: RRSIG RRsets have a separate cache storing mechanism
Karel Slany [Fri, 22 May 2015 10:46:22 +0000 (12:46 +0200)] 
lib/cache: RRSIG RRsets have a separate cache storing mechanism

11 years agoMerge branch 'zonecut-filter-addrs'
Marek Vavruša [Mon, 29 Jun 2015 01:00:55 +0000 (03:00 +0200)] 
Merge branch 'zonecut-filter-addrs'