forked from pool/haproxy
26c4149063
- Backport patches from upstream: - BUG/MINOR: http: remove stupid HTTP_METH_NONE entry - BUG/MAJOR: http: don't call http_send_name_header() after an error - Add 0014-BUG-MINOR-http-remove-stupid-HTTP_METH_NONE-entry.patch - Add 0015-BUG-MAJOR-http-don-t-call-http_send_name_header-afte.patch - Backport patches from upstream: - BUG/MINOR: log: missing some ARGC_* entries in fmt_directives() - DOC: usesrc root privileges requirements - BUILD: ssl: Allow building against libssl without SSLv3. - DOC/MINOR: fix OpenBSD versions where haproxy works - BUG/MINOR: http/sample: gmtime/localtime can fail - DOC: typo in 'redirect', 302 code meaning - DOC: mention that %ms is left-padded with zeroes. - CLEANUP: .gitignore: ignore more test files - CLEANUP: .gitignore: finally ignore everything but what is known. - MEDIUM: config: emit a warning on a frontend without listener - BUG/MEDIUM: counters: ensure that src_{inc,clr}_gpc0 creates a missing entry - DOC: ssl: missing LF - DOC: fix example of http-request using ssl_fc_session_id - Add 0001-BUG-MINOR-log-missing-some-ARGC_-entries-in-fmt_dire.patch - Add 0002-DOC-usesrc-root-privileges-requirements.patch - Add 0003-BUILD-ssl-Allow-building-against-libssl-without-SSLv.patch - Add 0004-DOC-MINOR-fix-OpenBSD-versions-where-haproxy-works.patch - Add 0005-BUG-MINOR-http-sample-gmtime-localtime-can-fail.patch - Add 0006-DOC-typo-in-redirect-302-code-meaning.patch - Add 0007-DOC-mention-that-ms-is-left-padded-with-zeroes.patch - Add 0008-CLEANUP-.gitignore-ignore-more-test-files.patch - Add 0009-CLEANUP-.gitignore-finally-ignore-everything-but-wha.patch - Add 0010-MEDIUM-config-emit-a-warning-on-a-frontend-without-l.patch (forwarded request 329653 from KGronlund) OBS-URL: https://build.opensuse.org/request/show/329654 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/haproxy?expand=0&rev=32
47 lines
1.7 KiB
Diff
47 lines
1.7 KiB
Diff
From c7c1e55f09839727ba7defd37347fc500dabb202 Mon Sep 17 00:00:00 2001
|
|
From: Willy Tarreau <w@1wt.eu>
|
|
Date: Tue, 11 Aug 2015 11:36:45 +0200
|
|
Subject: [PATCH 10/11] MEDIUM: config: emit a warning on a frontend without
|
|
listener
|
|
|
|
Commit c6678e2 ("MEDIUM: config: authorize frontend and listen without bind")
|
|
completely removed the test for bind lines in frontends in order to make it
|
|
easier for automated tools to generate configs (eg: replacing a bind with
|
|
another one passing via a temporary config without any bind line). The
|
|
problem is that some common mistakes are totally hidden now. For example,
|
|
this apparently valid entry is silently ignored :
|
|
|
|
listen 1.2.3.4:8000
|
|
server s1 127.0.0.1:8000
|
|
|
|
Hint: 1.2.3.4:8000 is mistakenly the proxy name here.
|
|
|
|
Thus instead we now emit a warning to indicate that a frontend was found
|
|
with no listener. This should be backported to 1.5 to help spot abnormal
|
|
configurations.
|
|
(cherry picked from commit f82d1ca2d7ec83804d6b54e61a35747ad2f85188)
|
|
---
|
|
src/cfgparse.c | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
diff --git a/src/cfgparse.c b/src/cfgparse.c
|
|
index 2a5f178..d67edc5 100644
|
|
--- a/src/cfgparse.c
|
|
+++ b/src/cfgparse.c
|
|
@@ -6193,6 +6193,12 @@ int check_config_validity()
|
|
break;
|
|
}
|
|
|
|
+ if ((curproxy->cap & PR_CAP_FE) && LIST_ISEMPTY(&curproxy->conf.listeners)) {
|
|
+ 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;
|
|
+ }
|
|
+
|
|
if ((curproxy->cap & PR_CAP_BE) && (curproxy->mode != PR_MODE_HEALTH)) {
|
|
if (curproxy->lbprm.algo & BE_LB_KIND) {
|
|
if (curproxy->options & PR_O_TRANSP) {
|
|
--
|
|
2.1.4
|
|
|