MINOR: config: pass the file and line to config keyword parsers

This will be needed when we need to create bind config settings.
This commit is contained in:
Willy Tarreau 2012-09-18 20:02:48 +02:00
parent 51fb7651c4
commit 28a47d6408
5 changed files with 14 additions and 7 deletions

View File

@ -43,6 +43,8 @@ struct cfg_keyword {
int section_type, /* current section CFG_{GLOBAL|LISTEN} */
struct proxy *curpx, /* current proxy (NULL in GLOBAL) */
struct proxy *defpx, /* default proxy (NULL in GLOBAL) */
const char *file, /* config file name */
int line, /* config file line number */
char **err); /* error or warning message output pointer */
};

View File

@ -1069,7 +1069,7 @@ int cfg_parse_global(const char *file, int linenum, char **args, int kwm)
/* prepare error message just in case */
snprintf(trash, trashlen,
"error near '%s' in '%s' section", args[0], "global");
rc = kwl->kw[index].parse(args, CFG_GLOBAL, NULL, NULL, &errmsg);
rc = kwl->kw[index].parse(args, CFG_GLOBAL, NULL, NULL, file, linenum, &errmsg);
if (rc < 0) {
Alert("parsing [%s:%d] : %s\n", file, linenum, errmsg);
err_code |= ERR_ALERT | ERR_FATAL;
@ -5184,7 +5184,7 @@ stats_error_parsing:
/* prepare error message just in case */
snprintf(trash, trashlen,
"error near '%s' in %s section", args[0], cursection);
rc = kwl->kw[index].parse(args, CFG_LISTEN, curproxy, &defproxy, &errmsg);
rc = kwl->kw[index].parse(args, CFG_LISTEN, curproxy, &defproxy, file, linenum, &errmsg);
if (rc < 0) {
Alert("parsing [%s:%d] : %s\n", file, linenum, errmsg);
err_code |= ERR_ALERT | ERR_FATAL;

View File

@ -177,7 +177,8 @@ static struct proxy *alloc_stats_fe(const char *name)
* the first word after "stats".
*/
static int stats_parse_global(char **args, int section_type, struct proxy *curpx,
struct proxy *defpx, char **err)
struct proxy *defpx, const char *file, int line,
char **err)
{
if (!strcmp(args[1], "socket")) {
struct sockaddr_un *su;

View File

@ -1167,7 +1167,8 @@ static int tcp_parse_request_rule(char **args, int arg, int section_type,
* keyword.
*/
static int tcp_parse_tcp_rep(char **args, int section_type, struct proxy *curpx,
struct proxy *defpx, char **err)
struct proxy *defpx, const char *file, int line,
char **err)
{
const char *ptr = NULL;
unsigned int val;
@ -1248,7 +1249,8 @@ static int tcp_parse_tcp_rep(char **args, int section_type, struct proxy *curpx,
* keyword.
*/
static int tcp_parse_tcp_req(char **args, int section_type, struct proxy *curpx,
struct proxy *defpx, char **err)
struct proxy *defpx, const char *file, int line,
char **err)
{
const char *ptr = NULL;
unsigned int val;

View File

@ -133,7 +133,8 @@ int get_backend_server(const char *bk_name, const char *sv_name,
* "{cli|srv|con}timeout" in args[0].
*/
static int proxy_parse_timeout(char **args, int section, struct proxy *proxy,
struct proxy *defpx, char **err)
struct proxy *defpx, const char *file, int line,
char **err)
{
unsigned timeout;
int retval, cap;
@ -229,7 +230,8 @@ static int proxy_parse_timeout(char **args, int section, struct proxy *proxy,
* parsed, and <defpx> to the default proxy or NULL.
*/
static int proxy_parse_rate_limit(char **args, int section, struct proxy *proxy,
struct proxy *defpx, char **err)
struct proxy *defpx, const char *file, int line,
char **err)
{
int retval, cap;
char *res;