uniform indent

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@274 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Björn Groenvall
1996-02-22 10:16:22 +00:00
parent 72f3d8e36a
commit 364fd9b727

View File

@@ -19,17 +19,18 @@ RCSID("$Id$");
#include <sys/systeminfo.h> #include <sys/systeminfo.h>
static long gethostid(void) static long
gethostid(void)
{ {
static int flag=0; static int flag=0;
static long hostid; static long hostid;
if(!flag){ if(!flag){
char s[32]; char s[32];
sysinfo(SI_HW_SERIAL, s, 32); sysinfo(SI_HW_SERIAL, s, 32);
sscanf(s, "%u", &hostid); sscanf(s, "%u", &hostid);
flag=1; flag=1;
} }
return hostid; return hostid;
} }
#endif #endif
@@ -49,8 +50,8 @@ static des_cblock default_seed = {0x01,0x23,0x45,0x67,0x89,0xab,0xcd,0xef};
static void static void
do_initialize(void) do_initialize(void)
{ {
des_set_odd_parity(&default_seed); des_set_odd_parity(&default_seed);
des_set_random_generator_seed(&default_seed); des_set_random_generator_seed(&default_seed);
} }
#define zero_long_long(ll) do { ll[0] = ll[1] = 0; } while (0) #define zero_long_long(ll) do { ll[0] = ll[1] = 0; } while (0)
@@ -58,7 +59,7 @@ do_initialize(void)
#define incr_long_long(ll) do { if (++ll[0] == 0) ++ll[1]; } while (0) #define incr_long_long(ll) do { if (++ll[0] == 0) ++ll[1]; } while (0)
#define set_sequence_number(ll) \ #define set_sequence_number(ll) \
memcpy((char *)sequence_index, (ll), sizeof(sequence_index)); memcpy((char *)sequence_index, (ll), sizeof(sequence_index));
/* /*
* Set the sequnce number to this value (a long long). * Set the sequnce number to this value (a long long).
@@ -66,7 +67,7 @@ do_initialize(void)
void void
des_set_sequence_number(unsigned char *ll) des_set_sequence_number(unsigned char *ll)
{ {
set_sequence_number(ll); set_sequence_number(ll);
} }
/* /*
@@ -75,9 +76,9 @@ des_set_sequence_number(unsigned char *ll)
void void
des_set_random_generator_seed(des_cblock *seed) des_set_random_generator_seed(des_cblock *seed)
{ {
des_key_sched(seed, sequence_seed); des_key_sched(seed, sequence_seed);
zero_long_long(sequence_index); zero_long_long(sequence_index);
initialized = 1; initialized = 1;
} }
/* /*
@@ -88,20 +89,20 @@ des_set_random_generator_seed(des_cblock *seed)
int int
des_new_random_key(des_cblock *key) des_new_random_key(des_cblock *key)
{ {
if (!initialized) if (!initialized)
do_initialize(); do_initialize();
try_again: try_again:
des_ecb_encrypt((des_cblock *) sequence_index, des_ecb_encrypt((des_cblock *) sequence_index,
key, key,
sequence_seed, sequence_seed,
DES_ENCRYPT); DES_ENCRYPT);
incr_long_long(sequence_index); incr_long_long(sequence_index);
/* random key must have odd parity and not be weak */ /* random key must have odd parity and not be weak */
des_set_odd_parity(key); des_set_odd_parity(key);
if (des_is_weak_key(key)) if (des_is_weak_key(key))
goto try_again; goto try_again;
return(0); return(0);
} }
/* /*
@@ -115,45 +116,45 @@ des_new_random_key(des_cblock *key)
void void
des_init_random_number_generator(des_cblock *seed) des_init_random_number_generator(des_cblock *seed)
{ {
struct timeval now; struct timeval now;
static long uniq[2]; static long uniq[2];
des_cblock new_key; des_cblock new_key;
gettimeofday(&now, (struct timezone *)0); gettimeofday(&now, (struct timezone *)0);
if (!uniq[0]) if (!uniq[0])
{ {
struct hostent *hent; struct hostent *hent;
char hostname[100]; char hostname[100];
gethostname(hostname, sizeof(hostname)); gethostname(hostname, sizeof(hostname));
hent = gethostbyname(hostname); hent = gethostbyname(hostname);
if (hent != NULL) if (hent != NULL)
bcopy(hent->h_addr_list[0], &uniq[0], sizeof(uniq[0])); bcopy(hent->h_addr_list[0], &uniq[0], sizeof(uniq[0]));
else else
uniq[0] = gethostid(); uniq[0] = gethostid();
#ifdef MSDOS #ifdef MSDOS
uniq[1] = 1; uniq[1] = 1;
#else #else
uniq[1] = getpid(); uniq[1] = getpid();
#endif #endif
} }
/* Pick a unique random key from the shared sequence. */ /* Pick a unique random key from the shared sequence. */
des_set_random_generator_seed(seed); des_set_random_generator_seed(seed);
set_sequence_number((unsigned char *)uniq); set_sequence_number((unsigned char *)uniq);
des_new_random_key(&new_key); des_new_random_key(&new_key);
/* Select a new nonshared sequence, */ /* Select a new nonshared sequence, */
des_set_random_generator_seed(&new_key); des_set_random_generator_seed(&new_key);
/* and use the current time to pick a key for the new sequence. */ /* and use the current time to pick a key for the new sequence. */
set_sequence_number((unsigned char *)&now); set_sequence_number((unsigned char *)&now);
des_new_random_key(&new_key); des_new_random_key(&new_key);
des_set_random_generator_seed(&new_key); des_set_random_generator_seed(&new_key);
} }
/* This is for backwards compatibility. */ /* This is for backwards compatibility. */
int int
des_random_key(unsigned char *ret) des_random_key(unsigned char *ret)
{ {
return des_new_random_key((des_cblock *) ret); return des_new_random_key((des_cblock *) ret);
} }