Does changing the quota of file descriptors available to the program
modify its behavior?  'ulimit -n -H' should give you your maximum
number allowed.  Remember that network sockets are considered files as
well.  From your description, I'd think that your file limit is around
2048.

Also, your system may have a limit on the number of open sockets to /dev/random.

What's your operating system?

-Kyle H

On 6/26/06, Leon <[EMAIL PROTECTED]> wrote:
Thanks for your reply!

> Some days back, we had a riot on "select" call usage. You may revisit those
> posts to see if it is helpful.
Well, I do not think it is select() since it works for a 1000 threads.
The part that fails is also part of the standard OpenSSL code so I would
not like to change it unless an explicit error is found.

> One thing I do not get is: "Each thread has it's own SSL context ".
Yes I setup the SSL_CTX in each thread. I have also taken it out of the
threads into main() creating one global context BUT this gives the same
error.

> Therefore, I think creating as many SSL contexts as many threads are there
> is an issue.
Exactly - what is the issue? If a 1000 threads work why not 1500?

Both machines have 1GB RAM and running Gentoo 2.5.15 (xeon) and Ubuntu
Breezy (Sempron).

Cheers
Leon

>
>
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Behalf Of Leon
> Sent: Monday, June 26, 2006 12:19 PM
> To: openssl-users@openssl.org
> Subject: OpenSSL and multiple threads
>
>
> Hi,
>
> I wrote a server app to use multiple threads. Each thread has it's own
> SSL context and perform all the socket (socket,accept) and SSL
> (SSL_accept) tasks. I implemented the dynamic lock mechanism for multi
> thread support.
>
> I can start the server with the 1000 threads (one for each required
> port) that we need, but found that it fails if I try 1500. Now I am
> afraid that the 1000 threads may also become unstable with continuous
> use. This failure occurs when all the threads are listening and I open a
> single connection to one of them. That is: there is no load.
>
> I tracked the bug with gdb and found that it fails in RAND_poll(),
> called from SSL_accept(), when a new session key is generated. The
> strange thing is that after the file descriptor set is zeroed
> [(FD_ZERO(&fset)] the call [FDSET(fd,&fset)] to add the random device's
> file descriptor does not work. The set remains zeroed and once the
> select() has executed using this set, most of the parameters including
> the random devices file descriptor, becomes zeroed (NULL).
>
> It looks as if something is overrunning my stack - any ideas as to how
> to get the sucker? I had the same results on a dual xeon as well as a
> Athlon box. Using 0.9.7e.
>
> Please ignore the design - it is suppose to be experimental.
>
> Thanks
> Leon
>
>
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    openssl-users@openssl.org
> Automated List Manager                           [EMAIL PROTECTED]
>
>
> DISCLAIMER
> ==========
> This e-mail may contain privileged and confidential information which is the 
property of Persistent Systems Pvt. Ltd. It is intended only for the use of the 
individual or entity to which it is addressed. If you are not the intended 
recipient, you are not authorized to read, retain, copy, print, distribute or use 
this message. If you have received this communication in error, please notify the 
sender and delete all copies of this message. Persistent Systems Pvt. Ltd. does 
not accept any liability for virus infected mails.
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    openssl-users@openssl.org
> Automated List Manager                           [EMAIL PROTECTED]

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to