I just got the new snapshot yesterday (I'm the one that pointed out the
problem with removing ciphers from the configuration vai 'no-xxx'
arguments).
I got the code to build, but now my application hangs in a call to
SSL_CTX_set_tmp_dh.
Ultimately, the code ends up calling 'ssleay_rand_bytes', which then calls
'ssleay_rand_add'.
The problem appears to be that 'ssleay_rand_bytes' calls
CRYPTO_w_lock(CRYPTO_LOCK_RAND)', and then 'ssleay_rand_add' calls
CRYPTO_w_lock(CRYPTO_LOCK_RAND)' again before it gets unlocked, causing a
deadlock.
The call to CRYPTO_w_lock(CRYPTO_LOCK_RAND) from ssleay_rand_bytes is in
'crypto/rand/md_rand.c' right after the big comment that starts "(Based on
the rand(3) manpage:)", and the call to ssleay_rand_add is in the "if
(do_stir_pool)" block shortly thereafter. ssleay_rand_add calls
CRYPTO_w_lock(CRYPTO_LOCK_RAND) as soon as it's entered.
Any idea what happened? Keep in mind that this is built with "no-rsa no-rc4
no-rc5 no-bf no-idea' and that the call that started all this was a call to
SSL_CTX_set_tmp_dh.
I'm dead in the water right now, though.
Any help would be appreciated.
Bill Rebey
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]