Continuing with the "true multithreading" idea, I have some doubts about what the documentation says about implementing static locks. I read the old doc "Network Security with OpenSSL" from O'reilly about the OpenSSL 0.9.7 library. I didn't finish it, but I focus on the API part, chapter 4 and chapter 5.
When talking about thead-safeness and the developer responsability. Say that I implement static locking callbacks on my application with non-blocking BIO. Should I still take care on having my own mutexes for locking access to an SSL client structure while another thread can eventually access to it with I/O OpenSSL functions? Does this callbacks only locks specific OpenSSL structures internally and should I be aware of locking when reading/writing from/to a client? If this callbacks locks on a write operation, does this means that I can't read until the lock is release although I'm reading from a different client than i'm writing to? These 3 questions are related on each answer. If the callbacks are only to lock internal structures that I/O operations (or anyone else) uses, then I know that I must lock the specific client BIO and while I'm reading/writing on this BIO another thread could be reading/writing to another one. Just that internally maybe it will block on accessing to OpenSSL structures by the callbacks mentioned above. Is this how it works? Regards, -- If you want freedom, compile the source. Get gentoo. Sebastián Treu http://labombiya.com.ar ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager majord...@openssl.org