summaryrefslogtreecommitdiff
path: root/lang/mono/files/patch-mono_io-layer_sockets.c
diff options
context:
space:
mode:
Diffstat (limited to 'lang/mono/files/patch-mono_io-layer_sockets.c')
-rw-r--r--lang/mono/files/patch-mono_io-layer_sockets.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/lang/mono/files/patch-mono_io-layer_sockets.c b/lang/mono/files/patch-mono_io-layer_sockets.c
new file mode 100644
index 000000000000..ba6112313325
--- /dev/null
+++ b/lang/mono/files/patch-mono_io-layer_sockets.c
@@ -0,0 +1,21 @@
+
+$FreeBSD$
+
+--- mono/io-layer/sockets.c.orig
++++ mono/io-layer/sockets.c
+@@ -1290,13 +1290,13 @@
+ keepalivetime /= 1000;
+ if (keepalivetime == 0 || rem >= 500)
+ keepalivetime++;
+- ret = setsockopt (fd, SOL_TCP, TCP_KEEPIDLE, &keepalivetime, sizeof (uint32_t));
++ ret = setsockopt (fd, 6, TCP_KEEPIDLE, &keepalivetime, sizeof (uint32_t));
+ if (ret == 0) {
+ rem = keepaliveinterval % 1000;
+ keepaliveinterval /= 1000;
+ if (keepaliveinterval == 0 || rem >= 500)
+ keepaliveinterval++;
+- ret = setsockopt (fd, SOL_TCP, TCP_KEEPINTVL, &keepaliveinterval, sizeof (uint32_t));
++ ret = setsockopt (fd, 6, TCP_KEEPINTVL, &keepaliveinterval, sizeof (uint32_t));
+ }
+ if (ret != 0) {
+ gint errnum = errno;