diff --git a/src/backend/libpq/be-secure.c b/src/backend/libpq/be-secure.c index 56fefae95a0..f0a375165ba 100644 --- a/src/backend/libpq/be-secure.c +++ b/src/backend/libpq/be-secure.c @@ -11,7 +11,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/libpq/be-secure.c,v 1.59.2.2 2006/05/12 22:44:43 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/libpq/be-secure.c,v 1.59.2.3 2007/05/18 01:20:33 tgl Exp $ * * Since the server static private key ($DataDir/server.key) * will normally be stored unencrypted so that the database @@ -281,15 +281,9 @@ rloop: #endif goto rloop; case SSL_ERROR_SYSCALL: - if (n == -1) - ereport(COMMERROR, - (errcode_for_socket_access(), - errmsg("SSL SYSCALL error: %m"))); - else + /* leave it to caller to ereport the value of errno */ + if (n != -1) { - ereport(COMMERROR, - (errcode(ERRCODE_PROTOCOL_VIOLATION), - errmsg("SSL SYSCALL error: EOF detected"))); errno = ECONNRESET; n = -1; } @@ -380,15 +374,9 @@ wloop: #endif goto wloop; case SSL_ERROR_SYSCALL: - if (n == -1) - ereport(COMMERROR, - (errcode_for_socket_access(), - errmsg("SSL SYSCALL error: %m"))); - else + /* leave it to caller to ereport the value of errno */ + if (n != -1) { - ereport(COMMERROR, - (errcode(ERRCODE_PROTOCOL_VIOLATION), - errmsg("SSL SYSCALL error: EOF detected"))); errno = ECONNRESET; n = -1; }