From: Alan T. DeKok Date: Mon, 4 Sep 2023 14:57:15 +0000 (-0400) Subject: attribute tmpls can only be bare words X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=54b71c92c3721fc4e09a1552b6845d1e378b7179;p=thirdparty%2Ffreeradius-server.git attribute tmpls can only be bare words --- diff --git a/src/lib/server/tmpl_tokenize.c b/src/lib/server/tmpl_tokenize.c index 93ad9d916e4..2de2b7b293c 100644 --- a/src/lib/server/tmpl_tokenize.c +++ b/src/lib/server/tmpl_tokenize.c @@ -3934,13 +3934,15 @@ int tmpl_resolve(tmpl_t *vpt, tmpl_res_rules_t const *tr_rules) } else if (tmpl_contains_attr(vpt)) { fr_type_t dst_type = tmpl_rules_cast(vpt); + fr_assert(vpt->quote == T_BARE_WORD); /* 'User-Name' or "User-Name" is not allowed. */ + ret = tmpl_attr_resolve(vpt, tr_rules); if (ret < 0) return ret; if (dst_type == tmpl_attr_tail_da(vpt)->type) { vpt->rules.cast = FR_TYPE_NULL; - } - + } + /* * Convert unresolved tmpls int enumvs, or failing that, string values. */