BUG/MINOR: tcpcheck: Report a L7OK if the last evaluated rule is a send rule
When all rules of a tcpcheck ruleset are successfully evaluated, the right
check status must always be reported. It is true if the last evaluated rule
is an expect or a connect rule. But not if it is a send rule. In this
situation, nothing more is done until the check timeout expiration and a
L7TOUT is reported instead of a L7OK.
Now, by default, when all rules were successfully evaluated, a L7OK is
reported. When the last evaluated rule is an expect or a connect, the
behavior remains unchanged.
This patch should fix the issue #1027. It must be backported as far as 2.2.
diff --git a/src/tcpcheck.c b/src/tcpcheck.c
index 0570b81..40c7450 100644
--- a/src/tcpcheck.c
+++ b/src/tcpcheck.c
@@ -2120,6 +2120,8 @@
#endif
set_server_check_status(check, status, msg);
}
+ else
+ set_server_check_status(check, HCHK_STATUS_L7OKD, "(tcp-check)");
}
else
set_server_check_status(check, HCHK_STATUS_L7OKD, "(tcp-check)");