MINOR: log-format: check number of arguments in cfgparse.c
Exit with error if there is a second argument in the 'log-format' and
'unique-id-format' options. It is convenient when we forgot to escape
spaces.
diff --git a/src/cfgparse.c b/src/cfgparse.c
index c601cbc..6a4e0bb 100644
--- a/src/cfgparse.c
+++ b/src/cfgparse.c
@@ -4702,6 +4702,11 @@
err_code |= ERR_ALERT | ERR_FATAL;
goto out;
}
+ if (*(args[2])) {
+ Alert("parsing [%s:%d] : %s expects only one argument, don't forget to escape spaces!\n", file, linenum, args[0]);
+ err_code |= ERR_ALERT | ERR_FATAL;
+ goto out;
+ }
free(curproxy->uniqueid_format_string);
curproxy->uniqueid_format_string = strdup(args[1]);
}
@@ -4722,6 +4727,11 @@
err_code |= ERR_ALERT | ERR_FATAL;
goto out;
}
+ if (*(args[2])) {
+ Alert("parsing [%s:%d] : %s expects only one argument, don't forget to escape spaces!\n", file, linenum, args[0]);
+ err_code |= ERR_ALERT | ERR_FATAL;
+ goto out;
+ }
if (curproxy->logformat_string != default_http_log_format &&
curproxy->logformat_string != default_tcp_log_format &&