From 57b877147d726a743a038e7101b6d2e6922116c7 Mon Sep 17 00:00:00 2001 From: Marcin Deranek Date: Thu, 22 Dec 2016 16:21:08 +0100 Subject: [PATCH] BUG/MINOR: backend: nbsrv() should return 0 if backend is disabled According to nbsrv() documentation this fetcher should return "an integer value corresponding to the number of usable servers". In case backend is disabled none of servers is usable, so I believe fetcher should return 0. This patch should be backported to 1.7, 1.6, 1.5. --- src/backend.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/backend.c b/src/backend.c index 658212de4..3acb1daeb 100644 --- a/src/backend.c +++ b/src/backend.c @@ -1607,7 +1607,9 @@ smp_fetch_nbsrv(const struct arg *args, struct sample *smp, const char *kw, void smp->data.type = SMP_T_SINT; px = args->data.prx; - if (px->srv_act) + if (px->state == PR_STSTOPPED) + smp->data.u.sint = 0; + else if (px->srv_act) smp->data.u.sint = px->srv_act; else if (px->lbprm.fbck) smp->data.u.sint = 1;