develooper Front page | perl.libwww | Postings from May 2006

SIGSEGV in make test for Crypt-SSLeay

Garry Williams
May 25, 2006 15:49
SIGSEGV in make test for Crypt-SSLeay
Message ID:
Several have posted about this problem.  I offer this from my experience.

I run into the problem trying to build Crypt::SSLeay 0.51 on Fedora
Core 5.  My openssl version is:

$ openssl version
OpenSSL 0.9.8a 11 Oct 2005


$ openssl version
OpenSSL 0.9.8b 04 May 2006

I don't have a problem building and testing on an older Red Hat system
with openssl 0.9.7a.

Here's where the problem happens:

#0  0x00ce66b7 in SSL_CTX_ctrl ()
   from ./blib/arch/auto/Crypt/SSLeay/
(gdb) bt
#0  0x00ce66b7 in SSL_CTX_ctrl () from ./blib/arch/auto/Crypt/SSLeay/
#1  0x00cd8f9f in XS_Crypt__SSLeay__CTX_new (my_perl=0x91e5008, cv=0x93391b8)
    at SSLeay.xs:133
#2  0x00a5defd in Perl_pp_entersub ()
   from /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/
#3  0x00a573cf in Perl_runops_standard ()
   from /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/
#4  0x009fccce in perl_run ()
   from /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/
#5  0x0804934e in main ()

After realizing that the call to SSL_CTX_new() is not being checked
for an error return (in SSLeay.xs) and the subsequent call to
SSL_CTX_ctrl() is being passed a NULL ctx pointer, I patched SSLeay.xs
to print the error message.  The call to SSL_CTX_new() is returning
this error:

error:140A90A1:SSL routines:SSL_CTX_new:library has no ciphers

Checking Google, I see that someone else encountered this error.

 #16735: Failed to Build with OpenSSL 0.9.8

I patched SSLeay.xs to call  SSL_library_init() instead of
SSLeay_add_all_algorithms() on the first entry to SSL_CTX_new().  This
fixes the SIGSEGV.

Garry Williams +1 678 656-4579 Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About