summaryrefslogtreecommitdiffstats
path: root/ssl/s2_enc.c
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2007-06-04 17:04:40 +0000
committerDr. Stephen Henson <steve@openssl.org>2007-06-04 17:04:40 +0000
commitb948e2c59e3a6bdbfdcc304793da4635db7ca339 (patch)
treebf2eea11b2e0b58b783aad36b956471a562fea65 /ssl/s2_enc.c
parent18096abb2939fb7d2cf24842310649908dc283ac (diff)
Update ssl library to support EVP_PKEY MAC API. Include generic MAC support.
Diffstat (limited to 'ssl/s2_enc.c')
-rw-r--r--ssl/s2_enc.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/ssl/s2_enc.c b/ssl/s2_enc.c
index 1f62acd5b1..ff3395f459 100644
--- a/ssl/s2_enc.c
+++ b/ssl/s2_enc.c
@@ -68,15 +68,14 @@ int ssl2_enc_init(SSL *s, int client)
const EVP_MD *md;
int num;
- if (!ssl_cipher_get_evp(s->session,&c,&md,NULL))
+ if (!ssl_cipher_get_evp(s->session,&c,&md,NULL,NULL,NULL))
{
ssl2_return_error(s,SSL2_PE_NO_CIPHER);
SSLerr(SSL_F_SSL2_ENC_INIT,SSL_R_PROBLEMS_MAPPING_CIPHER_FUNCTIONS);
return(0);
}
-
- s->read_hash=md;
- s->write_hash=md;
+ ssl_replace_hash(&s->read_hash,md);
+ ssl_replace_hash(&s->write_hash,md);
if ((s->enc_read_ctx == NULL) &&
((s->enc_read_ctx=(EVP_CIPHER_CTX *)
@@ -176,7 +175,7 @@ void ssl2_mac(SSL *s, unsigned char *md, int send)
/* There has to be a MAC algorithm. */
EVP_MD_CTX_init(&c);
- EVP_DigestInit_ex(&c, s->read_hash, NULL);
+ EVP_MD_CTX_copy(&c, s->read_hash);
EVP_DigestUpdate(&c,sec,
EVP_CIPHER_CTX_key_length(s->enc_read_ctx));
EVP_DigestUpdate(&c,act,len);