]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Define new tmpl_is_list()
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Thu, 9 Feb 2023 18:37:27 +0000 (12:37 -0600)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Thu, 9 Feb 2023 18:37:27 +0000 (12:37 -0600)
Using the attr ref rather than TMPL_TYPE_LIST

src/lib/server/tmpl.h

index 534f190dcf80b67ae17d7502f5de11415b0a711f..f55fbc4bde734da4e55fd96e94fa982d2724f3be 100644 (file)
@@ -217,7 +217,6 @@ typedef enum tmpl_type_e {
 #define tmpl_is_data(vpt)                      (vpt->type == TMPL_TYPE_DATA)
 
 #define tmpl_is_attr(vpt)                      (vpt->type == TMPL_TYPE_ATTR)
-#define tmpl_is_list(vpt)                      (vpt->type == TMPL_TYPE_LIST)
 
 #define tmpl_is_xlat(vpt)                      (vpt->type == TMPL_TYPE_XLAT)
 #define tmpl_is_exec(vpt)                      (vpt->type == TMPL_TYPE_EXEC)
@@ -930,6 +929,12 @@ static inline char const *tmpl_list_name(fr_dict_attr_t const *list, char const
        return (list ? list->name : def);
 }
 
+static inline bool tmpl_is_list(tmpl_t const *vpt)
+{
+       if (!tmpl_is_attr(vpt)) return false;
+       return tmpl_attr_is_list_attr(tmpl_attr_tail(vpt));
+}
+
 /** @name Field accessors for #TMPL_TYPE_XLAT
  *
  * @{