[Python-Dev] [Python-checkins] cpython (3.5): Fix os.urandom() using getrandom() on Linux (original) (raw)
Victor Stinner victor.stinner at gmail.com
Tue Jun 14 11:38:40 EDT 2016
- Previous message (by thread): [Python-Dev] [Python-checkins] cpython (3.5): Fix os.urandom() using getrandom() on Linux
- Next message (by thread): [Python-Dev] [Python-checkins] cpython (3.5): Fix os.urandom() using getrandom() on Linux
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Sorry, I don't hve the bandwith to follow the huge discussion around random in Python. If you want my help, please write a PEP to summarize the discussion.
My change fixes an obvious bug. Even if the Python API changes, I don't expect that all the C code will be removed.
Victor Le 14 juin 2016 5:11 PM, "Steven D'Aprano" <steve at pearwood.info> a écrit :
Is this right? I thought we had decided that os.urandom should not fall back on getrandom on Linux?
On Tue, Jun 14, 2016 at 02:36:27PM +0000, victor. stinner wrote: > https://hg.python.org/cpython/rev/e028e86a5b73 > changeset: 102033:e028e86a5b73 > branch: 3.5 > parent: 102031:a36238de31ae > user: Victor Stinner <victor.stinner at gmail.com> > date: Tue Jun 14 16:31:35 2016 +0200 > summary: > Fix os.urandom() using getrandom() on Linux > > Issue #27278: Fix os.urandom() implementation using getrandom() on Linux. > Truncate size to INTMAX and loop until we collected enough random bytes, > instead of casting a directly Pyssizet to int. > > files: > Misc/NEWS | 4 ++++ > Python/random.c | 2 +- > 2 files changed, 5 insertions(+), 1 deletions(-) > > > diff --git a/Misc/NEWS b/Misc/NEWS > --- a/Misc/NEWS > +++ b/Misc/NEWS > @@ -13,6 +13,10 @@ > Library > ------- > > +- Issue #27278: Fix os.urandom() implementation using getrandom() on Linux. > + Truncate size to INTMAX and loop until we collected enough random bytes, > + instead of casting a directly Pyssizet to int. > + > - Issue #26386: Fixed ttk.TreeView selection operations with item id's > containing spaces. > > diff --git a/Python/random.c b/Python/random.c > --- a/Python/random.c > +++ b/Python/random.c > @@ -143,7 +143,7 @@ > to 1024 bytes */ > n = PyMIN(size, 1024); > #else > - n = size; > + n = PyMIN(size, INTMAX); > #endif > > errno = 0; > > -- > Repository URL: https://hg.python.org/cpython _> ________________________ > Python-checkins mailing list > Python-checkins at python.org > https://mail.python.org/mailman/listinfo/python-checkins
Python-Dev mailing list Python-Dev at python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/victor.stinner%40gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20160614/4eae9ff4/attachment.html>
- Previous message (by thread): [Python-Dev] [Python-checkins] cpython (3.5): Fix os.urandom() using getrandom() on Linux
- Next message (by thread): [Python-Dev] [Python-checkins] cpython (3.5): Fix os.urandom() using getrandom() on Linux
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]