From: Alan T. DeKok Date: Mon, 15 Jun 2026 17:59:43 +0000 (-0400) Subject: don't reparse things which were already parsed X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cabc1af9ad0bd4a3bf89a00a6c6919cb7e1d1e64;p=thirdparty%2Ffreeradius-server.git don't reparse things which were already parsed --- diff --git a/src/lib/server/cf_parse.c b/src/lib/server/cf_parse.c index 7bec0bfd6fc..d8a53a830b3 100644 --- a/src/lib/server/cf_parse.c +++ b/src/lib/server/cf_parse.c @@ -550,6 +550,12 @@ static int CC_HINT(nonnull(4,5)) cf_pair_parse_internal(TALLOC_CTX *ctx, void *o required = fr_rule_required(rule); deprecated = fr_rule_deprecated(rule); + cp = cf_pair_find(cs, rule->name1); + if (cp && cp->item.parsed) { + return 0; + } + cp = NULL; + /* * If the item is multi-valued we allocate an array * to hold the multiple values.