Third phase of EVP cipher overhaul.
[openssl.git] / crypto / evp / e_cbc_i.c
index 56869b577be228f7c4d7dda950e79e69fc0d924e..c2c023a1b81c24a401a6a95ecdc6df70256fe395 100644 (file)
@@ -90,22 +90,15 @@ EVP_CIPHER *EVP_idea_cbc(void)
 static int idea_cbc_init_key(EVP_CIPHER_CTX *ctx, unsigned char *key,
             unsigned char *iv, int enc)
        {
-       if (iv != NULL)
-               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_ks));
+       else
                {
-               if (enc)
-                       idea_set_encrypt_key(key,&(ctx->c.idea_ks));
-               else
-                       {
-                       IDEA_KEY_SCHEDULE tmp;
+               IDEA_KEY_SCHEDULE tmp;
 
-                       idea_set_encrypt_key(key,&tmp);
-                       idea_set_decrypt_key(&tmp,&(ctx->c.idea_ks));
-                       memset((unsigned char *)&tmp,0,
+               idea_set_encrypt_key(key,&tmp);
+               idea_set_decrypt_key(&tmp,&(ctx->c.idea_ks));
+               memset((unsigned char *)&tmp,0,
                                sizeof(IDEA_KEY_SCHEDULE));
-                       }
                }
        return 1;
        }