mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-04 15:40:44 +00:00
use arc4random.
Obtained from: KAME
This commit is contained in:
parent
8d996f28d8
commit
a02e1e2b41
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=121807
|
@ -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));
|
||||
}
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue