Hi All,
I have an issue with my muti-threaded server
application using openSSL.
Many of my threads are indefinitely blocked on the
CRYPTO_LOCK_ERR in locking_callback().
GDB shows that the mutex  (type=1) itslef is not owned
by any thread but has the mutex's status value
negative.
 
Here is what my SSL server application trying to do:
 
1. Listen on a port (select)
2. On an accept event, create a new thread to do the
SSL handshake (SSL_new, SSL_accept)
3. Once the handshake is complete trasfer the
connection (socket fd) to another thread within a pool
of transfer threads.
4. The transfer thread does the read/write and closing
( SSL_read, SSL_write, SSL_close/SSL_shutdown).
 
Idea is to have a pool of transfer threads to handle
the read/write operations for large number of
connections (thousands).
I am using LinuxThreads (pthread library), with
openssl-0.9.7d on Linux 2.4.24 kernel. GCC 2.95.3,
glibc 2.2.5.
 
I saw a generic statement on OpenSSL FAQ page about
muti threading limitations 
"an SSL connection may not concurrently be used by
multiple threads"
Any idea what the implication is ?
 
Please help.
 
-Aniruddha



Aniruddha C. Chiplunkar
 Phone (408) 774 1201


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to