]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
update truthiness for value-box groups
authorAlan T. DeKok <aland@freeradius.org>
Thu, 2 Jun 2022 13:03:22 +0000 (09:03 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Fri, 3 Jun 2022 11:15:59 +0000 (07:15 -0400)
empty groups are false.  non-empty groups are true.

Any other structural types cannot exist in a value-box group.

src/lib/unlang/xlat_expr.c

index 994a624166ae8eb2279dda3240404e9f7c77b2b0..42178d7554f4f1820f36620b7ae8e7eebb1a331e 100644 (file)
@@ -608,7 +608,10 @@ static bool truthiness(fr_value_box_t const *in)
 
        switch (in->type) {
        case FR_TYPE_NULL:
+               return false;
+
        case FR_TYPE_STRUCTURAL:
+               if (in->type == FR_TYPE_GROUP) return (fr_value_box_list_len(&in->vb_group) > 0);
                return false;
 
        case FR_TYPE_BOOL: