From: Vladimír Čunát Date: Tue, 6 Feb 2024 07:46:34 +0000 (+0100) Subject: compatibility with libknot's master (3.4 WIP) X-Git-Tag: v5.7.1~4^2 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=refs%2Fenvironments%2Fdocs-develop-knot-chb1lt%2Fdeployments%2F3165;p=thirdparty%2Fknot-resolver.git compatibility with libknot's master (3.4 WIP) I'm adding this as a function, as in knot-resolver 6.x we have one more place where it is used, and I find this more readable. --- diff --git a/lib/layer/validate.c b/lib/layer/validate.c index 93f1d4fc6..17f907400 100644 --- a/lib/layer/validate.c +++ b/lib/layer/validate.c @@ -676,7 +676,7 @@ static int rrsig_not_found(const kr_layer_t * const ctx, const knot_pkt_t * cons } /* Add one extra label to cur_top, i.e. descend one level below current zone cut */ const knot_dname_t * const cut_next = rr->owner + - knot_dname_prefixlen(rr->owner, next_depth - 1, NULL); + kr_dname_prefixlen(rr->owner, next_depth - 1); /* Spawn that DS sub-query. */ struct kr_query * const next = kr_rplan_push(&req->rplan, qry, cut_next, diff --git a/lib/utils.h b/lib/utils.h index 1f30e9843..fab13fe82 100644 --- a/lib/utils.h +++ b/lib/utils.h @@ -606,3 +606,14 @@ KR_EXPORT long long kr_fssize(const char *path); /** Simply return de->dname. (useful from Lua) */ KR_EXPORT const char * kr_dirent_name(const struct dirent *de); + +/* trivial libknot versions compatibility */ +static inline size_t kr_dname_prefixlen(const uint8_t *name, unsigned nlabels) +{ + return knot_dname_prefixlen(name, nlabels + #if KNOT_VERSION_HEX < 0x030400 + , NULL + #endif + ); +} +