What is the problem you are trying to solve?  Who has asked for it?

I think it is a fool's errand to try to make it possible to "share" every data
structure across threads.  You can't get it exactly right, you need
higher-level information that is in the application, not at the OpenSSL
level.  Suppose you add a lock to LHASH -- what happens for lh_doall -- do you
unlock when the function is called -- you can't, because someone might delete
an element you're iterating over -- or do you keep it locked throughout the
function -- so the function better not try to retrieve anything else from the
hash?

And that's just one example.  But it indicates why (a) recursive locks can be
needed; (b) why a simple lock, versus read/write, isn't enough; (c) shows the
dangers of sharing objects across threads.

I believe other matters -- the build/configure environment -- are more
pressing.  But again, I would like to know what problem you are trying to
solve.
        /r$
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to