summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/src/smtp_in.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/src/smtp_in.c b/src/src/smtp_in.c
index a579b8faf..2e3c9b9ec 100644
--- a/src/src/smtp_in.c
+++ b/src/src/smtp_in.c
@@ -2408,12 +2408,15 @@ struct tcp_info tinfo;
socklen_t len = sizeof(tinfo);
if (getsockopt(fileno(smtp_out), IPPROTO_TCP, TCP_INFO, &tinfo, &len) == 0)
+#ifdef TCPI_OPT_SYN_DATA /* FreeBSD 11 does not seem to have this yet */
if (tinfo.tcpi_options & TCPI_OPT_SYN_DATA)
{
DEBUG(D_receive) debug_printf("TCP_FASTOPEN mode connection (ACKd data-on-SYN)\n");
f.tcp_in_fastopen_data = f.tcp_in_fastopen = TRUE;
}
- else if (tinfo.tcpi_state == TCP_SYN_RECV)
+ else
+#endif
+ if (tinfo.tcpi_state == TCP_SYN_RECV)
{
DEBUG(D_receive) debug_printf("TCP_FASTOPEN mode connection (state TCP_SYN_RECV)\n");
f.tcp_in_fastopen = TRUE;