]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: config: don't emit a warning when global stats is incompletely configured
authorWilly Tarreau <w@1wt.eu>
Thu, 8 Feb 2018 08:55:09 +0000 (09:55 +0100)
committerWilly Tarreau <w@1wt.eu>
Thu, 8 Feb 2018 08:55:09 +0000 (09:55 +0100)
Martin Brauer reported an unexpected warning when some parts of the
global stats are defined but not the listening address, like below :

  global
    #stats socket run/admin.sock mode 660 level admin
    stats timeout 30s

Then haproxy complains :
  [WARNING] 334/150131 (23086) : config : frontend 'GLOBAL' has no
'bind' directive. Please declare it as a backend if this was intended.

This is because of the check for a bind-less frontend (the global section
creates a frontend for the stats). There's no clean fix for this one, so
here we're simply checking that the frontend is not the global stats one
before emitting the warning.

This patch should be backported to all stable versions.

src/cfgparse.c

index 2e10e3537ffef98e14dde8f09d374d66613ee853..17b1dd03608c88b0d3057aa00b248a2dbc0159cc 100644 (file)
@@ -7727,7 +7727,7 @@ int check_config_validity()
                        break;
                }
 
-               if ((curproxy->cap & PR_CAP_FE) && LIST_ISEMPTY(&curproxy->conf.listeners)) {
+               if (curproxy != global.stats_fe && (curproxy->cap & PR_CAP_FE) && LIST_ISEMPTY(&curproxy->conf.listeners)) {
                        ha_warning("config : %s '%s' has no 'bind' directive. Please declare it as a backend if this was intended.\n",
                                   proxy_type_str(curproxy), curproxy->id);
                        err_code |= ERR_WARN;