From 2ccdee74a3f873fc1df4fcaa67a26f3d59ffafb2 Mon Sep 17 00:00:00 2001 From: Johan Danielsson Date: Tue, 3 Sep 2002 17:31:12 +0000 Subject: [PATCH] get rid of DES3_CBC_encrypt_ivec, just use zero ivec in DES3_CBC_encrypt if passed ivec is NULL git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@11341 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/crypto.c | 38 +++++++------------------------------- 1 file changed, 7 insertions(+), 31 deletions(-) diff --git a/lib/krb5/crypto.c b/lib/krb5/crypto.c index 9412169cb..ea82bc34a 100644 --- a/lib/krb5/crypto.c +++ b/lib/krb5/crypto.c @@ -1676,26 +1676,14 @@ DES3_CBC_encrypt(krb5_context context, size_t len, krb5_boolean encrypt, int usage, - void *ignore_ivec) + void *ivec) { - des_cblock ivec; + des_cblock local_ivec; des_key_schedule *s = key->schedule->data; - memset(&ivec, 0, sizeof(ivec)); - des_ede3_cbc_encrypt(data, data, len, s[0], s[1], s[2], &ivec, encrypt); - return 0; -} - -static krb5_error_code -DES3_CBC_encrypt_ivec(krb5_context context, - struct key_data *key, - void *data, - size_t len, - krb5_boolean encrypt, - int usage, - void *ivec) -{ - des_key_schedule *s = key->schedule->data; - + if(ivec == NULL) { + ivec = &local_ivec; + memset(local_ivec, 0, sizeof(local_ivec)); + } des_ede3_cbc_encrypt(data, data, len, s[0], s[1], s[2], ivec, encrypt); return 0; } @@ -2070,17 +2058,6 @@ static struct encryption_type enctype_des3_cbc_none = { F_PSEUDO, DES3_CBC_encrypt, }; -static struct encryption_type enctype_des3_cbc_none_ivec = { - ETYPE_DES3_CBC_NONE_IVEC, - "des3-cbc-none-ivec", - 8, - 0, - &keytype_des3_derived, - &checksum_none, - NULL, - F_PSEUDO, - DES3_CBC_encrypt_ivec, -}; static struct encryption_type *etypes[] = { &enctype_null, @@ -2094,8 +2071,7 @@ static struct encryption_type *etypes[] = { &enctype_des_cbc_none, &enctype_des_cfb64_none, &enctype_des_pcbc_none, - &enctype_des3_cbc_none, - &enctype_des3_cbc_none_ivec + &enctype_des3_cbc_none }; static unsigned num_etypes = sizeof(etypes) / sizeof(etypes[0]);