aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authoreihrul <eihrul>2012-02-18 10:31:56 +0000
committereihrul <eihrul>2012-02-18 10:31:56 +0000
commit5018dcf2071de5b483d3f452730ee44b0a3248a5 (patch)
tree729d62f46ea4739ac097e39fad158896d581fe5a
parent78222dc79e720686028f59bdc8b29b10dbc18cfa (diff)
downloadenet-5018dcf2071de5b483d3f452730ee44b0a3248a5.tar.gz
enet-5018dcf2071de5b483d3f452730ee44b0a3248a5.zip
added support for setting tcp send/receive timeouts
-rw-r--r--include/enet/enet.h4
-rw-r--r--unix.c8
-rw-r--r--win32.c8
3 files changed, 19 insertions, 1 deletions
diff --git a/include/enet/enet.h b/include/enet/enet.h
index d73655f..14f9382 100644
--- a/include/enet/enet.h
+++ b/include/enet/enet.h
@@ -50,7 +50,9 @@ typedef enum _ENetSocketOption
ENET_SOCKOPT_BROADCAST = 2,
ENET_SOCKOPT_RCVBUF = 3,
ENET_SOCKOPT_SNDBUF = 4,
- ENET_SOCKOPT_REUSEADDR = 5
+ ENET_SOCKOPT_REUSEADDR = 5,
+ ENET_SOCKOPT_RCVTIMEO = 6,
+ ENET_SOCKOPT_SNDTIMEO = 7
} ENetSocketOption;
enum
diff --git a/unix.c b/unix.c
index 6971541..a225b57 100644
--- a/unix.c
+++ b/unix.c
@@ -219,6 +219,14 @@ enet_socket_set_option (ENetSocket socket, ENetSocketOption option, int value)
result = setsockopt (socket, SOL_SOCKET, SO_SNDBUF, (char *) & value, sizeof (int));
break;
+ case ENET_SOCKOPT_RCVTIMEO:
+ result = setsockopt (socket, SOL_SOCKET, SO_RCVTIMEO, (char *) & value, sizeof (int));
+ break;
+
+ case ENET_SOCKOPT_SNDTIMEO:
+ result = setsockopt (socket, SOL_SOCKET, SO_SNDTIMEO, (char *) & value, sizeof (int));
+ break;
+
default:
break;
}
diff --git a/win32.c b/win32.c
index 7b23cdd..0a213e7 100644
--- a/win32.c
+++ b/win32.c
@@ -166,6 +166,14 @@ enet_socket_set_option (ENetSocket socket, ENetSocketOption option, int value)
result = setsockopt (socket, SOL_SOCKET, SO_SNDBUF, (char *) & value, sizeof (int));
break;
+ case ENET_SOCKOPT_RCVTIMEO:
+ result = setsockopt (socket, SOL_SOCKET, SO_RCVTIMEO, (char *) & value, sizeof (int));
+ break;
+
+ case ENET_SOCKOPT_SNDTIMEO:
+ result = setsockopt (socket, SOL_SOCKET, SO_SNDTIMEO, (char *) & value, sizeof (int));
+ break;
+
default:
break;
}