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.stin...@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 INT_MAX and loop until we collected enough random bytes, > instead of casting a directly Py_ssize_t 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 INT_MAX and loop until we collected enough random bytes, > + instead of casting a directly Py_ssize_t 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 = Py_MIN(size, 1024); > #else > - n = size; > + n = Py_MIN(size, INT_MAX); > #endif > > errno = 0; > > -- > Repository URL: https://hg.python.org/cpython > _______________________________________________ > Python-checkins mailing list > python-check...@python.org > https://mail.python.org/mailman/listinfo/python-checkins _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com