BUG/MINOR: stats: fix compare of no-maint url suffix
Only the first 3 characters are compared for ';no-maint' suffix in
http_handle_stats. Fix it by doing a full match over the entire suffix.
As a side effect, the ';norefresh' suffix matched the inaccurate
comparison, so the maintenance servers were always hidden on the stats
page in this case.
no-maint suffix is present since commit
3e320367014c742814ba494594cdb8340b1161f1
MINOR: stats: also support a "no-maint" show stat modifier
It should be backported up to 2.3.
This fixes github issue #1147.
(cherry picked from commit 91e55ea3f3f6277d91c0fd85ea924ea0e444f7f3)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/http_ana.c b/src/http_ana.c
index 938ae2d..d4c8f41 100644
--- a/src/http_ana.c
+++ b/src/http_ana.c
@@ -4045,7 +4045,10 @@
appctx->ctx.stats.flags |= STAT_HIDE_DOWN;
break;
}
- if (memcmp(h, ";no-maint", 3) == 0) {
+ }
+
+ for (h = lookup; h <= end - 9; h++) {
+ if (memcmp(h, ";no-maint", 9) == 0) {
appctx->ctx.stats.flags |= STAT_HIDE_MAINT;
break;
}