mirror of
https://github.com/postgres/postgres.git
synced 2025-05-21 15:54:08 +03:00
libpq: Report strerror on pthread_mutex_lock() failure
This commit is contained in:
parent
cbb565f7c3
commit
b94c6c691e
@ -257,14 +257,18 @@ pqsecure_open_client(PGconn *conn)
|
||||
/* First time through? */
|
||||
if (conn->ssl == NULL)
|
||||
{
|
||||
#ifdef ENABLE_THREAD_SAFETY
|
||||
int rc;
|
||||
#endif
|
||||
|
||||
/* We cannot use MSG_NOSIGNAL to block SIGPIPE when using SSL */
|
||||
conn->sigpipe_flag = false;
|
||||
|
||||
#ifdef ENABLE_THREAD_SAFETY
|
||||
if (pthread_mutex_lock(&ssl_config_mutex))
|
||||
if ((rc = pthread_mutex_lock(&ssl_config_mutex)))
|
||||
{
|
||||
printfPQExpBuffer(&conn->errorMessage,
|
||||
libpq_gettext("unable to acquire mutex\n"));
|
||||
libpq_gettext("could not acquire mutex: %s\n"), strerror(rc));
|
||||
return PGRES_POLLING_FAILED;
|
||||
}
|
||||
#endif
|
||||
@ -1116,10 +1120,12 @@ initialize_SSL(PGconn *conn)
|
||||
* SSL_context struct.
|
||||
*/
|
||||
#ifdef ENABLE_THREAD_SAFETY
|
||||
if (pthread_mutex_lock(&ssl_config_mutex))
|
||||
int rc;
|
||||
|
||||
if ((rc = pthread_mutex_lock(&ssl_config_mutex)))
|
||||
{
|
||||
printfPQExpBuffer(&conn->errorMessage,
|
||||
libpq_gettext("unable to acquire mutex\n"));
|
||||
libpq_gettext("could not acquire mutex: %s\n"), strerror(rc));
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
@ -1334,10 +1340,12 @@ initialize_SSL(PGconn *conn)
|
||||
X509_STORE *cvstore;
|
||||
|
||||
#ifdef ENABLE_THREAD_SAFETY
|
||||
if (pthread_mutex_lock(&ssl_config_mutex))
|
||||
int rc;
|
||||
|
||||
if ((rc = pthread_mutex_lock(&ssl_config_mutex)))
|
||||
{
|
||||
printfPQExpBuffer(&conn->errorMessage,
|
||||
libpq_gettext("unable to acquire mutex\n"));
|
||||
libpq_gettext("could not acquire mutex: %s\n"), strerror(rc));
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user