X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fdes%2Fset_key.c;h=245b720a59a3c1417d4a86c28be07c0da4a761f6;hp=0dc79c946110caacd3f940c96c8fe337bbe16097;hb=3ba5d1cf2eb6ef28ac5f6d9f3d28020d00c5be50;hpb=be2e2c32972e421ecc78bb79b502cb9d76d0c391 diff --git a/crypto/des/set_key.c b/crypto/des/set_key.c index 0dc79c9461..245b720a59 100644 --- a/crypto/des/set_key.c +++ b/crypto/des/set_key.c @@ -307,7 +307,7 @@ static const DES_LONG des_skb[8][64]={ 0x00002822L,0x04002822L,0x00042822L,0x04042822L, }}; -int des_set_key(const_des_cblock *key, des_key_schedule schedule) +int des_set_key(const_des_cblock *key, des_key_schedule *schedule) { if (des_check_key) { @@ -324,7 +324,7 @@ int des_set_key(const_des_cblock *key, des_key_schedule schedule) * return -1 if key parity error, * return -2 if illegal weak key. */ -int des_set_key_checked(const_des_cblock *key, des_key_schedule schedule) +int des_set_key_checked(const_des_cblock *key, des_key_schedule *schedule) { if (!des_check_key_parity(key)) return(-1); @@ -334,7 +334,7 @@ int des_set_key_checked(const_des_cblock *key, des_key_schedule schedule) return 0; } -void des_set_key_unchecked(const_des_cblock *key, des_key_schedule schedule) +void des_set_key_unchecked(const_des_cblock *key, des_key_schedule *schedule) { static int shifts2[16]={0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0}; register DES_LONG c,d,t,s,t2; @@ -342,7 +342,11 @@ void des_set_key_unchecked(const_des_cblock *key, des_key_schedule schedule) register DES_LONG *k; register int i; - k = &schedule->ks.deslong[0]; +#if OPENBSD_DEV_CRYPTO + memcpy(schedule->key,key,sizeof schedule->key); + schedule->session=NULL; +#endif + k = &schedule->ks->deslong[0]; in = &(*key)[0]; c2l(in,c); @@ -390,7 +394,7 @@ void des_set_key_unchecked(const_des_cblock *key, des_key_schedule schedule) } } -int des_key_sched(const_des_cblock *key, des_key_schedule schedule) +int des_key_sched(const_des_cblock *key, des_key_schedule *schedule) { return(des_set_key(key,schedule)); }