Is fork() hook ever possible?
Andrey Chernov
ache at nagual.pp.ru
Tue Sep 16 14:45:04 UTC 2008
On Tue, Sep 16, 2008 at 03:38:16PM +0100, Bob Bishop wrote:
> Hi,
>
> On 16 Sep 2008, at 15:03, Andrey Chernov wrote:
>
> > I need some sort of fork() hook to detect that pid is changed to re-
> > stir
> > ar4random() after that (in the child), simple flag variable with
> > child's pid is needed.
> >
> > Currently OpenBSD does almost that checking getpid() every time
> > arc4random() called, but it is very slow way to use getpid() syscall
> > repeatedly, about 12-15 times slower than just arc4random() without
> > getpid().
> >
> > Any ideas?
>
> How about something hacky using mmap()/minherit()?
Could you please provide working low cost example to detect that we are in
the child (pid changed or something else)? Calling getpid() as OpenBSD
does definitely is very high cost. :(
--
http://ache.pp.ru/
More information about the freebsd-current
mailing list