]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
attribute tmpls can only be bare words
authorAlan T. DeKok <aland@freeradius.org>
Mon, 4 Sep 2023 14:57:15 +0000 (10:57 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Mon, 4 Sep 2023 14:57:15 +0000 (10:57 -0400)
src/lib/server/tmpl_tokenize.c

index 93ad9d916e48075f5ea9d7abbc61c6b2b5725c4f..2de2b7b293c502996a376288aa0fe2fd5704887c 100644 (file)
@@ -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.
         */