diff options
author | pfg <pfg@FreeBSD.org> | 2016-05-14 01:12:23 +0000 |
---|---|---|
committer | pfg <pfg@FreeBSD.org> | 2016-05-14 01:12:23 +0000 |
commit | 1bd762c01aa7de44d695f499728bafc9ffcc4cc8 (patch) | |
tree | df70147c0cb6c9d7fac092a454dd484251e852ec | |
parent | 69cdab8aa86defee681db824959d69660163578d (diff) | |
download | FreeBSD-src-1bd762c01aa7de44d695f499728bafc9ffcc4cc8.zip FreeBSD-src-1bd762c01aa7de44d695f499728bafc9ffcc4cc8.tar.gz |
timed(8): Use stronger random number generator.
Using arc4random simplifies the code by not having to worry about
seeds which ironically depend on the time.
CID: 1300004
-rw-r--r-- | usr.sbin/timed/timed/timed.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/usr.sbin/timed/timed/timed.c b/usr.sbin/timed/timed/timed.c index 37e5607..2ac2b42 100644 --- a/usr.sbin/timed/timed/timed.c +++ b/usr.sbin/timed/timed/timed.c @@ -229,12 +229,9 @@ main(int argc, char *argv[]) exit(1); } - /* choose a unique seed for random number generation */ - (void)gettimeofday(&ntime, NULL); - srandom(ntime.tv_sec + ntime.tv_usec); - - sequence = random(); /* initial seq number */ + sequence = arc4random(); /* initial seq number */ + (void)gettimeofday(&ntime, NULL); /* rounds kernel variable time to multiple of 5 ms. */ ntime.tv_sec = 0; ntime.tv_usec = -((ntime.tv_usec/1000) % 5) * 1000; |