DragonFly BSD
DragonFly submit List (threaded) for 2004-05
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: [PATCH] rand.c updates from FreeBSD RELENG_5


From: Kris Kennaway <kkenn@xxxxxxxxxxxxxxxxxx>
Date: Thu, 13 May 2004 03:19:13 -0000

On 2004-05-13, Kris Kennaway <kkenn@xxxxxxxxxxxxxxxxxx> wrote:
> On 2004-05-12, Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx> wrote:
>>
>>:What problems?  I did a grep for /dev/random on 4.x and only came up
>>:with a couple of uses in contrib/.
>>:
>>:>     I think we should simply use /dev/urandom here,
>>:>     which is guarenteed not to block and will certainly produce a
>>:>     random enough seed for rand's tiny little seed.
>>:
>>:/dev/random is non-blocking in FreeBSD 5.x since it uses a different,
>>:non-blocking algorithm.
>>:
>>:Kris
>>
>>     Search the FBSD mail archives for the subject line '/dev/random'.  There
>>     have been several threads.   Most recently, a newfs after booting into
>>     single user would lock up until enough randomness existed for its
>>     inode seeding.
>
> That was driver breakage, not a misuse of /dev/random vs. /dev/urandom.

To clarify, /dev/random and /dev/urandom are identical in FreeBSD 5.x,
and the only purpose of keeping both around is for compatibility.

If you're porting code from 5.x to a 4.x-based OS like DF, you need to
take care because of the different semantics of the /dev/random driver
interface.  OTOH it may make sense for you to port the 5.x /dev/random
driver itself, because it has much better properties including better
entropy gathering and better robustness against entropy starvation.

Kris



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]