#include <haproxy/chunk.h>
#include <haproxy/errors.h>
#include <haproxy/global.h>
+#include <haproxy/openssl-compat.h>
#include <haproxy/version.h>
static int haterm_debug;
else if (*opt == 'd' && *(opt+1) == 'S') {
global.tune.options &= ~GTUNE_USE_SPLICE;
}
+# if defined(HA_USE_KTLS)
+ else if (*opt == 'd' && *(opt+1) == 'T') {
+ global.tune.options |= GTUNE_NO_KTLS;
+ }
+# endif
#endif
else if (*opt == 'd' && *(opt+1) == 'Z') {
global.tune.no_zero_copy_fwd |= NO_ZERO_COPY_FWD;
hbuf_appendf(&fbuf, "\tbind %s:%s shards by-thread ssl "
"alpn h3,h2,http1.1,http1.0"
" crt " HATERM_RSA_CERT_NAME
- " crt " HATERM_ECDSA_CERT_NAME "%s%s\n",
+ " crt " HATERM_ECDSA_CERT_NAME "%s%s%s\n",
ip, port2,
tcp_bind_opt ? " " : "",
- tcp_bind_opt ? tcp_bind_opt : "");
+ tcp_bind_opt ? tcp_bind_opt : "",
+# if defined(USE_LINUX_SPLICE) && defined(HA_USE_KTLS)
+ " ktls on"
+# else
+ "" /* no ktls */
+# endif
+ );
# if defined(USE_QUIC)
/* QUIC binding */
hbuf_appendf(&gbuf, "\ttune.memory.hot-size 3145728\n");
if (has_ssl)
hbuf_appendf(&gbuf, "\texpose-experimental-directives\n");
+#if defined(USE_LINUX_SPLICE) && defined(HA_USE_KTLS)
+ if (has_ssl)
+ hbuf_appendf(&gbuf, "\ttune.pipesize 262144\n");
+#endif
}
/* "global" section */