diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2016-06-07 09:25:43 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2016-06-07 09:25:43 (GMT) |
commit | 9ff9cbd600f0290df20c73a31a9c4d43f3cf61d6 (patch) | |
tree | 7dfb6ce341c9fb0b9220d046f2e63805b773e16d /Doc/library | |
parent | cb3a581636135556429b2036663e91c043c2bfd8 (diff) | |
parent | dddf4849ec1750ca02d03b9772eff7141ba626f3 (diff) | |
download | cpython-9ff9cbd600f0290df20c73a31a9c4d43f3cf61d6.zip cpython-9ff9cbd600f0290df20c73a31a9c4d43f3cf61d6.tar.gz cpython-9ff9cbd600f0290df20c73a31a9c4d43f3cf61d6.tar.bz2 |
Merge 3.5 (os.urandom)
Diffstat (limited to 'Doc/library')
-rw-r--r-- | Doc/library/os.rst | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/Doc/library/os.rst b/Doc/library/os.rst index 4ed01dd..deabaeb 100644 --- a/Doc/library/os.rst +++ b/Doc/library/os.rst @@ -3768,14 +3768,21 @@ Miscellaneous Functions This function returns random bytes from an OS-specific randomness source. The returned data should be unpredictable enough for cryptographic applications, - though its exact quality depends on the OS implementation. On a Unix-like - system this will query ``/dev/urandom``, and on Windows it will use - ``CryptGenRandom()``. If a randomness source is not found, + though its exact quality depends on the OS implementation. + + On Linux, ``getrandom()`` syscall is used if available and the urandom + entropy pool is initialized (``getrandom()`` does not block). + On a Unix-like system this will query ``/dev/urandom``. On Windows, it + will use ``CryptGenRandom()``. If a randomness source is not found, :exc:`NotImplementedError` will be raised. For an easy-to-use interface to the random number generator provided by your platform, please see :class:`random.SystemRandom`. + .. versionchanged:: 3.5.2 + On Linux, if ``getrandom()`` blocks (the urandom entropy pool is not + initialized yet), fall back on reading ``/dev/urandom``. + .. versionchanged:: 3.5 On Linux 3.17 and newer, the ``getrandom()`` syscall is now used when available. On OpenBSD 5.6 and newer, the C ``getentropy()`` |