BUG/MINOR: tcpcheck: Disable QUICKACK for default tcp-check (with no rule)
The commit 871dd8211 ("BUG/MINOR: tcpcheck: Disable QUICKACK only if data
should be sent after connect") introduced a regression. It removes the test
on the next rule to be able to disable TCP_QUICKACK when only a connect is
performed (so no next rule).
This patch must be backported as far as 2.2.
(cherry picked from commit f611248d8cc00054c63e831e0dce9c8ad822a133)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 90d0bda5d5a52fb822bd98cef6e24345080966d2)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit d7b542b3e79f0a1c79f3c868adfb00ed22f378ea)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/tcpcheck.c b/src/tcpcheck.c
index d79ad47..56d2b31 100644
--- a/src/tcpcheck.c
+++ b/src/tcpcheck.c
@@ -1190,8 +1190,10 @@
if (proto && proto->connect) {
int flags = 0;
+ if (!next)
+ flags |= CONNECT_DELACK_ALWAYS;
if (connect->options & TCPCHK_OPT_HAS_DATA)
- flags = (CONNECT_HAS_DATA|CONNECT_DELACK_ALWAYS);
+ flags |= (CONNECT_HAS_DATA|CONNECT_DELACK_ALWAYS);
status = proto->connect(conn, flags);
}