projects
/
openssl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove DH usage from tls_process_cke_dhe
[openssl.git]
/
ssl
/
statem
/
statem_srvr.c
diff --git
a/ssl/statem/statem_srvr.c
b/ssl/statem/statem_srvr.c
index 9d0d8c9ed4333031ffd01d5fb83e9b8f8efb8900..b6baff28ea5940ca976eed24cdaa530a817a0a26 100644
(file)
--- a/
ssl/statem/statem_srvr.c
+++ b/
ssl/statem/statem_srvr.c
@@
-2962,11
+2962,8
@@
static int tls_process_cke_rsa(SSL *s, PACKET *pkt)
static int tls_process_cke_dhe(SSL *s, PACKET *pkt)
{
static int tls_process_cke_dhe(SSL *s, PACKET *pkt)
{
-#ifndef OPENSSL_NO_DH
EVP_PKEY *skey = NULL;
EVP_PKEY *skey = NULL;
- DH *cdh;
unsigned int i;
unsigned int i;
- BIGNUM *pub_key;
const unsigned char *data;
EVP_PKEY *ckey = NULL;
int ret = 0;
const unsigned char *data;
EVP_PKEY *ckey = NULL;
int ret = 0;
@@
-2996,11
+2993,8
@@
static int tls_process_cke_dhe(SSL *s, PACKET *pkt)
goto err;
}
goto err;
}
- cdh = EVP_PKEY_get0_DH(ckey);
- pub_key = BN_bin2bn(data, i, NULL);
- if (pub_key == NULL || cdh == NULL || !DH_set0_key(cdh, pub_key, NULL)) {
+ if (!EVP_PKEY_set1_encoded_public_key(ckey, data, i)) {
SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR);
SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR);
- BN_free(pub_key);
goto err;
}
goto err;
}
@@
-3015,11
+3009,6
@@
static int tls_process_cke_dhe(SSL *s, PACKET *pkt)
err:
EVP_PKEY_free(ckey);
return ret;
err:
EVP_PKEY_free(ckey);
return ret;
-#else
- /* Should never happen */
- SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR);
- return 0;
-#endif
}
static int tls_process_cke_ecdhe(SSL *s, PACKET *pkt)
}
static int tls_process_cke_ecdhe(SSL *s, PACKET *pkt)