aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/evp/e_cbc_i.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/evp/e_cbc_i.c')
-rw-r--r--crypto/evp/e_cbc_i.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/crypto/evp/e_cbc_i.c b/crypto/evp/e_cbc_i.c
index abfb5ed146..312ffcb721 100644
--- a/crypto/evp/e_cbc_i.c
+++ b/crypto/evp/e_cbc_i.c
@@ -1,5 +1,5 @@
/* crypto/evp/e_cbc_i.c */
-/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com)
+/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved.
*
* This package is an SSL implementation written
@@ -79,6 +79,11 @@ static EVP_CIPHER i_cbc_cipher=
8,16,8,
idea_cbc_init_key,
idea_cbc_cipher,
+ NULL,
+ sizeof(EVP_CIPHER_CTX)-sizeof((((EVP_CIPHER_CTX *)NULL)->c))+
+ sizeof((((EVP_CIPHER_CTX *)NULL)->c.idea_ks)),
+ EVP_CIPHER_get_asn1_iv,
+ EVP_CIPHER_set_asn1_iv,
};
EVP_CIPHER *EVP_idea_cbc()
@@ -93,18 +98,18 @@ unsigned char *iv;
int enc;
{
if (iv != NULL)
- memcpy(&(ctx->c.idea_cbc.oiv[0]),iv,8);
- memcpy(&(ctx->c.idea_cbc.iv[0]),&(ctx->c.idea_cbc.oiv[0]),8);
+ memcpy(&(ctx->oiv[0]),iv,8);
+ memcpy(&(ctx->iv[0]),&(ctx->oiv[0]),8);
if (key != NULL)
{
if (enc)
- idea_set_encrypt_key(key,&(ctx->c.idea_cbc.ks));
+ idea_set_encrypt_key(key,&(ctx->c.idea_ks));
else
{
IDEA_KEY_SCHEDULE tmp;
idea_set_encrypt_key(key,&tmp);
- idea_set_decrypt_key(&tmp,&(ctx->c.idea_cbc.ks));
+ idea_set_decrypt_key(&tmp,&(ctx->c.idea_ks));
memset((unsigned char *)&tmp,0,
sizeof(IDEA_KEY_SCHEDULE));
}
@@ -119,7 +124,7 @@ unsigned int inl;
{
idea_cbc_encrypt(
in,out,(long)inl,
- &(ctx->c.idea_cbc.ks),&(ctx->c.idea_cbc.iv[0]),
+ &(ctx->c.idea_ks),&(ctx->iv[0]),
ctx->encrypt);
}