Fix fixed egd code

This commit is contained in:
Damien Miller 2000-06-26 13:55:31 +10:00
parent 7a445bb8d8
commit 0800647391
2 changed files with 9 additions and 6 deletions

View File

@ -4,6 +4,7 @@
- (djm) Added password expiry checking (no password change support)
- (djm) Make EGD failures non-fatal if OpenSSL's entropy pool is still OK
based on patch from Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE>
- (djm) Fix fixed EGD code.
- OpenBSD CVS update
- provos@cvs.openbsd.org 2000/06/25 14:17:58
[channels.c]

View File

@ -35,7 +35,7 @@
#include <openssl/rand.h>
#include <openssl/sha.h>
RCSID("$Id: entropy.c,v 1.15 2000/06/26 03:01:33 djm Exp $");
RCSID("$Id: entropy.c,v 1.16 2000/06/26 03:55:31 djm Exp $");
#ifndef offsetof
# define offsetof(type, member) ((size_t) &((type *)0)->member)
@ -158,10 +158,12 @@ seed_rng(void)
debug("Seeding random number generator");
if (!get_random_bytes(buf, sizeof(buf)) && !RAND_status())
if (!get_random_bytes(buf, sizeof(buf))) {
if (!RAND_status())
fatal("Entropy collection failed and entropy exhausted");
} else {
RAND_add(buf, sizeof(buf), sizeof(buf));
}
memset(buf, '\0', sizeof(buf));
}