Thread (1 message) 1 message, 1 author, 2014-07-17

Re: [PATCH, RFC] random: introduce getrandom(2) system call

From: Andy Lutomirski <hidden>
Date: 2014-07-17 22:00:45

On Thu, Jul 17, 2014 at 2:44 PM, Zach Brown [off-list ref] wrote:
On Thu, Jul 17, 2014 at 04:43:40PM -0400, Theodore Ts'o wrote:
quoted
So in practice, the fact that we block at system init time shouldn't
be a hardship for LibreSSL in most cases --- and in the case where you
are running on an embedded system where there are barely any devices,
no cycle counter, and nothing that produces enough interrupts to
initialize the pool, what would you prefer that we do?  Return data
that might not be fully "seed grade entropy"?

If you are determined to get data from a not a fully initialized
entropy pool, then you can open /dev/urandom and get it via the old
interface.
That sounds reasonable.  Maybe a slightly edited version of this writeup
could be dropped in the man page to give people context?
And we'll be in a sad state in which we have a getrandom(2) syscall
but there's no decent way to use srand without either opening
/dev/urandom or mucking with AT_RANDOM.  And the latter barely works
because I think that most (all?) glibc versions clear it after using
it to initialize their stack canaries.

This isn't a regression, and it isn't a reason to object to
getrandom(2), but if getrandom(2) goes in as is, I'll submit a patch
adding the new flag immediately.

--Andy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help