]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
parse "&=" as an operator for sections
authorAlan T. DeKok <aland@freeradius.org>
Wed, 15 Dec 2021 14:38:34 +0000 (09:38 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Thu, 16 Dec 2021 19:25:23 +0000 (14:25 -0500)
src/lib/server/cf_file.c

index 10f6af2b006af120cb97907f33438762f4cae02e..7335f79555d6a88957050a0d7320f57ede5a7cef 100644 (file)
@@ -1796,7 +1796,7 @@ static int parse_input(cf_stack_t *stack)
         *      Which seems bad.  But the old parser allowed
         *      it, so oh well.
         */
-       if ((*ptr == '"') || (*ptr == '`') || (*ptr == '\'') || (*ptr == '&') ||
+       if ((*ptr == '"') || (*ptr == '`') || (*ptr == '\'') || ((*ptr == '&') && (ptr[1] != '=')) ||
            ((*((uint8_t const *) ptr) & 0x80) != 0) || isalpha((int) *ptr)) {
                if (cf_get_token(parent, &ptr, &name2_token, buff[2], stack->bufsize,
                                 frame->filename, frame->lineno) < 0) {