]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
5 years agoMerge branch 'ci-dumpcap' into 'master' obs-knot-dns-deve-jq0xxt/deployments/750 obs-knot-resolver-es11k1/deployments/751
Tomas Krizek [Thu, 16 Apr 2020 12:54:48 +0000 (14:54 +0200)] 
Merge branch 'ci-dumpcap' into 'master'

ci: add dumpcap for Deckard to Debian image

See merge request knot/knot-resolver!980

5 years agoci: add dumpcap for Deckard to Debian image
Štěpán Balážik [Thu, 16 Apr 2020 12:34:47 +0000 (14:34 +0200)] 
ci: add dumpcap for Deckard to Debian image

5 years agoMerge !979: lua: properly initialize random number generator obs-knot-dns-deve-jq0xxt/deployments/748 obs-knot-resolver-es11k1/deployments/749
Vladimír Čunát [Wed, 15 Apr 2020 13:10:51 +0000 (15:10 +0200)] 
Merge !979: lua: properly initialize random number generator

5 years agolua: properly initialize random number generator
Petr Špaček [Wed, 15 Apr 2020 08:55:07 +0000 (10:55 +0200)] 
lua: properly initialize random number generator

Formerly multiple instances could use the same seed,
which prevented the retry logic in Lua modules (e.g. prefill) from
retrying at different times.

AFAIK security impact is zero aside from potential thundering-herd
problem with many kresd instances.

5 years agoMerge !978: doc: support sphinx 3.0.0+ obs-knot-resolver-es11k1/deployments/747
Vladimír Čunát [Wed, 15 Apr 2020 08:49:59 +0000 (10:49 +0200)] 
Merge !978: doc: support sphinx 3.0.0+

5 years agodoc: use python as default domain
Tomas Krizek [Wed, 15 Apr 2020 08:14:51 +0000 (10:14 +0200)] 
doc: use python as default domain

Our lua functions don't conform to C function declarations, which
generates warnings when using Sphinx 3.0.0+.

5 years agodoc: use sphinx 3.0.0+ on readthedocs
Tomas Krizek [Tue, 14 Apr 2020 14:39:00 +0000 (16:39 +0200)] 
doc: use sphinx 3.0.0+ on readthedocs

5 years agodoc/lib: add warning about potential doc inaccuracies
Tomas Krizek [Tue, 14 Apr 2020 14:36:28 +0000 (16:36 +0200)] 
doc/lib: add warning about potential doc inaccuracies

5 years agodoc/policy: make sure only one reference to rpz() exists
Tomas Krizek [Tue, 14 Apr 2020 14:36:07 +0000 (16:36 +0200)] 
doc/policy: make sure only one reference to rpz() exists

5 years agodoc/upgrading: reword to use new-style C reference
Tomas Krizek [Tue, 14 Apr 2020 14:35:20 +0000 (16:35 +0200)] 
doc/upgrading: reword to use new-style C reference

5 years agolib/rplan: clean up codestyle for doxygen
Tomas Krizek [Tue, 14 Apr 2020 11:30:06 +0000 (13:30 +0200)] 
lib/rplan: clean up codestyle for doxygen

5 years agolib/utils: ensure consistent use of KR_* macros
Tomas Krizek [Tue, 14 Apr 2020 11:28:21 +0000 (13:28 +0200)] 
lib/utils: ensure consistent use of KR_* macros

The macros that expand to __attribute__(x) should precede function
declaration, consistently with all the other code.

5 years agodoc/doxygen: configure macro expansion and edge cases
Tomas Krizek [Tue, 14 Apr 2020 11:06:09 +0000 (13:06 +0200)] 
doc/doxygen: configure macro expansion and edge cases

Configure doxygen to expand/ignore some macros like KR_EXPORT.

Skip some edge-case symbols that would be difficult to fix otherwise.

5 years agoMerge !975: prevent bogus RRsets from leaking into answers
Vladimír Čunát [Wed, 15 Apr 2020 08:25:20 +0000 (10:25 +0200)] 
Merge !975: prevent bogus RRsets from leaking into answers

Closes #396

5 years agovalidator: use rank BOGUS where appropriate instead of MISSING
Petr Špaček [Tue, 7 Apr 2020 13:55:52 +0000 (15:55 +0200)] 
validator: use rank BOGUS where appropriate instead of MISSING

MISSING triggers re-query to auth in attempt to find missing RRSIGs.
It causes reduntant queries and also puts some BOGUS RRsets in answers.
(It sounds bad but we were correctly setting rcode=SERVFAIL and AD=0
even before this commit.)

Formerly RRSIG ranks did not reflect results of validation.
Now we mark them as BOGUS and upgrade them to SECURE if they validate.

New validator phase answer_finalize prevents BOGUS RRsets from being
put even into SERVFAIL answers.

Closes: #396
5 years agoMerge branch '194-support-rpz-cname-redirection' into 'master'
Petr Špaček [Tue, 14 Apr 2020 16:09:31 +0000 (18:09 +0200)] 
Merge branch '194-support-rpz-cname-redirection' into 'master'

support arbitrary data in RPZ

See merge request knot/knot-resolver!964

5 years agomodules/policy: use origin and domain name as binary data
Lukáš Ježek [Tue, 14 Apr 2020 08:33:38 +0000 (10:33 +0200)] 
modules/policy: use origin and domain name as binary data

5 years agomodules/policy: Return NODATA on *. action in rpz file
Lukáš Ježek [Mon, 6 Apr 2020 07:54:53 +0000 (09:54 +0200)] 
modules/policy: Return NODATA on *. action  in rpz file

5 years agomodules/policy/rpz: Correct work if RRset is suffixed zone name
Lukáš Ježek [Mon, 6 Apr 2020 07:09:21 +0000 (09:09 +0200)] 
modules/policy/rpz: Correct work if RRset is suffixed zone name

5 years agomodules/policy: Add RPZ test
Lukáš Ježek [Thu, 2 Apr 2020 12:38:13 +0000 (14:38 +0200)] 
modules/policy: Add RPZ test

5 years agomodules/policy: Take multiple RR types from rpz file for a single domain name
Lukáš Ježek [Wed, 1 Apr 2020 10:49:45 +0000 (12:49 +0200)] 
modules/policy: Take multiple RR types from rpz file for a single domain name

5 years agomodules/policy: Overwrite rdata by rpz file
Lukáš Ježek [Mon, 30 Mar 2020 10:02:05 +0000 (12:02 +0200)] 
modules/policy: Overwrite rdata by rpz file

5 years agomodules/policy: Add ANSWER action
Lukáš Ježek [Thu, 26 Mar 2020 08:05:46 +0000 (09:05 +0100)] 
modules/policy: Add ANSWER action

5 years agoMerge branch 'pkg-varlib-permissions' into 'master'
Tomas Krizek [Tue, 14 Apr 2020 14:49:26 +0000 (16:49 +0200)] 
Merge branch 'pkg-varlib-permissions' into 'master'

systemd/tmpfiles: change directory owner to root

See merge request knot/knot-resolver!972

5 years agosystemd/tmpfiles: change directory owner to root obs-knot-resolver-bs4hbr/deployments/743
Tomas Krizek [Thu, 2 Apr 2020 13:29:56 +0000 (15:29 +0200)] 
systemd/tmpfiles: change directory owner to root

Change the owner of kresd files to root:knot-resolver. This improves
behaviour for Fedora, where kresd can run under root (e.g. in Docker).
Otherwise, running kresd as root on Fedora would fail because of dropped
capabilities and attempting to access /var/lib/knot-resolver, which was
owned by knot-resolver.

This change makes it possible for both root (user) and knot-resolver
(group) to have the same permissions on these directories despite
dropped capabilities.

5 years agodistro/rpm: make owner consistent with other dirs
Tomas Krizek [Thu, 2 Apr 2020 13:29:41 +0000 (15:29 +0200)] 
distro/rpm: make owner consistent with other dirs

5 years agoMerge branch 'cache-pkt-large' into 'master'
Petr Špaček [Tue, 14 Apr 2020 08:16:35 +0000 (10:16 +0200)] 
Merge branch 'cache-pkt-large' into 'master'

cache: fix large answers from packet cache

See merge request knot/knot-resolver!976

5 years agocache: fix large answers from packet cache
Vladimír Čunát [Thu, 9 Apr 2020 09:44:35 +0000 (11:44 +0200)] 
cache: fix large answers from packet cache

Atomic packets larger than both 4k and net.bufsize() could not
be fetched from cache; now that's fixed in a minimalistic way.
(Minimalistic except for nitpicks like adding comments.)

5 years agoMerge !977: lua worker.bg_worker: also report missing cqueues
Vladimír Čunát [Tue, 14 Apr 2020 07:23:53 +0000 (09:23 +0200)] 
Merge !977: lua worker.bg_worker: also report missing cqueues

Fixes #562 (kind-of)

5 years agolua worker: improve message when missing cqueues
Petr Špaček [Tue, 14 Apr 2020 05:54:57 +0000 (07:54 +0200)] 
lua worker: improve message when missing cqueues

5 years agolua worker.bg_worker: also report missing cqueues
Vladimír Čunát [Tue, 14 Apr 2020 05:55:29 +0000 (07:55 +0200)] 
lua worker.bg_worker: also report missing cqueues

Otherwise people could get confusing errors like:
> attempt to index field 'bg_worker' (a nil value)

5 years agoMerge branch 'rpm-centos8' into 'master' obs-knot-dns-deve-jq0xxt/deployments/731 obs-knot-dns-deve-jq0xxt/deployments/733 obs-knot-dns-deve-jq0xxt/deployments/735 obs-knot-dns-deve-jq0xxt/deployments/737 obs-knot-dns-deve-jq0xxt/deployments/739 obs-knot-dns-deve-jq0xxt/deployments/741 obs-knot-resolver-es11k1/deployments/732 obs-knot-resolver-es11k1/deployments/734 obs-knot-resolver-es11k1/deployments/736 obs-knot-resolver-es11k1/deployments/738 obs-knot-resolver-es11k1/deployments/740 obs-knot-resolver-es11k1/deployments/742
Tomas Krizek [Wed, 8 Apr 2020 10:23:18 +0000 (12:23 +0200)] 
Merge branch 'rpm-centos8' into 'master'

distro/rpm: make spec centos8 compatible

See merge request knot/knot-resolver!973

5 years agoci: add obs:centos8 job obs-knot-resolver-bs4hbr/deployments/730
Tomas Krizek [Wed, 8 Apr 2020 09:09:12 +0000 (11:09 +0200)] 
ci: add obs:centos8 job

5 years agodistro/tests: add centos8
Tomas Krizek [Wed, 8 Apr 2020 09:07:15 +0000 (11:07 +0200)] 
distro/tests: add centos8

5 years agodistro/rpm: make spec centos8 compatible
Tomas Krizek [Fri, 3 Apr 2020 09:52:26 +0000 (11:52 +0200)] 
distro/rpm: make spec centos8 compatible

5 years agoMerge branch 'policy-postrules' into 'master' obs-knot-dns-deve-jq0xxt/deployments/720 obs-knot-dns-deve-jq0xxt/deployments/722 obs-knot-dns-deve-jq0xxt/deployments/724 obs-knot-dns-deve-jq0xxt/deployments/726 obs-knot-dns-deve-jq0xxt/deployments/728 obs-knot-resolver-es11k1/deployments/721 obs-knot-resolver-es11k1/deployments/723 obs-knot-resolver-es11k1/deployments/725 obs-knot-resolver-es11k1/deployments/727 obs-knot-resolver-es11k1/deployments/729
Tomas Krizek [Fri, 3 Apr 2020 13:32:47 +0000 (15:32 +0200)] 
Merge branch 'policy-postrules' into 'master'

policy postrules

Closes #556

See merge request knot/knot-resolver!969

5 years agorebinding: deduplicate code of policy.REFUSE
Vladimír Čunát [Thu, 2 Apr 2020 07:46:50 +0000 (09:46 +0200)] 
rebinding: deduplicate code of policy.REFUSE

5 years agopolicy: fix qry parameter in postrules
Vladimír Čunát [Thu, 2 Apr 2020 07:01:11 +0000 (09:01 +0200)] 
policy: fix qry parameter in postrules

Some rules need it and it was nil until now.

5 years agomodules/policy: make actions usable in postrules
Vladimír Čunát [Wed, 4 Dec 2019 08:18:57 +0000 (09:18 +0100)] 
modules/policy: make actions usable in postrules

DENY, DENY_MSG, DROP, REFUSE and TC will now clear the _selected RRs.
I believe that's what people usually expect of these actions anyway.

5 years agoMerge branch 'modules-tests' into 'master' obs-knot-dns-deve-jq0xxt/deployments/717 obs-knot-resolver-es11k1/deployments/718
Tomas Krizek [Thu, 2 Apr 2020 12:33:49 +0000 (14:33 +0200)] 
Merge branch 'modules-tests' into 'master'

modules/meson.build: move test definitions closer to modules

See merge request knot/knot-resolver!971

5 years agomodules/meson.build: move test definitions closer to modules
Vladimír Čunát [Thu, 2 Apr 2020 09:14:25 +0000 (11:14 +0200)] 
modules/meson.build: move test definitions closer to modules

5 years agoMerge !966: daf and HTTP fixes
Vladimír Čunát [Thu, 2 Apr 2020 12:11:04 +0000 (14:11 +0200)] 
Merge !966: daf and HTTP fixes

Closes #553.

5 years agodaf: make protocol detection consistent with http module
Tomas Krizek [Wed, 1 Apr 2020 15:28:41 +0000 (17:28 +0200)] 
daf: make protocol detection consistent with http module

5 years agodaf: fix example in documentation
Tomas Krizek [Wed, 1 Apr 2020 15:07:53 +0000 (17:07 +0200)] 
daf: fix example in documentation

5 years agomodules/daf: add warning since examples can be misleading
Tomas Krizek [Wed, 1 Apr 2020 12:53:22 +0000 (14:53 +0200)] 
modules/daf: add warning since examples can be misleading

5 years agomodules/daf: add some basic tests
Tomas Krizek [Wed, 1 Apr 2020 12:37:17 +0000 (14:37 +0200)] 
modules/daf: add some basic tests

5 years agomodules/daf: fix pass, deny, drop and tc actions
Tomas Krizek [Wed, 1 Apr 2020 09:57:05 +0000 (11:57 +0200)] 
modules/daf: fix pass, deny, drop and tc actions

Previously, all those actions caused resolver to return SERVFAIL,
because the lua code failed to evaluate.

Notably, deny action now properly returns NXDOMAIN instead of SERVFAIL.
The drop action still returns SERVFAIL.

5 years agodaf/README: use proper syntax, not syntactic sugar
Tomas Krizek [Wed, 1 Apr 2020 09:04:31 +0000 (11:04 +0200)] 
daf/README: use proper syntax, not syntactic sugar

5 years agohttp: update favicon to match Resolver colors
Petr Špaček [Wed, 1 Apr 2020 08:32:21 +0000 (10:32 +0200)] 
http: update favicon to match Resolver colors

Old favicon used Knot DNS colors (dark blue) instead of Knot Resolver
colors (light blue).

5 years agodaf: fix add() handling of empty rule strings
Petr Špaček [Tue, 31 Mar 2020 15:31:00 +0000 (17:31 +0200)] 
daf: fix add() handling of empty rule strings

5 years agodaf: config tests for HTTP API
Petr Špaček [Tue, 31 Mar 2020 15:29:53 +0000 (17:29 +0200)] 
daf: config tests for HTTP API

5 years agodaf: remove ordering requirement between http and daf modules
Petr Špaček [Tue, 31 Mar 2020 14:12:49 +0000 (16:12 +0200)] 
daf: remove ordering requirement between http and daf modules

5 years agotests: avoid deprecated -f 1 in config tests, use -n
Petr Špaček [Tue, 31 Mar 2020 14:11:53 +0000 (16:11 +0200)] 
tests: avoid deprecated -f 1 in config tests, use -n

Omission in a339ee10d71380f6c0779950b73dd3c419036135.

Related: #529

5 years agodaf: fix HTTP DELETE
Petr Špaček [Tue, 31 Mar 2020 14:01:47 +0000 (16:01 +0200)] 
daf: fix HTTP DELETE

Rule ID is a number, not a string.

5 years agohttp: also log results of HTTP requests
Petr Špaček [Tue, 31 Mar 2020 13:35:37 +0000 (15:35 +0200)] 
http: also log results of HTTP requests

5 years agodaf: fix the ajax error callback for rule control
Jiří Helebrant [Tue, 31 Mar 2020 12:48:18 +0000 (14:48 +0200)] 
daf: fix the ajax error callback for rule control

5 years agodaf: fix consensus() function to correctly detect empty answers
Petr Špaček [Tue, 31 Mar 2020 12:33:00 +0000 (14:33 +0200)] 
daf: fix consensus() function to correctly detect empty answers

consensus() function is affected by
https://gitlab.labs.nic.cz/knot/knot-resolver/issues/554
so this fix helps only with single-instance scenarios.

5 years agodaf: fix the rule builder form
Jiří Helebrant [Tue, 31 Mar 2020 09:40:47 +0000 (11:40 +0200)] 
daf: fix the rule builder form

5 years agohttp: log requests in verbose mode
Petr Špaček [Tue, 31 Mar 2020 07:30:18 +0000 (09:30 +0200)] 
http: log requests in verbose mode

5 years agodaf: fix HTTP API endpoints to work with webmgmt interface
Petr Špaček [Tue, 31 Mar 2020 07:02:16 +0000 (09:02 +0200)] 
daf: fix HTTP API endpoints to work with webmgmt interface

It is broken at least since 1223599d1cb8d92f1ebe7100e926b8fe44bee2f2,
i.e. 4.0.0.

5 years agodaf: fix del method
realPy [Mon, 30 Mar 2020 10:54:22 +0000 (12:54 +0200)] 
daf: fix del method

The id rule is not the same as the index of the array.

Fixes: #553
5 years agoMerge branch 'deckard_debug' into 'master'
Tomas Krizek [Thu, 2 Apr 2020 11:56:46 +0000 (13:56 +0200)] 
Merge branch 'deckard_debug' into 'master'

tests: revert broken commits in Deckard repo

See merge request knot/knot-resolver!970

5 years agotests: revert broken commits in Deckard repo
Petr Špaček [Thu, 2 Apr 2020 11:25:15 +0000 (13:25 +0200)] 
tests: revert broken commits in Deckard repo

I don't know why exactly it fails ... let's unblock release.

5 years agoMerge !968: daemon: decrease tcp backlog to 128 obs-knot-dns-deve-jq0xxt/deployments/714 obs-knot-resolver-es11k1/deployments/715
Vladimír Čunát [Wed, 1 Apr 2020 10:17:01 +0000 (12:17 +0200)] 
Merge !968: daemon: decrease tcp backlog to 128

5 years agodaemon: decrease tcp backlog to 128
Tomas Krizek [Tue, 31 Mar 2020 15:32:09 +0000 (17:32 +0200)] 
daemon: decrease tcp backlog to 128

From our TCP benchmarks, values over 128 don't seem to have any
measurable benefits, even with hundreds of thousands of connections.

On the contrary, during very high TCP and CPU load, smaller backlog
seems to dramatically improve latency for clients that keep idle TCP
connections.

During normal/low load, smaller backlog doesn't seem to have any
benefits.

When measured against "aggressive" clients that immediately close the
TCP connection once their query is answered, backlog smaller than 128
was measured to hurt performance.

The application's backlog size is ultimately limited by
net.core.somaxconn, which has been set to 128 prior to Linux 5.4.
Therefore, this change only affects newer kernels and those who have
manually set this value to a higher size.

For more, see
https://gitlab.labs.nic.cz/knot/knot-resolver/-/merge_requests/968

5 years agoMerge !967: abort integration tests if sendmmsg is enabled
Vladimír Čunát [Wed, 1 Apr 2020 09:34:59 +0000 (11:34 +0200)] 
Merge !967: abort integration tests if sendmmsg is enabled

5 years agoMerge branch 'lua-resolve-opt' into 'master'
Petr Špaček [Wed, 1 Apr 2020 09:04:37 +0000 (11:04 +0200)] 
Merge branch 'lua-resolve-opt' into 'master'

lua resolve(): correctly include EDNS0 in the virtual packet

See merge request knot/knot-resolver!963

5 years agodeckard: abort if sendmmsg/recvmmsg are in use
Petr Špaček [Tue, 31 Mar 2020 09:43:00 +0000 (11:43 +0200)] 
deckard: abort if sendmmsg/recvmmsg are in use

Deckard does not support these and it leads to confusing errors.
In long term we need to migrate Deckard to different network backend:
https://gitlab.labs.nic.cz/knot/deckard/issues/42

5 years agolua resolve(): correctly include EDNS0 in the virtual packet
Vladimír Čunát [Fri, 27 Mar 2020 08:36:11 +0000 (09:36 +0100)] 
lua resolve(): correctly include EDNS0 in the virtual packet

The new allocation approach isn't perfectly optimal, but it seems
relatively easy to understand and handles OOM conditions OK (I think).

5 years agoMerge !957: per-request verbose logging and debug log improvements obs-knot-dns-deve-jq0xxt/deployments/704 obs-knot-dns-deve-jq0xxt/deployments/706 obs-knot-dns-deve-jq0xxt/deployments/708 obs-knot-dns-deve-jq0xxt/deployments/710 obs-knot-dns-deve-jq0xxt/deployments/712 obs-knot-resolver-es11k1/deployments/705 obs-knot-resolver-es11k1/deployments/707 obs-knot-resolver-es11k1/deployments/709 obs-knot-resolver-es11k1/deployments/711 obs-knot-resolver-es11k1/deployments/713
Vladimír Čunát [Thu, 26 Mar 2020 13:44:58 +0000 (14:44 +0100)] 
Merge !957: per-request verbose logging and debug log improvements

5 years agolua: log RR ranks the same way as [cach] does
Vladimír Čunát [Thu, 26 Mar 2020 12:44:42 +0000 (13:44 +0100)] 
lua: log RR ranks the same way as [cach] does

5 years agopolicy.DEBUG: NEWS + upgrading
Petr Špaček [Wed, 25 Mar 2020 13:46:16 +0000 (14:46 +0100)] 
policy.DEBUG: NEWS + upgrading

5 years agopolicy.DEBUG_IF: avoid creating new callbacks on every request
Petr Špaček [Wed, 25 Mar 2020 12:21:49 +0000 (13:21 +0100)] 
policy.DEBUG_IF: avoid creating new callbacks on every request

This new approach uses per-request variables in Lua and creates new
callback for each DEBUG_IF call instead of each request.

5 years agoDockerfile with one-shot mode
Petr Špaček [Fri, 20 Mar 2020 14:59:58 +0000 (15:59 +0100)] 
Dockerfile with one-shot mode

Intended usage: Quick resolution attempt with an empty cache.

export QNAME=...
export QTYPE=...
sudo -E docker run -e QNAME -e QTYPE krestest:latest '-n' '-c' '/etc/knot-resolver/kresd.conf'

5 years agopolicy.DEBUG: fix to respect user-provided callbacks
Petr Špaček [Fri, 20 Mar 2020 13:40:44 +0000 (14:40 +0100)] 
policy.DEBUG: fix to respect user-provided callbacks

It creates new callback functions for every request which
uses "callback chaining" but these should be rare.

5 years agolua: expose cache miss detection in request objects
Petr Špaček [Thu, 19 Mar 2020 07:13:06 +0000 (08:13 +0100)] 
lua: expose cache miss detection in request objects

It seems there is no reason to keep this function private in policy
module.

5 years agocache: remove forgotten log message "writing RRsets"
Petr Špaček [Wed, 18 Mar 2020 14:38:57 +0000 (15:38 +0100)] 
cache: remove forgotten log message "writing RRsets"

It did not log through request->trace_log and is not very useful anyway.

5 years agovalidator: clarify message about signed non-authoritative data
Petr Špaček [Wed, 18 Mar 2020 14:20:59 +0000 (15:20 +0100)] 
validator: clarify message about signed non-authoritative data

5 years agopolicy.DEBUG: add also policy.REQTRACE for printing incoming packets
Petr Špaček [Wed, 18 Mar 2020 13:03:13 +0000 (14:03 +0100)] 
policy.DEBUG: add also policy.REQTRACE for printing incoming packets

5 years agopolicy.DEBUG: generalize DEBUG_CACHE_MISS into DEBUG_IF
Petr Špaček [Wed, 18 Mar 2020 11:22:24 +0000 (12:22 +0100)] 
policy.DEBUG: generalize DEBUG_CACHE_MISS into DEBUG_IF

DEBUG_IF accepts user-supplied function which decides which requests
should be logged.

5 years agopolicy: doc reorganization and clarification
Petr Špaček [Mon, 16 Mar 2020 16:14:13 +0000 (17:14 +0100)] 
policy: doc reorganization and clarification

5 years agopolicy.DEBUG: log also final answer
Petr Špaček [Fri, 13 Mar 2020 17:23:33 +0000 (18:23 +0100)] 
policy.DEBUG: log also final answer

Attempt to avoid duplicating ten lines in debug_logfinish_cb lead me
to splitting kr_log_qverbose_impl into two functions kr_log_q and kr_log_req.
This is another minor change to API exposed to modules.

5 years agounify verbose logging and request tracing
Petr Špaček [Thu, 12 Mar 2020 12:41:49 +0000 (13:41 +0100)] 
unify verbose logging and request tracing

Formerly both logs used slightly different formats and duplicated code.
From now on verbose log and request tracing are generated using the same
code.

This required a small change to request trace_log_f definition so it
might affect external modules.

5 years agolua: helper functions for debug log
Petr Špaček [Thu, 12 Mar 2020 10:08:12 +0000 (11:08 +0100)] 
lua: helper functions for debug log

5 years agodebug: warn on qname letter case mismatch
Petr Špaček [Wed, 11 Mar 2020 15:46:18 +0000 (16:46 +0100)] 
debug: warn on qname letter case mismatch

We de-randomize qname letter case very early so kr_pkt_text() should see
all lowercase. Any uppercase means mismatch.

I've considered moving debug print to an earlier place but this way it
is more visible so I like more.

5 years agoiterate: log IP address sending mismatching answers
Petr Špaček [Wed, 11 Mar 2020 15:44:07 +0000 (16:44 +0100)] 
iterate: log IP address sending mismatching answers

5 years agodaemon/worker: add logging to qr_task_step query cancelation
Štěpán Balážik [Wed, 11 Mar 2020 12:50:33 +0000 (13:50 +0100)] 
daemon/worker: add logging to qr_task_step query cancelation

5 years agoMerge branch 'strict-aliasing' into 'master' obs-knot-dns-deve-jq0xxt/deployments/698 obs-knot-dns-deve-jq0xxt/deployments/700 obs-knot-dns-deve-jq0xxt/deployments/702 obs-knot-resolver-es11k1/deployments/699 obs-knot-resolver-es11k1/deployments/701 obs-knot-resolver-es11k1/deployments/703
Tomas Krizek [Mon, 23 Mar 2020 13:35:45 +0000 (14:35 +0100)] 
Merge branch 'strict-aliasing' into 'master'

fix strict aliasing problems

See merge request knot/knot-resolver!962

5 years agomeson.build: compile with -fno-strict-aliasing obs-knot-resolver-bs4hbr/deployments/697
Vladimír Čunát [Mon, 23 Mar 2020 10:37:28 +0000 (11:37 +0100)] 
meson.build: compile with -fno-strict-aliasing

I tested that older compilers don't refuse this option:
 - gcc 4.8 (as that's the default in CentOS 7)
 - llvm 3.8 (year 2016 is enough, I hope)

5 years agolib/generic/array: fix a strict aliasing problem
Vladimír Čunát [Fri, 20 Mar 2020 16:28:54 +0000 (17:28 +0100)] 
lib/generic/array: fix a strict aliasing problem

The issue here is that `char *` is not allowed to alias
with `anyType *`.  With gcc-10 in Fedora this now started
to cause real problems and loading stats module segfaulted.

Actually I can't see in standard (C11 6.5 par.7) that using `void *`
is guaranteed to be correct, but at least it seems fine with gcc,
and e.g. some standard functions like posix_memalign() use it
in the same "dangerous" way.

5 years agoMerge branch 'ci-add-docker-py' into 'master' obs-knot-dns-deve-jq0xxt/deployments/691 obs-knot-dns-deve-jq0xxt/deployments/693 obs-knot-dns-deve-jq0xxt/deployments/695 obs-knot-resolver-es11k1/deployments/692 obs-knot-resolver-es11k1/deployments/694 obs-knot-resolver-es11k1/deployments/696
Tomas Krizek [Fri, 20 Mar 2020 13:35:45 +0000 (14:35 +0100)] 
Merge branch 'ci-add-docker-py' into 'master'

ci/debian-buster: Add docker-py to docker image

See merge request knot/knot-resolver!961

5 years agoci/debian-buster: Add docker-py to docker image
Lukáš Ježek [Wed, 4 Mar 2020 13:14:40 +0000 (14:14 +0100)] 
ci/debian-buster: Add docker-py to docker image

5 years agoMerge branch 'ci-add-libnghttp2' into 'master' obs-knot-dns-deve-jq0xxt/deployments/687 obs-knot-dns-deve-jq0xxt/deployments/689 obs-knot-resolver-es11k1/deployments/688 obs-knot-resolver-es11k1/deployments/690
Tomas Krizek [Wed, 18 Mar 2020 17:13:00 +0000 (18:13 +0100)] 
Merge branch 'ci-add-libnghttp2' into 'master'

ci/debian-buster: add libnghttp2 to docker image

See merge request knot/knot-resolver!960

5 years agoci/debian-buster: add libnghttp2 to docker image
Tomas Krizek [Wed, 18 Mar 2020 16:15:00 +0000 (17:15 +0100)] 
ci/debian-buster: add libnghttp2 to docker image

5 years agoMerge branch 'fix-leap-distrotest' into 'master' obs-knot-dns-deve-jq0xxt/deployments/685 obs-knot-resolver-es11k1/deployments/686
Tomas Krizek [Tue, 17 Mar 2020 16:22:45 +0000 (17:22 +0100)] 
Merge branch 'fix-leap-distrotest' into 'master'

distro/tests: failure to refresh Leap15 repo is non-critical

See merge request knot/knot-resolver!959

5 years agodistro/tests: failure to refresh Leap15 repo is non-critical
Tomas Krizek [Tue, 17 Mar 2020 15:48:24 +0000 (16:48 +0100)] 
distro/tests: failure to refresh Leap15 repo is non-critical

5 years agodistro/tests: update README
Tomas Krizek [Tue, 17 Mar 2020 15:47:41 +0000 (16:47 +0100)] 
distro/tests: update README

5 years agoMerge branch 'doc-links' into 'master'
Tomas Krizek [Tue, 17 Mar 2020 14:01:17 +0000 (15:01 +0100)] 
Merge branch 'doc-links' into 'master'

doc: fix a broken internal link

See merge request knot/knot-resolver!958

5 years agodoc: fix a broken internal link
Vladimír Čunát [Mon, 16 Mar 2020 18:11:37 +0000 (19:11 +0100)] 
doc: fix a broken internal link

Reported on Turris forums:
https://forum.turris.cz/t/dns-over-tcp-just-a-single-transaction/12003/21

5 years agoMerge !954: docs: better RPZ description (+fix watch) obs-knot-dns-deve-jq0xxt/deployments/669 obs-knot-dns-deve-jq0xxt/deployments/671 obs-knot-dns-deve-jq0xxt/deployments/673 obs-knot-dns-deve-jq0xxt/deployments/675 obs-knot-dns-deve-jq0xxt/deployments/677 obs-knot-dns-deve-jq0xxt/deployments/679 obs-knot-dns-deve-jq0xxt/deployments/681 obs-knot-dns-deve-jq0xxt/deployments/683 obs-knot-resolver-es11k1/deployments/670 obs-knot-resolver-es11k1/deployments/672 obs-knot-resolver-es11k1/deployments/674 obs-knot-resolver-es11k1/deployments/676 obs-knot-resolver-es11k1/deployments/678 obs-knot-resolver-es11k1/deployments/680 obs-knot-resolver-es11k1/deployments/682 obs-knot-resolver-es11k1/deployments/684
Vladimír Čunát [Mon, 9 Mar 2020 17:20:51 +0000 (18:20 +0100)] 
Merge !954: docs: better RPZ description (+fix watch)