Browse Source

added handler for an atfork hook from kettenis@

ok deraadt@ beck@ kettenis@
OPENBSD_5_6
bcook 10 years ago
parent
commit
fca7f5a866
1 changed files with 10 additions and 1 deletions
  1. +10
    -1
      src/lib/libc/crypt/arc4random.c

+ 10
- 1
src/lib/libc/crypt/arc4random.c View File

@ -1,4 +1,4 @@
/* $OpenBSD: arc4random.c,v 1.43 2014/07/13 09:32:42 beck Exp $ */
/* $OpenBSD: arc4random.c,v 1.44 2014/07/16 00:15:35 bcook Exp $ */
/*
* Copyright (c) 1996, David Mazieres <dm@uun.org>
@ -65,6 +65,13 @@ static struct {
static inline void _rs_rekey(u_char *dat, size_t datlen);
static inline void
_rs_forkhandler(void)
{
if (rs)
rs->rs_count = 0;
}
static inline void
_rs_init(u_char *buf, size_t n)
{
@ -78,6 +85,8 @@ _rs_init(u_char *buf, size_t n)
#ifdef MAP_INHERIT_ZERO
if (minherit(rs, sizeof(*rs), MAP_INHERIT_ZERO) == -1)
abort();
#else
_ARC4_ATFORK(_rs_forkhandler);
#endif
}
if (rsx == NULL) {


Loading…
Cancel
Save