diff options
| author | 2014-12-03 23:18:21 +0000 | |
|---|---|---|
| committer | 2014-12-03 23:18:21 +0000 | |
| commit | 0868714ec90fecffe0f75823ee25edb935ec4172 (patch) | |
| tree | c0afb8c209c7cc541741348413badf6cdcfeae9d | |
| parent | Use arc4random_buf() rather than iterating word by wordo (diff) | |
| download | wireguard-openbsd-0868714ec90fecffe0f75823ee25edb935ec4172.tar.xz wireguard-openbsd-0868714ec90fecffe0f75823ee25edb935ec4172.zip | |
Init SPI using arc4random_buf, rather than (r << 32) | r
ok matthew
| -rw-r--r-- | sbin/iked/config.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sbin/iked/config.c b/sbin/iked/config.c index 891c4154630..a19d21b2d70 100644 --- a/sbin/iked/config.c +++ b/sbin/iked/config.c @@ -1,4 +1,4 @@ -/* $OpenBSD: config.c,v 1.32 2014/10/08 05:47:03 deraadt Exp $ */ +/* $OpenBSD: config.c,v 1.33 2014/12/03 23:18:21 deraadt Exp $ */ /* * Copyright (c) 2010-2013 Reyk Floeter <reyk@openbsd.org> @@ -68,9 +68,9 @@ config_getspi(void) { u_int64_t spi; - spi = ((u_int64_t)arc4random() << 32) | arc4random(); - if (spi == 0) - return (config_getspi()); + do { + arc4random_buf(&spi, sizeof spi); + } while (spi == 0); return (spi); } |
