use arc4random.

Obtained from:	KAME
This commit is contained in:
Hajimu UMEMOTO 2003-10-31 16:06:05 +00:00
parent 8d996f28d8
commit a02e1e2b41
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=121807
4 changed files with 6 additions and 9 deletions

View File

@ -140,7 +140,6 @@ generate_tmp_ifid(seed0, seed1, ret)
MD5_CTX ctxt;
u_int8_t seed[16], digest[16], nullbuf[8];
u_int32_t val32;
struct timeval tv;
/* If there's no hisotry, start with a random seed. */
bzero(nullbuf, sizeof(nullbuf));
@ -148,8 +147,7 @@ generate_tmp_ifid(seed0, seed1, ret)
int i;
for (i = 0; i < 2; i++) {
microtime(&tv);
val32 = random() ^ tv.tv_usec;
val32 = arc4random();
bcopy(&val32, seed + sizeof(val32) * i, sizeof(val32));
}
} else
@ -191,8 +189,7 @@ generate_tmp_ifid(seed0, seed1, ret)
log(LOG_INFO,
"generate_tmp_ifid: computed MD5 value is zero.\n");
microtime(&tv);
val32 = random() ^ tv.tv_usec;
val32 = arc4random();
val32 = 1 + (val32 % (0xffffffff - 1));
}

View File

@ -35,7 +35,7 @@
#ifdef _KERNEL
#define MLD6_RANDOM_DELAY(X) (random() % (X) + 1)
#define MLD6_RANDOM_DELAY(X) (arc4random() % (X) + 1)
/*
* States for MLD stop-listening processing

View File

@ -228,7 +228,7 @@ struct in6_ndifreq {
#define TEMPADDR_REGEN_ADVANCE 5 /* sec */
#define MAX_TEMP_DESYNC_FACTOR 600 /* 10 min */
#define ND_COMPUTE_RTIME(x) \
(((MIN_RANDOM_FACTOR * (x >> 10)) + (random() & \
(((MIN_RANDOM_FACTOR * (x >> 10)) + (arc4random() & \
((MAX_RANDOM_FACTOR - MIN_RANDOM_FACTOR) * (x >> 10)))) /1000)
TAILQ_HEAD(nd_drhead, nd_defrouter);

View File

@ -1086,9 +1086,9 @@ nd6_dad_start(ifa, tick)
int ntick;
if (*tick == 0)
ntick = random() % (MAX_RTR_SOLICITATION_DELAY * hz);
ntick = arc4random() % (MAX_RTR_SOLICITATION_DELAY * hz);
else
ntick = *tick + random() % (hz / 2);
ntick = *tick + arc4random() % (hz / 2);
*tick = ntick;
nd6_dad_starttimer(dp, ntick);
}