]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
9 years agobuild: more checks for travis builds
Marek Vavrusa [Sat, 14 May 2016 22:32:38 +0000 (15:32 -0700)] 
build: more checks for travis builds

9 years agodaemon/worker: deduplicate inbound queries
Marek Vavrusa [Wed, 11 May 2016 07:40:35 +0000 (00:40 -0700)] 
daemon/worker: deduplicate inbound queries

many clients do frequent retransmits of the query
to avoid network losses and get better service,
but then fail to work properly when a resolver
answers SERVFAIL to some of them because of the
time limit and some of them NOERROR.
it's also a good idea to avoid wasting time
tracking pending tasks to solve the same thing.

9 years agoAllow Go modules on more architectures
Ondřej Surý [Thu, 12 May 2016 13:27:44 +0000 (15:27 +0200)] 
Allow Go modules on more architectures

9 years agodaemon: do not modify task for outgoing queries
Marek Vavrusa [Wed, 11 May 2016 00:45:12 +0000 (17:45 -0700)] 
daemon: do not modify task for outgoing queries

if the upstream TCP query timeouted or the connection
was severed, it would dissociate the handle from
original query, so the query would be solved
but the requestor wouldn't see the answer unless
he requeried

9 years agodaemon: fix statistics for outgoing TCPs
Marek Vavrusa [Wed, 11 May 2016 00:14:10 +0000 (17:14 -0700)] 
daemon: fix statistics for outgoing TCPs

9 years agodaemon: renamed is_subreq -> outgoing
Marek Vavrusa [Wed, 11 May 2016 00:11:41 +0000 (17:11 -0700)] 
daemon: renamed is_subreq -> outgoing

9 years agoMerge branch 'ref_serv' into 'master'
Marek Vavrusa [Fri, 6 May 2016 06:44:02 +0000 (08:44 +0200)] 
Merge branch 'ref_serv' into 'master'

Additional processing for REFUSED & SERVFAIL rcodes

See merge request !22

9 years agolib: cleanup servfail soft-fails
Marek Vavrusa [Fri, 6 May 2016 06:40:28 +0000 (23:40 -0700)] 
lib: cleanup servfail soft-fails

* simplified soft-fail per-ns limit to per-query
  limit, each query gets 4 tries at resolving
* instead of locking at single servfailing NS,
  penalise it and run reelection, this may or
  may not try other servers but avoids pathologic
  case when single NS is servfailing while others
  are good but never probed
* added new nsrep update mode (addition)

9 years agolib/resolve,layer/iterate: processing for REFUSED & SERVFAIL rcodes
Grigorii Demidov [Tue, 3 May 2016 09:10:23 +0000 (11:10 +0200)] 
lib/resolve,layer/iterate: processing for REFUSED & SERVFAIL rcodes

9 years agotests/tests.mk: fails if deckard/contrib/libswrap/obj directory already exists
Grigorii Demidov [Thu, 5 May 2016 08:15:27 +0000 (10:15 +0200)] 
tests/tests.mk: fails if deckard/contrib/libswrap/obj directory already exists

9 years agotests/deckard: sync to master
Grigorii Demidov [Tue, 3 May 2016 11:35:34 +0000 (13:35 +0200)] 
tests/deckard: sync to master

9 years agoMerge branch 'tcp-ooo'
Marek Vavrusa [Wed, 4 May 2016 00:46:56 +0000 (17:46 -0700)] 
Merge branch 'tcp-ooo'

9 years agolib/validate: fixed memory bug
Marek Vavrusa [Wed, 4 May 2016 00:17:53 +0000 (17:17 -0700)] 
lib/validate: fixed memory bug

this code used memory pool of source packet instead
of the answer, this could result in invalidated
memory read if the memory occupied by source
packet was rewritten

9 years agodaemon: out-of-order processing for TCP
Marek Vavrusa [Tue, 3 May 2016 06:56:20 +0000 (23:56 -0700)] 
daemon: out-of-order processing for TCP

* daemon now processes messages over TCP stream
out-of-order and concurrently
* support for TCP_DEFER_ACCEPT
* support for TCP Fast-Open
* there are now deadlines for TCP for idle/slow
streams (to prevent slowloris; pruning)
* there is now per-request limit on timeouts
(each request is allowed 4 timeouts before bailing)
* faster request closing, unified retry/timeout timers
* rare race condition in timer closing fixed

9 years agodaemon: mode(strict|normal|permissive)
Marek Vavrusa [Mon, 18 Apr 2016 03:34:31 +0000 (20:34 -0700)] 
daemon: mode(strict|normal|permissive)

the daemon has now three modes of strictness
checking from strict to permissive.
it reflects the tradeoff between resolving the
query in as few steps as possible and security
for insecure zones

9 years agopolicy: warn when NYI action
Marek Vavrusa [Mon, 18 Apr 2016 02:13:02 +0000 (19:13 -0700)] 
policy: warn when NYI action

9 years agoengine: clear bad scorers from RTT every 5 minutes
Marek Vavrusa [Mon, 18 Apr 2016 00:32:17 +0000 (17:32 -0700)] 
engine: clear bad scorers from RTT every 5 minutes

an internal timer walks RTT timer periodically and
clears entries with bad results every 5 minutes.
this means that a timeouted entry penalty is
capped to that interval, making sure that the
bad reputation doesn't last forever

9 years agoengine: throttle outbound queries only when busy
Marek Vavrusa [Mon, 18 Apr 2016 00:29:41 +0000 (17:29 -0700)] 
engine: throttle outbound queries only when busy

resolver will always attempt to contact upstreams
known to be bad if it's not busy.
this fixes a problem on low-volume resolvers
where a short connection outage could make
resolvers deny resolving queries even after the
connection is restored

9 years agobuild: no fortify when address sanitizer
Marek Vavrusa [Fri, 15 Apr 2016 16:35:31 +0000 (09:35 -0700)] 
build: no fortify when address sanitizer

9 years agoupdated deckard
Marek Vavrusa [Fri, 15 Apr 2016 07:28:58 +0000 (00:28 -0700)] 
updated deckard

9 years agoRevert "lib/dnssec: nsec, nsec3 (no-optout) referrals to unsigned subzones"
Marek Vavrusa [Fri, 15 Apr 2016 07:20:56 +0000 (00:20 -0700)] 
Revert "lib/dnssec: nsec, nsec3 (no-optout) referrals to unsigned subzones"

This reverts commit f9ffeca9cc7382b8ed24217bfab1d0f34a51bd7a.

9 years agolib/iterate: QUERY_PERMISSIVE mode
Marek Vavrusa [Fri, 15 Apr 2016 07:03:13 +0000 (00:03 -0700)] 
lib/iterate: QUERY_PERMISSIVE mode

in permissive mode, resolver is free to use
(but not cache) non-mandatory glue records even
if they're not resolvable. this is great as a
workaround for broken child-side zones, but
not great for security of, well, insecure
delegations. it's off by default.

9 years agotests: cache test fixed
Grigorii Demidov [Thu, 14 Apr 2016 12:08:01 +0000 (14:08 +0200)] 
tests: cache test fixed

9 years agoremove asprintf warnings
Daniel Kahn Gillmor [Sun, 3 Apr 2016 05:43:34 +0000 (02:43 -0300)] 
remove asprintf warnings

9 years agoadded surmised C indentation rules for emacs users
Daniel Kahn Gillmor [Sun, 3 Apr 2016 03:10:41 +0000 (00:10 -0300)] 
added surmised C indentation rules for emacs users

9 years agofix comment
Daniel Kahn Gillmor [Sun, 3 Apr 2016 01:02:26 +0000 (22:02 -0300)] 
fix comment

9 years agotests: updated deckard
Marek Vavrusa [Thu, 14 Apr 2016 05:28:55 +0000 (22:28 -0700)] 
tests: updated deckard

9 years agolayer/rrcache: record cache miss avoided for wcard answers
Grigorii Demidov [Mon, 4 Apr 2016 12:16:10 +0000 (14:16 +0200)] 
layer/rrcache: record cache miss avoided for wcard answers

9 years agolib/cache: flags field was added to cache entry header
Grigorii Demidov [Fri, 1 Apr 2016 11:24:24 +0000 (13:24 +0200)] 
lib/cache: flags field was added to cache entry header

9 years agodnssec: wildcard answer proof
Grigorii Demidov [Thu, 31 Mar 2016 16:41:08 +0000 (18:41 +0200)] 
dnssec: wildcard answer proof

9 years agolib/layer: CNAME chain construction improvement
Grigorii Demidov [Tue, 15 Mar 2016 14:47:49 +0000 (15:47 +0100)] 
lib/layer: CNAME chain construction improvement

9 years agolib/dnssec: nsec, nsec3 (no-optout) referrals to unsigned subzones
Grigorii Demidov [Mon, 14 Mar 2016 11:12:21 +0000 (12:12 +0100)] 
lib/dnssec: nsec, nsec3 (no-optout) referrals to unsigned subzones

9 years agodnssec/nsec: lookup for rset type withinin nsec3 type bitmap; minor bug fixed
Grigorii Demidov [Fri, 11 Mar 2016 11:49:20 +0000 (12:49 +0100)] 
dnssec/nsec: lookup for rset type withinin nsec3 type bitmap; minor bug fixed

9 years agodoc: fixes, added `second` and `min` aliases
Marek Vavrusa [Thu, 7 Apr 2016 16:43:45 +0000 (09:43 -0700)] 
doc: fixes, added `second` and `min` aliases

9 years agoMerge branch 'PaulosV-PaulosV-patch-1-readme-docker'
Marek Vavrusa [Wed, 6 Apr 2016 17:27:35 +0000 (10:27 -0700)] 
Merge branch 'PaulosV-PaulosV-patch-1-readme-docker'

9 years agoMerge branch 'PaulosV-patch-1-readme-docker' of https://github.com/PaulosV/knot-resol...
Marek Vavrusa [Wed, 6 Apr 2016 17:27:27 +0000 (10:27 -0700)] 
Merge branch 'PaulosV-patch-1-readme-docker' of https://github.com/PaulosV/knot-resolver into PaulosV-PaulosV-patch-1-readme-docker

9 years agoMerge branch 'thozza-daemon-doc-typo'
Marek Vavrusa [Wed, 6 Apr 2016 17:26:09 +0000 (10:26 -0700)] 
Merge branch 'thozza-daemon-doc-typo'

9 years agoMerge branch 'daemon-doc-typo' of https://github.com/thozza/knot-resolver into thozza...
Marek Vavrusa [Wed, 6 Apr 2016 17:25:58 +0000 (10:25 -0700)] 
Merge branch 'daemon-doc-typo' of https://github.com/thozza/knot-resolver into thozza-daemon-doc-typo

9 years agoMerge branch 'rfc5011-clearing'
Marek Vavrusa [Wed, 6 Apr 2016 04:55:27 +0000 (21:55 -0700)] 
Merge branch 'rfc5011-clearing'

9 years agotrust_anchors: added custom timers, limit history
Marek Vavrusa [Tue, 5 Apr 2016 22:18:20 +0000 (15:18 -0700)] 
trust_anchors: added custom timers, limit history

new trust anchors variables:
* trust_anchors.hold_down_time = 30 * day
* trust_anchors.refresh_time = nil
* trust_anchors.keep_removed = 0

these could be used to control how often should
root trust anchors be checked and how many removed
keys should be kept in log (0 by default)

9 years agoFixed typo in daemon documentation
Tomas Hozza [Mon, 4 Apr 2016 14:03:48 +0000 (16:03 +0200)] 
Fixed typo in daemon documentation

Signed-off-by: Tomas Hozza <thozza@redhat.com>
9 years agodoc: update
Marek Vavrusa [Tue, 29 Mar 2016 21:59:52 +0000 (14:59 -0700)] 
doc: update

9 years agoAdd fix missing -m in the install command
Ondřej Surý [Tue, 29 Mar 2016 09:57:30 +0000 (11:57 +0200)] 
Add fix missing -m in the install command

9 years agoCreate mandir first before install manpage
Ondřej Surý [Tue, 29 Mar 2016 09:56:36 +0000 (11:56 +0200)] 
Create mandir first before install manpage

9 years agoMerge branch '1.0.0'
Marek Vavrusa [Tue, 29 Mar 2016 05:09:34 +0000 (22:09 -0700)] 
Merge branch '1.0.0'

9 years agoMerge branch 'supervisor'
Marek Vavrusa [Tue, 29 Mar 2016 05:09:29 +0000 (22:09 -0700)] 
Merge branch 'supervisor'

9 years agoversion bump, added kresd(8) man, updated doc
Marek Vavrusa [Tue, 29 Mar 2016 05:09:03 +0000 (22:09 -0700)] 
version bump, added kresd(8) man, updated doc

9 years agodaemon: systemd socket activation
Marek Vavrusa [Tue, 29 Mar 2016 01:35:41 +0000 (18:35 -0700)] 
daemon: systemd socket activation

addition to previous generic socket activation

fixes #11

9 years agodaemon: support running in supervised mode (--fd=X)
Marek Vavrusa [Mon, 28 Mar 2016 23:08:24 +0000 (16:08 -0700)] 
daemon: support running in supervised mode (--fd=X)

daemon can accept existing fds on command line,
thus supporting process managers like circus or
upstart. a tiny supervisor script is attached

9 years agolib/resolve: worked around bug with multiple TAs
Marek Vavrusa [Thu, 10 Mar 2016 17:52:49 +0000 (17:52 +0000)] 
lib/resolve: worked around bug with multiple TAs

9 years agobuild: bumped version to 1.0.0-beta4
Marek Vavrusa [Thu, 10 Mar 2016 17:30:11 +0000 (17:30 +0000)] 
build: bumped version to 1.0.0-beta4

9 years agoMerge branch 'better-rtt-tracking'
Marek Vavrusa [Thu, 10 Mar 2016 17:29:23 +0000 (17:29 +0000)] 
Merge branch 'better-rtt-tracking'

9 years agoMerge branch 'set-adbit-when-secure' into better-rtt-tracking
Marek Vavrusa [Thu, 10 Mar 2016 17:29:09 +0000 (17:29 +0000)] 
Merge branch 'set-adbit-when-secure' into better-rtt-tracking

9 years agolib/resolve: set AD=1 when client asks with it and secure
Marek Vavrusa [Thu, 10 Mar 2016 17:28:22 +0000 (17:28 +0000)] 
lib/resolve: set AD=1 when client asks with it and secure

9 years agodaemon: track case when all upstreams fail
Marek Vavrusa [Tue, 8 Mar 2016 17:26:19 +0000 (17:26 +0000)] 
daemon: track case when all upstreams fail

previously full timeout led to reset of the evaluated
address list and no upstream server was penalised
for not answering the query, this penalises all of
tried servers with TIMEOUT

9 years agoUse Knot DNS 2.1.1 instead of Knot DNS 2.1.0-rc1
Ondřej Surý [Sat, 5 Mar 2016 08:12:59 +0000 (09:12 +0100)] 
Use Knot DNS 2.1.1 instead of Knot DNS 2.1.0-rc1

9 years agoMerge branch 'ent-wc-fix' into 'master'
Marek Vavrusa [Thu, 3 Mar 2016 22:36:31 +0000 (23:36 +0100)] 
Merge branch 'ent-wc-fix' into 'master'

Fixed nsec3 proof validation with opt-out below wildcard

See merge request !17

9 years agolib/cache;lib/dnssec;lib/layer: some issues were fixed
Grigorii Demidov [Wed, 24 Feb 2016 10:19:05 +0000 (11:19 +0100)] 
lib/cache;lib/dnssec;lib/layer: some issues were fixed

9 years agomodules/graphite: updated doc
Marek Vavrusa [Wed, 24 Feb 2016 06:47:03 +0000 (22:47 -0800)] 
modules/graphite: updated doc

9 years agomodules/graphite: support for Graphite/TCP
Marek Vavrusa [Wed, 24 Feb 2016 06:40:17 +0000 (22:40 -0800)] 
modules/graphite: support for Graphite/TCP

graphite module now supports sending over TCP,
if the connection is severed it will attempt to
reconnect periodically. the stats module is now
optional, if not loaded only core built-in stats
will be transmitted

9 years agoFix 'bogus proof of DS non-existence' for non-existant DS records in the cache
Ondřej Surý [Wed, 17 Feb 2016 18:34:33 +0000 (19:34 +0100)] 
Fix 'bogus proof of DS non-existence' for non-existant DS records in the cache

9 years agolib/cache: kr_cache_clear() fixed
Grigorii Demidov [Mon, 22 Feb 2016 12:17:56 +0000 (13:17 +0100)] 
lib/cache: kr_cache_clear() fixed

9 years agoFix 'bogus proof of DS non-existence' for non-existant DS records in the cache
Ondřej Surý [Wed, 17 Feb 2016 18:34:33 +0000 (19:34 +0100)] 
Fix 'bogus proof of DS non-existence' for non-existant DS records in the cache

9 years agodnssec/nsec3: some clarifications were made in comments
Grigorii Demidov [Fri, 12 Feb 2016 12:29:33 +0000 (13:29 +0100)] 
dnssec/nsec3: some clarifications were made in comments

9 years agodnssec/nsec3: missed kr_error() fixed
Grigorii Demidov [Fri, 12 Feb 2016 09:51:59 +0000 (10:51 +0100)] 
dnssec/nsec3: missed kr_error() fixed

9 years agonsec3: rfc5155 errata 3114 8.5 was implemented
Grigorii Demidov [Thu, 11 Feb 2016 12:30:19 +0000 (13:30 +0100)] 
nsec3: rfc5155 errata 3114 8.5 was implemented

9 years agolib/validate: scrubbed extra rrs in NS were checked
Marek Vavrusa [Mon, 8 Feb 2016 01:36:48 +0000 (01:36 +0000)] 
lib/validate: scrubbed extra rrs in NS were checked

the validator module should ignore any data that
will be scrubbed, that includes non-authoritative
data outside current bailiwick. previously,
validator attempted to ignore these records only
for answer section and had a special case for NS
records.

cache: non-authoritative NS records are always
unchecked and must be treated as insecure

affected: www.iana.org trying to provide
delegation information for CNAME target, which is
moot with CNAME target explicit-fetch policy unless
the the resolver already knows DNSKEY with which
is could verify the records

9 years agodoc: changes in dnssec
Marek Vavrusa [Wed, 3 Feb 2016 01:35:51 +0000 (01:35 +0000)] 
doc: changes in dnssec

9 years agodaemon/trust_anchors: accept DS in root keys
Marek Vavrusa [Wed, 3 Feb 2016 01:21:14 +0000 (01:21 +0000)] 
daemon/trust_anchors: accept DS in root keys

kresd accepts DS records in root keys if provided,
it will eventually replace them with DNSKEY in
automatic mode

9 years agobuild: enabled -ld for Linux
Marek Vavrusa [Wed, 3 Feb 2016 01:20:16 +0000 (01:20 +0000)] 
build: enabled -ld for Linux

9 years agodaemon/config: bind to v4 and v6 loopback separately
Marek Vavrusa [Wed, 3 Feb 2016 01:20:05 +0000 (01:20 +0000)] 
daemon/config: bind to v4 and v6 loopback separately

9 years agobuild: fixed too early CFLAGS expansion
Marek Vavrusa [Tue, 2 Feb 2016 23:28:59 +0000 (23:28 +0000)] 
build: fixed too early CFLAGS expansion

9 years agodoc: fixed broken breathe mistaking define for func v1.0.0-beta3
Marek Vavrusa [Sat, 30 Jan 2016 15:03:15 +0000 (15:03 +0000)] 
doc: fixed broken breathe mistaking define for func

breathe failed to process the typedef thinking
the macro expansion was a function pointer

9 years agoscripts/tools: updated doc, timers
Marek Vavrusa [Sat, 30 Jan 2016 14:35:28 +0000 (14:35 +0000)] 
scripts/tools: updated doc, timers

9 years agodaemon/worker: updated doc, worker.timeout metric
Marek Vavrusa [Sat, 30 Jan 2016 14:35:00 +0000 (14:35 +0000)] 
daemon/worker: updated doc, worker.timeout metric

9 years agoscripts/kresd-host: name alias handling
Marek Vavrusa [Sat, 30 Jan 2016 13:13:23 +0000 (13:13 +0000)] 
scripts/kresd-host: name alias handling

9 years agoscripts/kresd-host: ignore other types in answer
Marek Vavrusa [Sat, 30 Jan 2016 13:06:05 +0000 (13:06 +0000)] 
scripts/kresd-host: ignore other types in answer

9 years agolib/dnssec: new nsec3 test, cleanup
Marek Vavrusa [Fri, 29 Jan 2016 13:06:10 +0000 (13:06 +0000)] 
lib/dnssec: new nsec3 test, cleanup

9 years agolayer/validate: fixed NSEC nodata in some cases
Marek Vavrusa [Fri, 29 Jan 2016 00:06:26 +0000 (00:06 +0000)] 
layer/validate: fixed NSEC nodata in some cases

updated tests

9 years agoscripts: 'host' utility alternative in scripts
Marek Vavrusa [Sat, 23 Jan 2016 00:00:58 +0000 (16:00 -0800)] 
scripts: 'host' utility alternative in scripts

the utility supports most of the 'unbound-host'
functionality except PTR records

9 years agodaemon/lua: rrset printing, new flags
Marek Vavrusa [Fri, 22 Jan 2016 23:59:40 +0000 (15:59 -0800)] 
daemon/lua: rrset printing, new flags

this is a temporary change until luajit-kdns is
merged-in with complete functionality,
this will break the API later and will require a
couple changes in several modules and trust anchors

9 years agoscripts: kresd-query.lua (new)
Marek Vavrusa [Fri, 22 Jan 2016 07:48:58 +0000 (23:48 -0800)] 
scripts: kresd-query.lua (new)

this is a boilerplate for a CLI utility to resolve
names and execute script on query response
in another words, "a jq for resolver answers"

this is a scaffolding for alternative tools like
'host' or a plug-in part for scripting around it.

it basically starts a kresd instance, but doesn't
bind to any interface or read configuration,
then a query + callback is sent to kresd standard
input, and it quits after the execution

9 years agodaemon/trust_anchors: faster TA bootstrap refetch
Marek Vavrusa [Fri, 22 Jan 2016 07:44:51 +0000 (23:44 -0800)] 
daemon/trust_anchors: faster TA bootstrap refetch

when boostrapping root TA, the DNSKEYs are updated
immediately after retrieving DS from the side channel

9 years agodaemon/lua: kres can see request zone cut (part)
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)

9 years agolib/resolve: new flag ALWAYS_CUT
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

9 years agodaemon: "-c -" doesn't ready any configuration
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

9 years agodaemon: resolve callback has request as well
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

9 years agodaemon: -q for quiet mode, deferred TA update
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

9 years agodaemon/trust_anchors: fixed root key fetch
Marek Vavrusa [Thu, 21 Jan 2016 05:42:21 +0000 (21:42 -0800)] 
daemon/trust_anchors: fixed root key fetch

9 years agotests/deckard: synced to master
Marek Vavrusa [Thu, 21 Jan 2016 05:23:44 +0000 (21:23 -0800)] 
tests/deckard: synced to master

9 years agoMerge branch 'deck_test'
Marek Vavrusa [Thu, 21 Jan 2016 05:20:47 +0000 (21:20 -0800)] 
Merge branch 'deck_test'

9 years agotests: sync deckard; lib\iterate: sync to master
Grigorii Demidov [Wed, 20 Jan 2016 09:05:05 +0000 (10:05 +0100)] 
tests: sync deckard; lib\iterate: sync to master

9 years agolib/iterate: ignore out-of-bailiwick NSs for positive answers
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

9 years agolib/iterate: ignore out-of-bailiwick NSs for positive answers
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

9 years agolib/dnssec: wrong prepend_asterisk() usage was fixed, cleanup
Grigorii Demidov [Mon, 18 Jan 2016 09:27:19 +0000 (10:27 +0100)] 
lib/dnssec: wrong prepend_asterisk() usage was fixed, cleanup

9 years agotests/deckard: sync to master
Grigorii Demidov [Fri, 15 Jan 2016 11:43:58 +0000 (12:43 +0100)] 
tests/deckard: sync to master

9 years agolib/dnssec: nsec3.c, wrong prepend_asterisk() usage was fixed
Grigorii Demidov [Fri, 15 Jan 2016 11:31:20 +0000 (12:31 +0100)] 
lib/dnssec: nsec3.c, wrong prepend_asterisk() usage was fixed

9 years agoUpdated README.md Docker info - fix URL
Pavel Valach [Tue, 12 Jan 2016 22:22:17 +0000 (23:22 +0100)] 
Updated README.md Docker info - fix URL

9 years agoUpdated README.md Docker info
Pavel Valach [Tue, 12 Jan 2016 22:13:02 +0000 (23:13 +0100)] 
Updated README.md Docker info

Updated Docker run command, because without -it (interactive) switch, kresd would freeze upon startup on [system] interactive mode. That may as well be a defect, but adding -it helps in all cases.
Also updated the URL to the correct address (you'd get redirected automatically, but still).

9 years agodeckard: sync to master
Grigorii Demidov [Mon, 11 Jan 2016 12:47:19 +0000 (13:47 +0100)] 
deckard: sync to master