diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2017-06-29 15:20:09 +0100 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2017-07-13 12:38:42 +0100 |
commit | 52fd27f9784c9648af55b507d03d0d9e3a368855 (patch) | |
tree | ce9b7d2d6c208f6b2046716b233921f3fd38f8b0 /ssl/ssl_rsa.c | |
parent | 7f6b466b2cca843dd9d12fd547489100327beb3e (diff) | |
download | openssl-new-52fd27f9784c9648af55b507d03d0d9e3a368855.tar.gz |
Use certificate tables instead of ssl_cert_type
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3858)
Diffstat (limited to 'ssl/ssl_rsa.c')
-rw-r--r-- | ssl/ssl_rsa.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/ssl/ssl_rsa.c b/ssl/ssl_rsa.c index 1ee80568ff..89aaa9d06e 100644 --- a/ssl/ssl_rsa.c +++ b/ssl/ssl_rsa.c @@ -127,9 +127,9 @@ int SSL_use_RSAPrivateKey(SSL *ssl, RSA *rsa) static int ssl_set_pkey(CERT *c, EVP_PKEY *pkey) { - int i; - i = ssl_cert_type(NULL, pkey); - if (i < 0) { + size_t i; + + if (ssl_cert_lookup_by_pkey(pkey, &i) == NULL) { SSLerr(SSL_F_SSL_SET_PKEY, SSL_R_UNKNOWN_CERTIFICATE_TYPE); return (0); } @@ -167,8 +167,8 @@ static int ssl_set_pkey(CERT *c, EVP_PKEY *pkey) EVP_PKEY_free(c->pkeys[i].privatekey); EVP_PKEY_up_ref(pkey); c->pkeys[i].privatekey = pkey; - c->key = &(c->pkeys[i]); - return (1); + c->key = &c->pkeys[i]; + return 1; } #ifndef OPENSSL_NO_RSA @@ -316,7 +316,7 @@ int SSL_CTX_use_certificate(SSL_CTX *ctx, X509 *x) static int ssl_set_cert(CERT *c, X509 *x) { EVP_PKEY *pkey; - int i; + size_t i; pkey = X509_get0_pubkey(x); if (pkey == NULL) { @@ -324,8 +324,7 @@ static int ssl_set_cert(CERT *c, X509 *x) return (0); } - i = ssl_cert_type(x, pkey); - if (i < 0) { + if (ssl_cert_lookup_by_pkey(pkey, &i) == NULL) { SSLerr(SSL_F_SSL_SET_CERT, SSL_R_UNKNOWN_CERTIFICATE_TYPE); return 0; } |