From e3c419296211f08209300b9a06dc17467a6cb315 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. --- src/server.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/server.c b/src/server.c index d1aa51dc8..def012728 100644 --- a/src/server.c +++ b/src/server.c @@ -4233,7 +4233,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)