summaryrefslogtreecommitdiffstats
path: root/stream/tcp.c
diff options
context:
space:
mode:
authorivo <ivo@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-03-01 14:57:44 +0000
committerivo <ivo@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-03-01 14:57:44 +0000
commit2477fdf577e347bd5415f62f6dc235a60657a7e5 (patch)
tree776b333f506bd6278c1ff545e566bef770995505 /stream/tcp.c
parent3462da0b5c8ff8dc4984769bf67aef6afd871cb1 (diff)
downloadmpv-2477fdf577e347bd5415f62f6dc235a60657a7e5.tar.bz2
mpv-2477fdf577e347bd5415f62f6dc235a60657a7e5.tar.xz
winsocks expects an int in milliseconds instead of struct timeval to set
the timeout of a socket patch by Zuxy Meng, zuxy dot meng ... gmailcom git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22397 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'stream/tcp.c')
-rw-r--r--stream/tcp.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/stream/tcp.c b/stream/tcp.c
index ad7e1d9398..297f6901fe 100644
--- a/stream/tcp.c
+++ b/stream/tcp.c
@@ -77,6 +77,9 @@ connect2Server_with_af(char *host, int port, int af,int verb) {
#ifdef HAVE_WINSOCK2
u_long val;
+ int to;
+#else
+ struct timeval to;
#endif
socket_server_fd = socket(af, SOCK_STREAM, 0);
@@ -88,10 +91,15 @@ connect2Server_with_af(char *host, int port, int af,int verb) {
}
#if defined(SO_RCVTIMEO) && defined(SO_SNDTIMEO)
- tv.tv_sec = 10;
- tv.tv_usec = 0;
- setsockopt(socket_server_fd, SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv));
- setsockopt(socket_server_fd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
+#ifdef HAVE_WINSOCK2
+ /* timeout in milliseconds */
+ to = 10 * 1000;
+#else
+ to.tv_sec = 10;
+ to.tv_usec = 0;
+#endif
+ setsockopt(socket_server_fd, SOL_SOCKET, SO_RCVTIMEO, &to, sizeof(to));
+ setsockopt(socket_server_fd, SOL_SOCKET, SO_SNDTIMEO, &to, sizeof(to));
#endif
switch (af) {