Change type of various DES function arguments from des_cblock

(meaning pointer to char) to des_cblock * (meaning pointer to
array with 8 char elements), which allows the compiler to
do more typechecking.  (The changed argument types were of type
des_cblock * back in SSLeay, and a lot of ugly casts were
used then to turn them into pointers to elements; but it can be
done without those casts.)

Introduce new type const_des_cblock -- before, the pointers rather
than the elements pointed to were declared const, and for
some reason gcc did not complain about this (but some other
compilers did).
This commit is contained in:
Bodo Möller
1999-05-16 12:26:16 +00:00
parent e186bf96b4
commit edf0bfb52b
37 changed files with 323 additions and 259 deletions

View File

@@ -62,13 +62,13 @@
static int seed=0;
static des_cblock init;
void des_random_seed(des_cblock key)
void des_random_seed(des_cblock *key)
{
memcpy(init,key,sizeof(des_cblock));
memcpy(&init,key,sizeof(des_cblock));
seed=1;
}
void des_random_key(unsigned char *ret)
void des_random_key(des_cblock *ret)
{
des_key_schedule ks;
static DES_LONG c=0;
@@ -99,13 +99,13 @@ void des_random_key(unsigned char *ret)
t=(DES_LONG)((pid)|((c++)<<16));
l2c(t,p);
des_set_odd_parity(data);
des_set_key(data,ks);
des_cbc_cksum(key,key,sizeof(key),ks,data);
des_set_odd_parity(&data);
des_set_key(&data,ks);
des_cbc_cksum(key,&key,sizeof(key),ks,&data);
des_set_odd_parity(key);
des_set_key(key,ks);
des_cbc_cksum(key,data,sizeof(key),ks,key);
des_set_odd_parity(&key);
des_set_key(&key,ks);
des_cbc_cksum(key,&data,sizeof(key),ks,&key);
memcpy(ret,data,sizeof(key));
memset(key,0,sizeof(key));