From 10ff0853d2569295cf04329b91ee152ed1524190 Mon Sep 17 00:00:00 2001 From: "Alan T. DeKok" Date: Sun, 29 Jun 2025 06:38:55 -0400 Subject: [PATCH] rearrange for syntax change --- src/lib/server/cf_file.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/lib/server/cf_file.c b/src/lib/server/cf_file.c index 4c50ea286d..98e1e4b703 100644 --- a/src/lib/server/cf_file.c +++ b/src/lib/server/cf_file.c @@ -2029,6 +2029,7 @@ static CONF_ITEM *process_switch(cf_stack_t *stack) { size_t match_len; fr_type_t type = FR_TYPE_NULL; + fr_token_t name2_quote = T_BARE_WORD; CONF_SECTION *css; char const *ptr = stack->ptr; cf_stack_frame_t *frame = &stack->frame[stack->depth]; @@ -2067,6 +2068,14 @@ static CONF_ITEM *process_switch(cf_stack_t *stack) fr_skip_whitespace(ptr); } + /* + * Get the argument to the switch statement + */ + if (cf_get_token(parent, &ptr, &name2_quote, stack->buff[1], stack->bufsize, + frame->filename, frame->lineno) < 0) { + return NULL; + } + css = cf_section_alloc(parent, parent, "switch", NULL); if (!css) { ERROR("%s[%d]: Failed allocating memory for section", @@ -2076,18 +2085,10 @@ static CONF_ITEM *process_switch(cf_stack_t *stack) cf_filename_set(css, frame->filename); cf_lineno_set(css, frame->lineno); - css->name2_quote = T_BARE_WORD; + css->name2_quote = name2_quote; css->unlang = CF_UNLANG_ALLOW; css->allow_locals = true; - /* - * Get the argument to the switch statement - */ - if (cf_get_token(parent, &ptr, &css->name2_quote, stack->buff[1], stack->bufsize, - frame->filename, frame->lineno) < 0) { - return NULL; - } - fr_skip_whitespace(ptr); if (*ptr != '{') { -- 2.47.3