summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2016-10-22 22:40:39 +0100
committerJeremy Harris <jgh146exb@wizmail.org>2016-10-22 23:06:30 +0100
commit18f1b2f3f8829931ac096942ff2d1ef85ab5f891 (patch)
tree11d8822ec123f40c74ae2db54fd6b225e9ca6c5f
parentf175bef138f45415b9559ee47c7be342ecb95ae0 (diff)
TFO: Support compilation on systems which define TCP_FASTOPEN but not MSG_FASTOPEN
RHEL 7.0 does that, oddly
-rw-r--r--src/OS/os.h-Linux4
-rw-r--r--src/src/ip.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/src/OS/os.h-Linux b/src/OS/os.h-Linux
index 6400e798e..510865c66 100644
--- a/src/OS/os.h-Linux
+++ b/src/OS/os.h-Linux
@@ -69,5 +69,9 @@ then change the 0 to 1 in the next block. */
# define EXIM_HAVE_OPENAT
#endif
+#if defined(TCP_FASTOPEN) && !defined(MSG_FASTOPEN)
+# define MSG_FASTOPEN 0x20000000
+#endif
+
/* End */
diff --git a/src/src/ip.c b/src/src/ip.c
index b744f5d4c..a8230a149 100644
--- a/src/src/ip.c
+++ b/src/src/ip.c
@@ -224,7 +224,7 @@ callout_address = string_sprintf("[%s]:%d", address, port);
sigalrm_seen = FALSE;
if (timeout > 0) alarm(timeout);
-#ifdef TCP_FASTOPEN
+#if defined(TCP_FASTOPEN) && defined(MSG_FASTOPEN)
/* TCP Fast Open, if the system has a cookie from a previous call to
this peer, can send data in the SYN packet. The peer can send data
before it gets our ACK of its SYN,ACK - the latter is useful for