Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit482ed83

Browse files
committed
Check SSL_get_error() value SSL_ERROR_SYSCALL to see if SSL_read()
returned -1, per SSL_get_error() documentation.Nathan Mueller
1 parent5587f07 commit482ed83

File tree

2 files changed

+14
-6
lines changed

2 files changed

+14
-6
lines changed

‎src/backend/libpq/be-secure.c

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
*
1212
*
1313
* IDENTIFICATION
14-
* $Header: /cvsroot/pgsql/src/backend/libpq/be-secure.c,v 1.16 2002/11/07 18:45:51 tgl Exp $
14+
* $Header: /cvsroot/pgsql/src/backend/libpq/be-secure.c,v 1.17 2002/12/12 22:42:39 momjian Exp $
1515
*
1616
* Since the server static private key ($DataDir/server.key)
1717
* will normally be stored unencrypted so that the database
@@ -288,7 +288,10 @@ secure_read(Port *port, void *ptr, size_t len)
288288
caseSSL_ERROR_WANT_READ:
289289
break;
290290
caseSSL_ERROR_SYSCALL:
291-
elog(ERROR,"SSL SYSCALL error: %s",strerror(errno));
291+
if (n==-1)
292+
elog(ERROR,"SSL SYSCALL error: %s",strerror(errno));
293+
else
294+
strerror(errno));
292295
break;
293296
caseSSL_ERROR_SSL:
294297
elog(ERROR,"SSL error: %s",SSLerrmessage());
@@ -337,7 +340,10 @@ secure_write(Port *port, const void *ptr, size_t len)
337340
caseSSL_ERROR_WANT_WRITE:
338341
break;
339342
caseSSL_ERROR_SYSCALL:
340-
elog(ERROR,"SSL SYSCALL error: %s",strerror(errno));
343+
if (n==-1)
344+
elog(ERROR,"SSL SYSCALL error: %s",strerror(errno));
345+
else
346+
strerror(errno));
341347
break;
342348
caseSSL_ERROR_SSL:
343349
elog(ERROR,"SSL error: %s",SSLerrmessage());

‎src/interfaces/libpq/fe-secure.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
*
1212
*
1313
* IDENTIFICATION
14-
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-secure.c,v 1.16 2002/11/07 18:45:51 tgl Exp $
14+
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-secure.c,v 1.17 2002/12/12 22:42:39 momjian Exp $
1515
*
1616
* NOTES
1717
* The client *requires* a valid server certificate. Since
@@ -270,7 +270,8 @@ pqsecure_read(PGconn *conn, void *ptr, size_t len)
270270
caseSSL_ERROR_WANT_READ:
271271
break;
272272
caseSSL_ERROR_SYSCALL:
273-
printfPQExpBuffer(&conn->errorMessage,
273+
if (n==-1)
274+
printfPQExpBuffer(&conn->errorMessage,
274275
libpq_gettext("SSL SYSCALL error: %s\n"),
275276
SOCK_STRERROR(SOCK_ERRNO));
276277
break;
@@ -315,7 +316,8 @@ pqsecure_write(PGconn *conn, const void *ptr, size_t len)
315316
caseSSL_ERROR_WANT_WRITE:
316317
break;
317318
caseSSL_ERROR_SYSCALL:
318-
printfPQExpBuffer(&conn->errorMessage,
319+
if (n==-1)
320+
printfPQExpBuffer(&conn->errorMessage,
319321
libpq_gettext("SSL SYSCALL error: %s\n"),
320322
SOCK_STRERROR(SOCK_ERRNO));
321323
break;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp