mirror of
https://github.com/postgres/postgres.git
synced 2025-07-05 07:21:24 +03:00
Go over all OpenSSL return values and make sure we compare them
to the documented API value. The previous code got it right as it's implemented, but accepted too much/too little compared to the API documentation. Per comment from Zdenek Kotala.
This commit is contained in:
@ -11,7 +11,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/interfaces/libpq/fe-secure.c,v 1.118 2009/01/19 17:17:50 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/interfaces/libpq/fe-secure.c,v 1.119 2009/01/28 15:06:47 mha Exp $
|
||||
*
|
||||
* NOTES
|
||||
*
|
||||
@ -757,7 +757,7 @@ client_cert_cb(SSL *ssl, X509 **x509, EVP_PKEY **pkey)
|
||||
}
|
||||
|
||||
/* verify that the cert and key go together */
|
||||
if (!X509_check_private_key(*x509, *pkey))
|
||||
if (X509_check_private_key(*x509, *pkey) != 1)
|
||||
{
|
||||
char *err = SSLerrmessage();
|
||||
|
||||
@ -1004,7 +1004,7 @@ initialize_SSL(PGconn *conn)
|
||||
{
|
||||
X509_STORE *cvstore;
|
||||
|
||||
if (!SSL_CTX_load_verify_locations(SSL_context, fnbuf, NULL))
|
||||
if (SSL_CTX_load_verify_locations(SSL_context, fnbuf, NULL) != 1)
|
||||
{
|
||||
char *err = SSLerrmessage();
|
||||
|
||||
@ -1023,7 +1023,7 @@ initialize_SSL(PGconn *conn)
|
||||
snprintf(fnbuf, sizeof(fnbuf), "%s/%s", homedir, ROOT_CRL_FILE);
|
||||
|
||||
/* setting the flags to check against the complete CRL chain */
|
||||
if (X509_STORE_load_locations(cvstore, fnbuf, NULL) != 0)
|
||||
if (X509_STORE_load_locations(cvstore, fnbuf, NULL) == 1)
|
||||
/* OpenSSL 0.96 does not support X509_V_FLAG_CRL_CHECK */
|
||||
#ifdef X509_V_FLAG_CRL_CHECK
|
||||
X509_STORE_set_flags(cvstore,
|
||||
|
Reference in New Issue
Block a user