summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/fhandler_socket_unix.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/winsup/cygwin/fhandler_socket_unix.cc b/winsup/cygwin/fhandler_socket_unix.cc
index d27cdad73..afd57fc42 100644
--- a/winsup/cygwin/fhandler_socket_unix.cc
+++ b/winsup/cygwin/fhandler_socket_unix.cc
@@ -154,6 +154,9 @@ GUID __cygwin_socket_guid = {
_s == STATUS_BUFFER_OVERFLOW \
|| _s == STATUS_MORE_PROCESSING_REQUIRED; })
+/* Default timeout value of connect: 20 secs, as on Linux. */
+#define AF_UNIX_CONNECT_TIMEOUT (-20 * NS100PERSEC)
+
sun_name_t::sun_name_t ()
{
un_len = sizeof (sa_family_t);
@@ -619,7 +622,7 @@ fhandler_socket_unix::recv_peer_name ()
DWORD ret;
LARGE_INTEGER timeout;
- timeout.QuadPart = -20 * NS100PERSEC; /* 20 secs */
+ timeout.QuadPart = AF_UNIX_CONNECT_TIMEOUT;
ret = cygwait (evt, &timeout, cw_sig_eintr);
switch (ret)
{
@@ -1062,7 +1065,7 @@ fhandler_socket_unix::wait_pipe_thread (PUNICODE_STRING pipe_name)
goto out;
pwbuf_size = offsetof (FILE_PIPE_WAIT_FOR_BUFFER, Name) + pipe_name->Length;
pwbuf = (PFILE_PIPE_WAIT_FOR_BUFFER) alloca (pwbuf_size);
- pwbuf->Timeout.QuadPart = -20 * NS100PERSEC; /* 20 secs */
+ pwbuf->Timeout.QuadPart = AF_UNIX_CONNECT_TIMEOUT;
pwbuf->NameLength = pipe_name->Length;
pwbuf->TimeoutSpecified = TRUE;
memcpy (pwbuf->Name, pipe_name->Buffer, pipe_name->Length);