]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
6 years agoutils/cache_gc lint: stricter parsing of CLI integers
Vladimír Čunát [Mon, 17 Jun 2019 11:11:07 +0000 (13:11 +0200)] 
utils/cache_gc lint: stricter parsing of CLI integers

For example, "10foo" will no longer be accepted as number 10.

6 years agoutils/cache_gc: meson - add sources to c_lint
Tomas Krizek [Mon, 17 Jun 2019 09:51:55 +0000 (11:51 +0200)] 
utils/cache_gc: meson - add sources to c_lint

6 years agoutils/cache_gc: rename daemon to kres_cache_gc
Tomas Krizek [Mon, 17 Jun 2019 09:39:46 +0000 (11:39 +0200)] 
utils/cache_gc: rename daemon to kres_cache_gc

6 years agoclient: move under utils directory
Tomas Krizek [Mon, 17 Jun 2019 08:52:56 +0000 (10:52 +0200)] 
client: move under utils directory

6 years agofixup! lib/cache: make entry_h_consistent() generic
Vladimír Čunát [Fri, 14 Jun 2019 14:55:15 +0000 (16:55 +0200)] 
fixup! lib/cache: make entry_h_consistent() generic

6 years agoutils/kr_cache_gc: minor nitpicks
Vladimír Čunát [Fri, 14 Jun 2019 12:59:07 +0000 (14:59 +0200)] 
utils/kr_cache_gc: minor nitpicks

It should be no real change, just better readability, hopefully.

6 years agoutils/kr_cache_gc: support NSEC3 (aggressive) RRs
Vladimír Čunát [Fri, 14 Jun 2019 12:56:48 +0000 (14:56 +0200)] 
utils/kr_cache_gc: support NSEC3 (aggressive) RRs

6 years agolib/cache: make entry_h_consistent() generic
Vladimír Čunát [Fri, 14 Jun 2019 12:48:21 +0000 (14:48 +0200)] 
lib/cache: make entry_h_consistent() generic

Basically all use cases get renamed to *_E(), except one in utils/kr_cache_gc.
It was perhaps confusing that this name only applied to 'E' entries.

6 years agodoc: document cache garbage collector
Tomas Krizek [Thu, 13 Jun 2019 15:35:58 +0000 (17:35 +0200)] 
doc: document cache garbage collector

6 years agoutils/kr_cache_gc: fix lint:pedantic
Tomas Krizek [Thu, 13 Jun 2019 11:53:58 +0000 (13:53 +0200)] 
utils/kr_cache_gc: fix lint:pedantic

6 years agodistro: package kr_cache_gc
Tomas Krizek [Thu, 16 May 2019 11:43:33 +0000 (13:43 +0200)] 
distro: package kr_cache_gc

6 years agoutils/kr_cache_gc: add params for configuring cache
Tomas Krizek [Thu, 16 May 2019 10:29:05 +0000 (12:29 +0200)] 
utils/kr_cache_gc: add params for configuring cache

6 years agoutils/kr_cache_gc: set default rw_txn_items to 100
Tomas Krizek [Wed, 15 May 2019 16:06:15 +0000 (18:06 +0200)] 
utils/kr_cache_gc: set default rw_txn_items to 100

6 years agoutils/kr_cache_gc: re-initialize lmdb txn in case of error
Tomas Krizek [Wed, 15 May 2019 16:05:41 +0000 (18:05 +0200)] 
utils/kr_cache_gc: re-initialize lmdb txn in case of error

6 years agoutils/kr_cache_gc: skip invalid entries during iteration
Tomas Krizek [Wed, 15 May 2019 16:04:58 +0000 (18:04 +0200)] 
utils/kr_cache_gc: skip invalid entries during iteration

6 years agokr_cache_gc: build with meson
Tomas Krizek [Wed, 15 May 2019 14:12:51 +0000 (16:12 +0200)] 
kr_cache_gc: build with meson

6 years agokr_cache_gc: randomized deleting of parts of huge categories
Libor Peltan [Fri, 11 May 2018 14:20:58 +0000 (16:20 +0200)] 
kr_cache_gc: randomized deleting of parts of huge categories

6 years agokr_cache_gc: implemented dry-run (only occupation watching mode)
Libor Peltan [Fri, 11 May 2018 14:20:28 +0000 (16:20 +0200)] 
kr_cache_gc: implemented dry-run (only occupation watching mode)

6 years agokr_cache_gc: improvements, mostly categories
Libor Peltan [Fri, 4 May 2018 17:06:09 +0000 (19:06 +0200)] 
kr_cache_gc: improvements, mostly categories

6 years agokr_cache_gc: implemented categories, code split and cleanup
Libor Peltan [Fri, 4 May 2018 13:27:16 +0000 (15:27 +0200)] 
kr_cache_gc: implemented categories, code split and cleanup

categories: different level of what should be deleted based on DB usage

6 years agokr_cache_gc: increasing mapsize if the cache is full
Libor Peltan [Fri, 27 Apr 2018 13:15:11 +0000 (15:15 +0200)] 
kr_cache_gc: increasing mapsize if the cache is full

6 years agokr_cache_gc: little improvements
Libor Peltan [Fri, 27 Apr 2018 12:09:39 +0000 (14:09 +0200)] 
kr_cache_gc: little improvements

6 years agokr_cache_gc: separated DB transactions to prevent blocking; config; bugfix
Libor Peltan [Fri, 20 Apr 2018 11:42:54 +0000 (13:42 +0200)] 
kr_cache_gc: separated DB transactions to prevent blocking; config; bugfix

6 years agokr_cache_gc: added optional interval of infinite periodic action
Libor Peltan [Fri, 20 Apr 2018 08:44:32 +0000 (10:44 +0200)] 
kr_cache_gc: added optional interval of infinite periodic action

6 years agokr_cache_gc: separated main function
Libor Peltan [Fri, 20 Apr 2018 08:21:26 +0000 (10:21 +0200)] 
kr_cache_gc: separated main function

6 years agokr_cache_gc: UI improvements
Libor Peltan [Sun, 15 Apr 2018 10:47:28 +0000 (12:47 +0200)] 
kr_cache_gc: UI improvements

6 years agokr_cache_gc: initial commit
Libor Peltan [Fri, 13 Apr 2018 13:50:32 +0000 (15:50 +0200)] 
kr_cache_gc: initial commit

6 years agoMerge branch 'systemd-kill' into 'master'
Petr Špaček [Wed, 3 Jul 2019 07:34:51 +0000 (07:34 +0000)] 
Merge branch 'systemd-kill' into 'master'

systemd: kill kresd@* service if unresponsive when stopping

See merge request knot/knot-resolver!837

6 years agosystemd: kill kresd@* service if unresponsive when stopping
Tomas Krizek [Tue, 2 Jul 2019 15:43:41 +0000 (17:43 +0200)] 
systemd: kill kresd@* service if unresponsive when stopping

6 years agoMerge !836: sandbox: fix missing default class in resolve() function obs-knot-dns-deve-jq0xxt/deployments/57 obs-knot-dns-deve-jq0xxt/deployments/60 obs-knot-resolver-es11k1/deployments/58 obs-knot-resolver-es11k1/deployments/61
Vladimír Čunát [Mon, 1 Jul 2019 16:39:53 +0000 (16:39 +0000)] 
Merge !836: sandbox: fix missing default class in resolve() function

6 years agosandbox: fix missing default class in resolve() function
Petr Špaček [Mon, 1 Jul 2019 16:00:53 +0000 (18:00 +0200)] 
sandbox: fix missing default class in resolve() function

Regression in 19ef77d1e (unreleased): Default value IN for qclass
parameter was missing.  Also consistently use A as default for qtype.

6 years agoMerge branch 'ci-nitpicks' into 'master' obs-knot-dns-deve-jq0xxt/deployments/48 obs-knot-dns-deve-jq0xxt/deployments/50 obs-knot-dns-deve-jq0xxt/deployments/52 obs-knot-dns-deve-jq0xxt/deployments/54 obs-knot-resolver-es11k1/deployments/49 obs-knot-resolver-es11k1/deployments/51 obs-knot-resolver-es11k1/deployments/53 obs-knot-resolver-es11k1/deployments/55
Tomas Krizek [Thu, 27 Jun 2019 16:09:05 +0000 (16:09 +0000)] 
Merge branch 'ci-nitpicks' into 'master'

ci: nitpicks

See merge request knot/knot-resolver!835

6 years agodistro/tests: separate ansible role for repo conf obs-knot-resolver-es11k1/deployments/47
Tomas Krizek [Thu, 27 Jun 2019 13:06:51 +0000 (15:06 +0200)] 
distro/tests: separate ansible role for repo conf

6 years agoci: rename log to vagrant.log.txt
Tomas Krizek [Thu, 27 Jun 2019 11:43:41 +0000 (13:43 +0200)] 
ci: rename log to vagrant.log.txt

6 years agoci: support tagged version matching in obs:build:all
Tomas Krizek [Thu, 27 Jun 2019 11:43:17 +0000 (13:43 +0200)] 
ci: support tagged version matching in obs:build:all

6 years agoMerge branch 'cache-pkt-minimal-ranges' into 'master'
Petr Špaček [Thu, 27 Jun 2019 11:15:41 +0000 (11:15 +0000)] 
Merge branch 'cache-pkt-minimal-ranges' into 'master'

lib/cache: no aggressive caching on minimal NSEC* ranges

See merge request knot/knot-resolver!826

6 years agotests: integration test for minimal NSEC3 range
Petr Špaček [Tue, 25 Jun 2019 16:55:41 +0000 (18:55 +0200)] 
tests: integration test for minimal NSEC3 range

6 years agolib/cache: no aggressive caching on minimal NSEC* ranges
Vladimír Čunát [Wed, 12 Jun 2019 14:26:39 +0000 (16:26 +0200)] 
lib/cache: no aggressive caching on minimal NSEC* ranges

We use packet cache instead.  Also do the same on some kinds of weird
RRsets, as even there some caching should be better than none at all.
This "incidentally" works around all known cases of DVE-2018-0003.

6 years agoMerge branch 'ci-nitpicks' into 'master' obs-knot-dns-deve-jq0xxt/deployments/45 obs-knot-resolver-es11k1/deployments/46
Tomas Krizek [Wed, 26 Jun 2019 12:33:48 +0000 (12:33 +0000)] 
Merge branch 'ci-nitpicks' into 'master'

ci: nitpicks & minor distrotests fixes

See merge request knot/knot-resolver!834

6 years agodistro/tests: handle deprecation warnings obs-knot-resolver-es11k1/deployments/44
Tomas Krizek [Wed, 26 Jun 2019 12:10:58 +0000 (14:10 +0200)] 
distro/tests: handle deprecation warnings

6 years agodistro/tests: increase memory to 1GB to avoid potential issues
Tomas Krizek [Wed, 26 Jun 2019 11:57:34 +0000 (13:57 +0200)] 
distro/tests: increase memory to 1GB to avoid potential issues

6 years agodistro/tests: fix fedora issue (low memory)
Tomas Krizek [Wed, 26 Jun 2019 11:53:02 +0000 (13:53 +0200)] 
distro/tests: fix fedora issue (low memory)

6 years agoci: improve version mismatch detection for obs:build:all
Tomas Krizek [Wed, 26 Jun 2019 10:47:11 +0000 (12:47 +0200)] 
ci: improve version mismatch detection for obs:build:all

6 years agoci/travis: don't hammer API when state is created/started
Tomas Krizek [Tue, 25 Jun 2019 08:54:48 +0000 (10:54 +0200)] 
ci/travis: don't hammer API when state is created/started

6 years agoci: fix concurrent ditrotests
Tomas Krizek [Tue, 25 Jun 2019 08:02:14 +0000 (10:02 +0200)] 
ci: fix concurrent ditrotests

6 years agoMerge !827: send EDNS with SERVFAILs obs-knot-dns-deve-jq0xxt/deployments/42 obs-knot-resolver-es11k1/deployments/43
Vladimír Čunát [Tue, 25 Jun 2019 15:27:08 +0000 (15:27 +0000)] 
Merge !827: send EDNS with SERVFAILs

e.g. on validation failures.  Closes #180

6 years agolib/resolve nitpick: fix lint after the parent commit
Vladimír Čunát [Mon, 24 Jun 2019 16:51:07 +0000 (18:51 +0200)] 
lib/resolve nitpick: fix lint after the parent commit

Returning void isn't allowed, apparently.

6 years agolib/resolve: failing states in answer finalization
Vladimír Čunát [Mon, 24 Jun 2019 16:13:16 +0000 (18:13 +0200)] 
lib/resolve: failing states in answer finalization

Mainly reduce duplication of state and request->state,
and slightly reorganize the code.

6 years agodon't set TC if omitting an ADDITIONAL record
Vladimír Čunát [Mon, 24 Jun 2019 15:52:26 +0000 (17:52 +0200)] 
don't set TC if omitting an ADDITIONAL record

This is a nitpick, basically.

6 years agolib/resolve: don't skip EDNS if failed
Vladimír Čunát [Tue, 18 Jun 2019 07:52:14 +0000 (09:52 +0200)] 
lib/resolve: don't skip EDNS if failed

This was almost all done during the IETF 104 hackathon.

6 years agotreewide nitpick: more sensitive detection of KR_STATE_FAIL
Vladimír Čunát [Mon, 10 Sep 2018 13:19:43 +0000 (15:19 +0200)] 
treewide nitpick: more sensitive detection of KR_STATE_FAIL

I don't know any particular case where the bit-test would succeed and
equality wouldn't, but it seems better to take no chances.

6 years agoMerge branch 'http_additional_parameters' into 'master'
Petr Špaček [Tue, 25 Jun 2019 14:01:34 +0000 (14:01 +0000)] 
Merge branch 'http_additional_parameters' into 'master'

DoH GET additional parameters + tests

See merge request knot/knot-resolver!832

6 years agomodules/http: tests for DoH
Ivana Krumlová [Mon, 24 Jun 2019 11:32:41 +0000 (13:32 +0200)] 
modules/http: tests for DoH

6 years agomodules/http: new DOH tests for GET
Ivana Krumlová [Fri, 21 Jun 2019 12:09:07 +0000 (14:09 +0200)] 
modules/http: new DOH tests for GET

6 years agomodules/http: ignorring other GET parameters
Ivana Krumlová [Thu, 20 Jun 2019 14:01:32 +0000 (16:01 +0200)] 
modules/http: ignorring other GET parameters

6 years agoMerge branch 'ci-travis' into 'master'
Tomas Krizek [Tue, 25 Jun 2019 07:35:18 +0000 (07:35 +0000)] 
Merge branch 'ci-travis' into 'master'

ci/travis.py: also wait if in "created" state

See merge request knot/knot-resolver!833

6 years agoci/travis.py: also wait if in "created" state
Vladimír Čunát [Mon, 24 Jun 2019 17:03:52 +0000 (19:03 +0200)] 
ci/travis.py: also wait if in "created" state

Apparently they added this state; example:
https://gitlab.labs.nic.cz/knot/knot-resolver/-/jobs/275512

6 years agoMerge !828: add systemd watchdog obs-knot-dns-deve-jq0xxt/deployments/40 obs-knot-resolver-es11k1/deployments/41
Vladimír Čunát [Mon, 24 Jun 2019 14:12:45 +0000 (14:12 +0000)] 
Merge !828: add systemd watchdog

Closes #275

6 years agomodules/sd_watchdog: deinit correctness
Vladimír Čunát [Mon, 24 Jun 2019 12:44:26 +0000 (14:44 +0200)] 
modules/sd_watchdog: deinit correctness

and slightly better error reporting.

6 years agomodules/sd_watchdog nitpicks: simplify
Vladimír Čunát [Mon, 24 Jun 2019 12:34:17 +0000 (14:34 +0200)] 
modules/sd_watchdog nitpicks: simplify

6 years agomodules/sd_watchdog nitpick: detect more errors
Vladimír Čunát [Thu, 20 Jun 2019 11:45:28 +0000 (13:45 +0200)] 
modules/sd_watchdog nitpick: detect more errors

6 years agomodules/sd_watchdog: new module for systemd watchdog support
Tomas Krizek [Tue, 18 Jun 2019 17:24:24 +0000 (19:24 +0200)] 
modules/sd_watchdog: new module for systemd watchdog support

6 years agomeson: properly detect libsystemd dependency
Tomas Krizek [Tue, 18 Jun 2019 14:53:37 +0000 (16:53 +0200)] 
meson: properly detect libsystemd dependency

6 years agoMerge branch 'ci-nitpicks' into 'master'
Tomas Krizek [Mon, 24 Jun 2019 09:30:36 +0000 (09:30 +0000)] 
Merge branch 'ci-nitpicks' into 'master'

ci: nitpicks

See merge request knot/knot-resolver!831

6 years agoci: filter undesired results in obs:build:all
Tomas Krizek [Mon, 24 Jun 2019 08:43:37 +0000 (10:43 +0200)] 
ci: filter undesired results in obs:build:all

6 years agoci: enable parallel distrotests for multiple repos
Tomas Krizek [Thu, 20 Jun 2019 08:13:36 +0000 (10:13 +0200)] 
ci: enable parallel distrotests for multiple repos

6 years agoMerge branch 'fix-travis-ci' into 'master' obs-knot-dns-deve-jq0xxt/deployments/29 obs-knot-dns-deve-jq0xxt/deployments/32 obs-knot-dns-deve-jq0xxt/deployments/34 obs-knot-dns-deve-jq0xxt/deployments/36 obs-knot-dns-deve-jq0xxt/deployments/38 obs-knot-resolver-es11k1/deployments/30 obs-knot-resolver-es11k1/deployments/33 obs-knot-resolver-es11k1/deployments/35 obs-knot-resolver-es11k1/deployments/37 obs-knot-resolver-es11k1/deployments/39
Tomas Krizek [Wed, 19 Jun 2019 15:38:10 +0000 (15:38 +0000)] 
Merge branch 'fix-travis-ci' into 'master'

fix travis CI + nitpicks

See merge request knot/knot-resolver!829

6 years ago.tavis.ci: use newer osx image to fix builds
Tomas Krizek [Wed, 19 Jun 2019 15:21:48 +0000 (17:21 +0200)] 
.tavis.ci: use newer osx image to fix builds

6 years agodoc: improve DNSBL warning for rebinding module
Tomas Krizek [Thu, 13 Jun 2019 12:16:17 +0000 (14:16 +0200)] 
doc: improve DNSBL warning for rebinding module

6 years ago.gitlabci: enable distrotests for knot-dns-devel
Tomas Krizek [Thu, 13 Jun 2019 12:06:25 +0000 (14:06 +0200)] 
.gitlabci: enable distrotests for knot-dns-devel

6 years agoMerge branch 'http-intermediate' into 'master' obs-knot-dns-deve-jq0xxt/deployments/27 obs-knot-resolver-es11k1/deployments/28
Tomas Krizek [Tue, 18 Jun 2019 08:08:51 +0000 (08:08 +0000)] 
Merge branch 'http-intermediate' into 'master'

modules/http: also send intermediate TLS certificate

See merge request knot/knot-resolver!819

6 years agomodules/http ephemeral cert: update before expiration
Vladimír Čunát [Mon, 17 Jun 2019 14:58:49 +0000 (16:58 +0200)] 
modules/http ephemeral cert: update before expiration

Instead of three days after.  This bug was not introduced by the recent
commits moving the code.

6 years agohttp/test_tls: add test for chain certificates
Tomas Krizek [Fri, 14 Jun 2019 14:58:40 +0000 (16:58 +0200)] 
http/test_tls: add test for chain certificates

6 years agohttp/test_tls: add new certificates issued by custom CA
Tomas Krizek [Fri, 14 Jun 2019 14:56:30 +0000 (16:56 +0200)] 
http/test_tls: add new certificates issued by custom CA

ca.crt is cert from root CA
test.crt is cert issued by intermediate CA
chain.crt contains issued cert and intermediate CA cert

issued for: kr.local, 127.0.0.1

6 years agomodules/http: fixes around maintenance of ephemeral certs
Vladimír Čunát [Tue, 11 Jun 2019 09:48:52 +0000 (11:48 +0200)] 
modules/http: fixes around maintenance of ephemeral certs

The cert was updated only once :-/  Now it's updated until the http
module is unloaded.

Also, each socket would create its own ephemeral certificate,
so now that's all shared within the process.  Technically we could
synchronise even multiple instances, based on the files, but that would
be much more complex, and it seems an unlikely combination to deploy.

6 years agomodules/http: also send intermediate TLS certificate
Vladimír Čunát [Tue, 21 May 2019 13:38:14 +0000 (15:38 +0200)] 
modules/http: also send intermediate TLS certificate

- separate certificate handling into a new file (+ rename the functions)
- handle a list of certs instead of a single one
- minor nitpicks

6 years agoMerge !797: lua light userdata obs-knot-dns-deve-jq0xxt/deployments/17 obs-knot-dns-deve-jq0xxt/deployments/19 obs-knot-dns-deve-jq0xxt/deployments/21 obs-knot-dns-deve-jq0xxt/deployments/23 obs-knot-dns-deve-jq0xxt/deployments/25 obs-knot-resolver-es11k1/deployments/18 obs-knot-resolver-es11k1/deployments/20 obs-knot-resolver-es11k1/deployments/22 obs-knot-resolver-es11k1/deployments/24 obs-knot-resolver-es11k1/deployments/26
Vladimír Čunát [Thu, 13 Jun 2019 13:08:28 +0000 (13:08 +0000)] 
Merge !797: lua light userdata

Closes #216.

6 years agomore NEWS for this branch
Vladimír Čunát [Tue, 7 May 2019 08:42:01 +0000 (10:42 +0200)] 
more NEWS for this branch

6 years agomodules, docs: omit casting parameters of lua layers
Vladimír Čunát [Thu, 14 Mar 2019 10:00:13 +0000 (11:00 +0100)] 
modules, docs: omit casting parameters of lua layers

Thanks to changes in this branch the functions are called with correctly
typed parameters already, so these weird casts can be deleted.

6 years agomodule loading nitpick: improve error message
Vladimír Čunát [Tue, 9 Apr 2019 07:44:22 +0000 (09:44 +0200)] 
module loading nitpick: improve error message

This should have been a part of 176b1c282, but I forgot it somehow.

6 years agomain() nitpick: deduplicate a bit of code
Vladimír Čunát [Mon, 6 May 2019 12:37:12 +0000 (14:37 +0200)] 
main() nitpick: deduplicate a bit of code

6 years agoworker_resolve_mk_pkt(): move to better file, document
Vladimír Čunát [Mon, 6 May 2019 13:34:10 +0000 (15:34 +0200)] 
worker_resolve_mk_pkt(): move to better file, document

6 years agolua worker.resolve*: rework, get rid of light userdata
Vladimír Čunát [Fri, 5 Apr 2019 16:27:01 +0000 (18:27 +0200)] 
lua worker.resolve*: rework, get rid of light userdata

6 years agolua module framework: reduce usage of void *data
Vladimír Čunát [Tue, 9 Apr 2019 07:34:35 +0000 (09:34 +0200)] 
lua module framework: reduce usage of void *data

Theoretically a lua module could have used them, but I see no motivation
for that, as they have much more convenient ways inside lua.

6 years agolua event.*: better safety
Vladimír Čunát [Mon, 6 May 2019 11:00:07 +0000 (13:00 +0200)] 
lua event.*: better safety

... when called with bad parameters, and restructure the code a bit.
Note: uv_timer_start() is documented to be OK on active timers.

6 years agolua event.*: convert light userdata to full
Vladimír Čunát [Fri, 5 Apr 2019 13:24:57 +0000 (15:24 +0200)] 
lua event.*: convert light userdata to full

They're a bit more expensive, but we won't want lots of events anyway,
so I decided to do a simple conversion.

6 years agomodules: tidy (de)initialization code
Vladimír Čunát [Thu, 4 Apr 2019 15:04:27 +0000 (17:04 +0200)] 
modules: tidy (de)initialization code

6 years agotreewide: drop support for other lua versions
Vladimír Čunát [Thu, 4 Apr 2019 12:08:06 +0000 (14:08 +0200)] 
treewide: drop support for other lua versions

We're very much depending on LuaJIT, for years already.
The removed stuff seems very unlikely to be useful in any LuaJIT
in forseeable future.  The Lua language is effectively forked.

6 years agolua module layers: simplify l_ffi_call_layer() usage
Vladimír Čunát [Thu, 4 Apr 2019 11:56:56 +0000 (13:56 +0200)] 
lua module layers: simplify l_ffi_call_layer() usage

6 years agolua module layers: passing from C to lua
Vladimír Čunát [Thu, 4 Apr 2019 10:42:34 +0000 (12:42 +0200)] 
lua module layers: passing from C to lua

... without light userdata and yet it should be efficient.
Also with checkout layer, but I have no nice way of testing that one.

6 years agomodules: change the "indexing" syntax sugar for C modules
Vladimír Čunát [Mon, 18 Mar 2019 13:49:04 +0000 (14:49 +0100)] 
modules: change the "indexing" syntax sugar for C modules

In particular, throw errors when used in weird ways,
instead of the usual "return nil" semantics.
That might be surprising to some lua users.

6 years agoCI: avoid ASAN problems in one more test for now
Vladimír Čunát [Fri, 15 Mar 2019 17:06:24 +0000 (18:06 +0100)] 
CI: avoid ASAN problems in one more test for now

6 years agomodules impl.: avoid using custom trampolines
Vladimír Čunát [Fri, 15 Mar 2019 16:14:58 +0000 (17:14 +0100)] 
modules impl.: avoid using custom trampolines

...when making calls from lua to C modules; use luaJIT FFI instead.
This eliminates some cases of lua_pushlightuserdata().

6 years agoengine: switch to static allocation instead of stack
Vladimír Čunát [Wed, 13 Mar 2019 12:10:06 +0000 (13:10 +0100)] 
engine: switch to static allocation instead of stack

6 years agoworker: convert to a proper singleton
Vladimír Čunát [Wed, 27 Feb 2019 16:13:39 +0000 (17:13 +0100)] 
worker: convert to a proper singleton

On many places we've been assuming that there's only a single worker,
but we still often didn't utilize the property well.  To get the pointer
we used various ways, all even untyped:
 - __worker global variable in lua
 - uv_default_loop()->data
 - kr_request::daemon_context

Now we instead simply define a global typed pointer the_worker.

Nitpick: also worker_{init,deinit}() are reordered to correspond
to the order of the fields, etc.

6 years agoMerge !824: distrotests: automate packaging tests in GitLab CI obs-knot-dns-deve-jq0xxt/deployments/16 obs-knot-resolver-es11k1/deployments/15
Vladimír Čunát [Tue, 11 Jun 2019 12:13:52 +0000 (12:13 +0000)] 
Merge !824: distrotests: automate packaging tests in GitLab CI

6 years agogitlabci: make version mismatch more obvious in obs:* jobs
Tomas Krizek [Fri, 7 Jun 2019 09:38:21 +0000 (11:38 +0200)] 
gitlabci: make version mismatch more obvious in obs:* jobs

6 years agogitlabci: fail obs:build:all on mismatching versions
Tomas Krizek [Thu, 6 Jun 2019 14:24:23 +0000 (16:24 +0200)] 
gitlabci: fail obs:build:all on mismatching versions

6 years agogitlabci: fix incorrect result of obs:build:all
Tomas Krizek [Wed, 5 Jun 2019 14:22:36 +0000 (16:22 +0200)] 
gitlabci: fix incorrect result of obs:build:all

6 years agodistro/tests: remove fedora28, ubuntu1810 (eol)
Tomas Krizek [Wed, 5 Jun 2019 11:47:08 +0000 (13:47 +0200)] 
distro/tests: remove fedora28, ubuntu1810 (eol)