]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
DEFINEs in number-based protocols are always internal
authorAlan T. DeKok <aland@freeradius.org>
Fri, 17 Feb 2023 23:03:57 +0000 (18:03 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Fri, 17 Feb 2023 23:03:57 +0000 (18:03 -0500)
src/lib/util/dict_validate.c

index da8b83a79c376db2f107e0edaa6dba30ef40ae62..98671dfe88463374af622cd68d91cf48e0032280 100644 (file)
@@ -658,8 +658,11 @@ bool dict_attr_fields_valid(fr_dict_t *dict, fr_dict_attr_t const *parent,
                 *      If we don't care about the number, then this attribute is almost always
                 *      an internal one.  Unless it's a "name only" attribute for string-based
                 *      protocols.
+                *
+                *      We can use DEFINE in number-based protocol dictionaries, and the attributes will be
+                *      marked up as "internal".
                 */
-               flags->internal |= !flags->name_only;
+               flags->internal |= !flags->name_only | !dict->string_based;
 
                v = fr_dict_attr_by_name(NULL, fr_dict_root(dict), name);
                if (v) {