From 96a4ff137c88294b1d12bcb0d76f18bc1f2b41a6 Mon Sep 17 00:00:00 2001 From: Amaury Denoyelle Date: Wed, 6 Jan 2021 14:28:50 +0100 Subject: [PATCH] BUG/MINOR: srv: do not init address if backend is disabled Do not proceed on init_addr if the backend of the server is marked as disabled. When marked as disabled, the server is not fully initialized and some operation must be avoided to prevent segfault. It is correct because there is no way to activate a disabled backend. This fixes the github issue #1031. This should be backported to 2.2. (cherry picked from commit e3c419296211f08209300b9a06dc17467a6cb315) Signed-off-by: Christopher Faulet --- src/server.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/server.c b/src/server.c index 81f4e46..da1059c 100644 --- a/src/server.c +++ b/src/server.c @@ -4174,7 +4174,7 @@ int srv_init_addr(void) struct server *srv; /* servers are in backend only */ - if (!(curproxy->cap & PR_CAP_BE)) + if (!(curproxy->cap & PR_CAP_BE) || curproxy->disabled) goto srv_init_addr_next; for (srv = curproxy->srv; srv; srv = srv->next) -- 1.7.10.4