BUG/MINOR: spoe: Fix parsing of arguments in spoe-message section
The array of pointers passed to sample_parse_expr was not really an array but a pointer to pointer. So it can easily lead to a segfault during the configuration parsing.
This commit is contained in:
parent
3b386a318f
commit
b0b4238825
|
@ -2947,8 +2947,9 @@ cfg_parse_spoe_message(const char *file, int linenum, char **args, int kwm)
|
||||||
arg->name_len = delim - args[cur_arg];
|
arg->name_len = delim - args[cur_arg];
|
||||||
delim++;
|
delim++;
|
||||||
}
|
}
|
||||||
|
arg->expr = sample_parse_expr((char*[]){delim, NULL},
|
||||||
arg->expr = sample_parse_expr(&delim, &idx, file, linenum, &errmsg, &curproxy->conf.args);
|
&idx, file, linenum, &errmsg,
|
||||||
|
&curproxy->conf.args);
|
||||||
if (arg->expr == NULL) {
|
if (arg->expr == NULL) {
|
||||||
Alert("parsing [%s:%d] : '%s': %s.\n", file, linenum, args[0], errmsg);
|
Alert("parsing [%s:%d] : '%s': %s.\n", file, linenum, args[0], errmsg);
|
||||||
err_code |= ERR_ALERT | ERR_FATAL;
|
err_code |= ERR_ALERT | ERR_FATAL;
|
||||||
|
|
Loading…
Reference in New Issue