Use arc4rand() instead of read_random() in the SCTP and TCP code.
This was suggested by jmg@. Reviewed by: delphij@, jmg@, jtl@ MFC after: 1 month Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D16860
This commit is contained in:
parent
cf3e18f4f6
commit
de9ca6bed2
@ -445,7 +445,7 @@ sctp_get_mbuf_for_msg(unsigned int space_needed,
|
|||||||
/*
|
/*
|
||||||
* SCTP AUTH
|
* SCTP AUTH
|
||||||
*/
|
*/
|
||||||
#define SCTP_READ_RANDOM(buf, len) read_random(buf, len)
|
#define SCTP_READ_RANDOM(buf, len) arc4rand(buf, len, 0)
|
||||||
|
|
||||||
/* map standard crypto API names */
|
/* map standard crypto API names */
|
||||||
#define SCTP_SHA1_CTX SHA1_CTX
|
#define SCTP_SHA1_CTX SHA1_CTX
|
||||||
|
@ -1096,7 +1096,7 @@ tcp_init(void)
|
|||||||
/* Initialize the TCP logging data. */
|
/* Initialize the TCP logging data. */
|
||||||
tcp_log_init();
|
tcp_log_init();
|
||||||
#endif
|
#endif
|
||||||
read_random(&V_ts_offset_secret, sizeof(V_ts_offset_secret));
|
arc4rand(&V_ts_offset_secret, sizeof(V_ts_offset_secret), 0);
|
||||||
|
|
||||||
if (tcp_soreceive_stream) {
|
if (tcp_soreceive_stream) {
|
||||||
#ifdef INET
|
#ifdef INET
|
||||||
@ -2716,7 +2716,7 @@ tcp_new_isn(struct in_conninfo *inc)
|
|||||||
if ((V_isn_last_reseed == 0) || ((V_tcp_isn_reseed_interval > 0) &&
|
if ((V_isn_last_reseed == 0) || ((V_tcp_isn_reseed_interval > 0) &&
|
||||||
(((u_int)V_isn_last_reseed + (u_int)V_tcp_isn_reseed_interval*hz)
|
(((u_int)V_isn_last_reseed + (u_int)V_tcp_isn_reseed_interval*hz)
|
||||||
< (u_int)ticks))) {
|
< (u_int)ticks))) {
|
||||||
read_random(&V_isn_secret, sizeof(V_isn_secret));
|
arc4rand(&V_isn_secret, sizeof(V_isn_secret), 0);
|
||||||
V_isn_last_reseed = ticks;
|
V_isn_last_reseed = ticks;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user