- Dec 19, 2016
-
-
Ondřej Surý authored
-
Motivation: maintaining these by hand in kres.lua is tricky, as just inserting or reordering the structures can do anything and isn't detected in general. For example, `rr_array_t::at` has always "missed a star". A couple libknot structure fields have apparently changed name since the old definitions were written; in most cases I renamed them in *.lua. The file daemon/lua/kres-gen.lua will be regenerated only if explicitly deleted. That requires building with debug symbols and gdb on $PATH.
-
- Dec 12, 2016
-
-
Vladimír Čunát authored
Now that we renamed "debug" to "verbose", the old name didn't seem very suitable anymore; this new identifier haven't got to master yet.
-
Ondřej Surý authored
Split NDEBUG to NDEBUG (asserts) and NOVERBOSELOG (verbose logging); rename all related symbols to use VERBOSE instead of DEBUG
-
- Dec 07, 2016
-
-
Vladimír Čunát authored
... but don't raise any kind of error. The lua function `verbose()` behaved reasonably already. It doesn't warn, but docs for the function do mention `NLOGDEBUG`.
-
Vladimír Čunát authored
In particular, don't require to call an externally defined function to find if in --verbose mode or not. Now it's just an extern bool. I'm confident the performance impact of not using -DNLOGDEBUG should be negligible now. This comes with a small incompatible API+ABI change, but that shouldn't matter as we've had a couple of those already since the last release.
-
- Dec 02, 2016
-
-
Vladimír Čunát authored
Fixes https://github.com/CZ-NIC/knot-resolver/issues/35.
-
- Nov 30, 2016
-
-
Vladimír Čunát authored
This reverts commit 64f80706. TL;DR: it brought almost no benefits AFAIK and potential for problems. The "portable bytecode" produced by luajit isn't compatible when (lib)luajit version changes or when some build-time configuration of it changes. If you mix these up, kresd fails to start.
-
- Nov 28, 2016
-
-
Vladimír Čunát authored
-
- Nov 24, 2016
-
-
Vladimír Čunát authored
... and avoid returning a negative number.
-
- Nov 14, 2016
-
-
Vladimír Čunát authored
It seems a bit cleaner, though impact on size and load speed should not be noticeable. We simply install most of the lua code, as before, and I assume that we *do* want to keep that visibility, at least by default. Suggested on !57.
-
Ondřej Surý authored
-
- Nov 13, 2016
-
-
Daniel Kahn Gillmor authored
-
Ondřej Surý authored
-
- Nov 12, 2016
-
-
Ondřej Surý authored
-
- Nov 10, 2016
-
-
- Nov 08, 2016
-
-
Vladimír Čunát authored
Some structures have changed but lua was still using the old ABI. I think no our lua code used the fields misplaced due to this, except an example in documentation. I didn't check much of the ABI in there. I wish I knew some (half-)automatic way how to do that.
-
Vladimír Čunát authored
- The API and ABI for modules changes slightly (details below). KR_MODULE_API is bumped to avoid loading incompatible code. We have bumped libkres ABIVER since the last release 1.1.1, so leaving that one intact. - Make KR_STATE_YIELD not reuse 0 value anymore. It's easy to e.g. return kr_ok() by mistake. - struct kr_layer_t: * ::mm was unused, uninitialized, etc. * Make ::state an int, as it was everywhere else. * void *data was ugly and always containing struct kr_request * - struct kr_layer_api: * Drop the void* parameter from ::begin, as it was only used for the request which is available as ctx->req anyway (formerly ctx->data). * Drop ::fail. It wasn't even called. Modules can watch for KR_STATE_FAIL in ::finish. - Document the apparent meaning of the layer interface, deduced mainly from the way it's used in the code. Caveats: * enum knot_layer_state handling seems to assume that it holds exactly one of the possibilities at a time. The cookie module does NOT follow that (intentionally), apparently depending on the exact implementation of the handling at that moment. It feels fragile. * I was unable to deduce a plausible description of when ::reset is called. It's practically unused in modules, too.
-
Vladimír Čunát authored
It causes lots of line changes, but it would be confusing to keep the current state over long term.
-
- Nov 02, 2016
-
-
Vladimír Čunát authored
-
Vladimír Čunát authored
The implementation is now similar to set-associative caches that x86 CPU use. Also the API is changed a bit, leading to slight simplification of our use patterns.
-
- Oct 24, 2016
-
-
Vladimír Čunát authored
Fixes https://gitlab.labs.nic.cz/knot/resolver/issues/93. API of a KR_EXPORT function is changed, so ABIVER is bumped.
-
- Oct 21, 2016
-
-
-
Vladimír Čunát authored
-
Vladimír Čunát authored
This saves a few kilobytes in the executable. Also, the name XXD seemed no longer suitable, as it does lua-specific cleaning.
-
- Oct 20, 2016
-
-
Ondřej Surý authored
and set libknot_SONAME and libzscanner_SONAME as lua literals. Remove now obsolete libpath lua function - use find_soname from platform.mk to define <arg>_SONAME, add lua_pushliteral to daemon/engine.c and add -D to daemon/daemon.mk for any new library loaded from Lua.
-
Vladimír Čunát authored
-
- Oct 19, 2016
-
-
Vladimír Čunát authored
The cookie module could segfault due to the `opt` pointer not being initialized when no EDNS was sent in the incoming request.
-
- Oct 18, 2016
-
-
Štěpán Balážik authored
-
- Oct 11, 2016
-
-
Grigorii Demidov authored
-
- Oct 07, 2016
-
-
Michal Karm Babáček authored
Based on [issue 28](https://github.com/CZ-NIC/knot-resolver/issues/28), we were able to boost kresd performance running in a Docker container on DockerCloud by nearly 100% by binding to a single interface:ipaddress. It might be handy for other users to know.
-
- Sep 30, 2016
-
-
Vladimír Čunát authored
-
- Sep 27, 2016
-
-
Marek Vavruša authored
-
- Sep 08, 2016
-
-
Ondřej Surý authored
-
- Sep 07, 2016
-
-
Vladimír Čunát authored
As noted in #94, it feels natural to call it like: ``net.listen({net.lo, '192.168.1.1'})`` Also, minor fixes were done in that function and corresponding docs.
-
- Sep 05, 2016
-
-
Marek Vavruša authored
if the score is known (and not glued), the retry rate is <avg(rtt), 250ms> if the NS score is unknown or worse than 250ms, it is always retried at this rate all other servers in the list use default rate
-
- Aug 25, 2016
-
-
Marek Vavruša authored
RTT tracking for all targets is also supported, but no loadbalancing is done based on that yet
-
Vladimír Čunát authored
-
Vladimír Čunát authored
Consequently, there's no use for worker_reserve in the header.
-
Vladimír Čunát authored
Also break overlong lines.
-