Hi David, I enabled the debug flags in the OpenSSL makefiles and recompiled for the libraries. The stack trace is obtained is as follows:
#0 0x40000402 in __kernel_vsyscall () #1 0x001fc1f8 in raise () from /lib/libc.so.6 #2 0x001fd948 in abort () from /lib/libc.so.6 #3 0x0023152a in __libc_message () from /lib/libc.so.6 #4 0x00237424 in _int_free () from /lib/libc.so.6 #5 0x0023795f in free () from /lib/libc.so.6 #6 0x4057b602 in CRYPTO_free (str=0x640f9c38) at mem.c:378 #7 0x405e64f5 in ERR_clear_error () at err.c:722 #8 0x403999ad in ssl3_connect (s=0x63e384c8) at s3_clnt.c:169 #9 0x403b06ac in SSL_connect (s=0x63e384c8) at ssl_lib.c:850 Does it indicate a OpenSSL problem?..I have dug the application code and so far appears it appears to be clean. Thanks, Prabhu. S On 7/25/07, Dr. Stephen Henson <[EMAIL PROTECTED]> wrote:
On Wed, Jul 25, 2007, Prabhu S wrote: > Hi, > > I have a SSL enabled client application. > The client connects to the server with which it shares no common ciphers. > When 200 or more simultaneous connections are made the application crashes. > The backtrace indicates double free or corruption (!prev) in CRYPTO_free(). > However when there is a common shared ciphers between the client and server > there are no issues. > > #0 0x40000402 in __kernel_vsyscall () > #1 0x001fc1f8 in raise () from /lib/libc.so.6 > #2 0x001fd948 in abort () from /lib/libc.so.6 > #3 0x0023152a in __libc_message () from /lib/libc.so.6 > #4 0x00237424 in _int_free () from /lib/libc.so.6 > #5 0x0023795f in free () from /lib/libc.so.6 > #6 0x4056e6fa in CRYPTO_free () from ../lib/libcrypto.so.0.9.8 > > > The client uses libcrypto.so.0.9.8. > > Is there any known issues in libcrypto.so.0.9.8?.. > Whats baffling me is there are no issues in successful handshakes but > application > quite immediately crashes with failed handshakes. > > The way the client handles cleanup is same for both the cases. > Simultaneous connections are achieved by creating threads , one thread for > every connections. > But the CTX and SSL objects are all different for each threads. > That isn't necessarily a problem with OpenSSL. Application error could have a similar effect. Does the stack trace go any further than that? Debugging symbols would help then we'd know which function had called CRYPTO_free() though it might be the first one that is the culprit. Steve. -- Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage OpenSSL project core developer and freelance consultant. Funding needed! Details on homepage. Homepage: http://www.drh-consultancy.demon.co.uk ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]