diff --git a/des-compat.c b/des-compat.c index 022bd6ab754627d10ae63f2850e9f31c30f7dc84..3a38abb4fcc6a286f94827e1749ff11d4498c3cc 100644 --- a/des-compat.c +++ b/des-compat.c @@ -61,7 +61,10 @@ des_ecb3_encrypt(des_cblock *src, des_cblock *dst, des_key_schedule k1, des_key_schedule k2, des_key_schedule k3, int enc) { - struct des_compat_des3 keys = { { k1, k2, k3 } }; + struct des_compat_des3 keys; + keys.keys[0] = k1; + keys.keys[1] = k2; + keys.keys[2] = k3; ((enc == DES_ENCRYPT) ? des_compat_des3_encrypt : des_compat_des3_decrypt) (&keys, DES_BLOCK_SIZE, *dst, *src); @@ -142,7 +145,10 @@ des_ede3_cbc_encrypt(des_cblock *src, des_cblock *dst, long length, des_cblock *iv, int enc) { - struct des_compat_des3 keys = { { k1, k2, k3 } }; + struct des_compat_des3 keys; + keys.keys[0] = k1; + keys.keys[1] = k2; + keys.keys[2] = k3; switch (enc) {