This is a discussion on Re: RAND_egd() blocking -- despite contract that states otherwise? - Openssl ; An alternative might be to install a handler for SIGALARM, and then call alarm() to ensure that the blocked read returns with an EINTR? -Kyle H On Sun, Nov 9, 2008 at 2:06 PM, David Schwartz wrote: > >>> So ...
An alternative might be to install a handler for SIGALARM, and then
call alarm() to ensure that the blocked read returns with an EINTR?
-Kyle H
On Sun, Nov 9, 2008 at 2:06 PM, David Schwartzwrote:
>
>>> So what do you want to do if you run out of entropy?
>
>> Fail with an error condition stating that, rather than
>> the indeterminate hang in read() that was experienced.
>
> I believe you need to compile with EGD support then. This will get you the
> behavior you want. EGD provides no way to tell whether there's entropy or
> not, so if you fall back to it, and it has no entropy, you will be in
> trouble.
>
> There really is no way to fix this in OpenSSL. If you make it really not
> block, it will never succeed. It is meaningless to query a daemon without
> blocking -- at some point you must wait for the daemon to reply.
>
> DS
>
>
> __________________________________________________ ____________________
> OpenSSL Project http://www.openssl.org
> User Support Mailing List openssl-users@openssl.org
> Automated List Manager majordomo@openssl.org
>
__________________________________________________ ____________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openssl-users@openssl.org
Automated List Manager majordomo@openssl.org