CVSROOT: /cvs Module name: src Changes by: matt...@cvs.openbsd.org 2014/07/18 15:40:54
Modified files: lib/libcrypto/crypto: arc4random_linux.h arc4random_osx.h arc4random_solaris.h Log message: Cleanup portable arc4random fork detection code: 1. Use "len" parameter instead of sizeof(*rs). 2. Simplify the atfork handler to be strictly async signal safe by simply writing to a global volatile sig_atomic_t object, and then checking for this in _rs_forkdetect(). (Idea from discussions with Szabolcs Nagy and Rich Felker.) 3. Use memset(rs, 0, sizeof(*rs)) to match OpenBSD's MAP_INHERIT_ZERO fork semantics to avoid any skew in behavior across platforms. ok deraadt