From: Lukáš Ondráček Date: Tue, 7 May 2024 09:03:12 +0000 (+0200) Subject: fixup! rrl: truncating answers when close to limit, dropping over limit X-Git-Tag: v6.0.9~1^2~53 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fenvironments%2Fdocs-develop-rrl-8r8r8r%2Fdeployments%2F4018;p=thirdparty%2Fknot-resolver.git fixup! rrl: truncating answers when close to limit, dropping over limit --- diff --git a/daemon/rrl/api.c b/daemon/rrl/api.c index 5aa729e61..4cccdbfde 100644 --- a/daemon/rrl/api.c +++ b/daemon/rrl/api.c @@ -183,14 +183,14 @@ bool kr_rrl_request_begin(struct kr_request *req) } if (!limited) return false; - knot_pkt_t *answer = kr_request_ensure_answer(req); - if (!answer) { // something bad; TODO: perhaps improve recovery from this - kr_assert(false); - return true; - } - // at this point the packet should be pretty clear - if (limited == 1) { + knot_pkt_t *answer = kr_request_ensure_answer(req); + if (!answer) { // something bad; TODO: perhaps improve recovery from this + kr_assert(false); + return true; + } + // at this point the packet should be pretty clear + // TC=1. knot_wire_set_tc(answer->wire); knot_wire_clear_ad(answer->wire); diff --git a/manager/knot_resolver_manager/datamodel/rate_limiting_schema.py b/manager/knot_resolver_manager/datamodel/rate_limiting_schema.py index f2b99f441..4733223fa 100644 --- a/manager/knot_resolver_manager/datamodel/rate_limiting_schema.py +++ b/manager/knot_resolver_manager/datamodel/rate_limiting_schema.py @@ -1,5 +1,5 @@ -from knot_resolver_manager.utils.modeling import ConfigSchema from knot_resolver_manager.datamodel.types import Percent +from knot_resolver_manager.utils.modeling import ConfigSchema class RateLimitingSchema(ConfigSchema): @@ -16,7 +16,7 @@ class RateLimitingSchema(ConfigSchema): capacity: int = 524288 rate_limit: int instant_limit: int = 50 - tc_limit_perc: Percent = Percent(90); + tc_limit_perc: Percent = Percent(90) def _validate(self) -> None: max_instant_limit = int(2**32 / 768 - 1)