Commit 8e9c52e4 authored by Tom Lane's avatar Tom Lane

EINTR return from connect() should be treated exactly the same as

EINPROGRESS, according to Florian Hars.  I'm not completely convinced
but the spec does seem to read that way.
parent d90c5311
......@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/interfaces/libpq/fe-connect.c,v 1.316 2005/08/09 05:14:26 momjian Exp $
* $PostgreSQL: pgsql/src/interfaces/libpq/fe-connect.c,v 1.317 2005/08/11 22:53:41 tgl Exp $
*
*-------------------------------------------------------------------------
*/
......@@ -1082,15 +1082,12 @@ keep_going: /* We will come back to here until there
* since we are in nonblock mode. If it does, well,
* too bad.
*/
retry_connect:
if (connect(conn->sock, addr_cur->ai_addr,
addr_cur->ai_addrlen) < 0)
{
if (SOCK_ERRNO == EINTR)
/* Interrupted system call - just try again */
goto retry_connect;
if (SOCK_ERRNO == EINPROGRESS ||
SOCK_ERRNO == EWOULDBLOCK ||
SOCK_ERRNO == EINTR ||
SOCK_ERRNO == 0)
{
/*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment