]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
compile-time error for things which aren't supported
authorAlan T. DeKok <aland@freeradius.org>
Fri, 18 Nov 2022 13:16:52 +0000 (08:16 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Mon, 21 Nov 2022 15:51:06 +0000 (10:51 -0500)
src/lib/unlang/compile.c

index 0961cbf7aca4460e186fc4255e18a66cd40dfcb1..43f25b10c70b842d8305495aebcecb6b9c82d8f5 100644 (file)
@@ -1543,6 +1543,11 @@ static unlang_t *compile_update_to_edit(unlang_t *parent, unlang_compile_t *unla
                        rcode = edit_section_alloc(group, &child, list, T_OP_SUB_EQ);
                        if (rcode < 0) break;
 
+                       if (strchr(attr, '[') != 0) {
+                               cf_log_err(cp, "Cannot do filtering with array indexes");
+                               return NULL;
+                       }
+
                        snprintf(buffer, sizeof(buffer), "&%s", attr);
                        rcode = edit_pair_alloc(child, cp, buffer, op, value);
                        break;