diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2014-06-27 21:31:13 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2014-06-27 21:31:13 +0000 |
commit | b11da6cc654e90ffc1e145758e0beeac29755daf (patch) | |
tree | bf29fc97f74443bb491fd8860cbd370da8a4d3ea /lib/libc | |
parent | 2bd3363d1751c5e3b3a9b4a11362d576e8f0a0d2 (diff) |
re-init and init code paths are now more shared, so the getpid()-based
portable code path must handle that; with brent cook
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/crypt/arc4random.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libc/crypt/arc4random.c b/lib/libc/crypt/arc4random.c index ee47b2df340..fd8570565eb 100644 --- a/lib/libc/crypt/arc4random.c +++ b/lib/libc/crypt/arc4random.c @@ -1,4 +1,4 @@ -/* $OpenBSD: arc4random.c,v 1.38 2014/06/26 19:23:15 deraadt Exp $ */ +/* $OpenBSD: arc4random.c,v 1.39 2014/06/27 21:31:12 deraadt Exp $ */ /* * Copyright (c) 1996, David Mazieres <dm@uun.org> @@ -120,7 +120,8 @@ _rs_stir_if_needed(size_t len) /* If a system lacks MAP_INHERIT_ZERO, resort to getpid() */ if (_rs_pid == 0 || _rs_pid != pid) { _rs_pid = pid; - rs->rs_count = 0; + if (rs) + rs->rs_count = 0; } #endif if (!rs || rs->rs_count <= len) |