Medi Montaseri wrote:

I have been working on a problem for a couple of weeks and I'm begining to doubt myself...
I can use some confirmation...


I 'm trying to port a working application (Working on FreeBSD 5.2.1 32-bit) to
a FreeBSD 5.3 amd64 and am experiencing seg fualt when calling SSL_library_init().


So I got the openssl-0.9.7e sources and compiled and installed in a different directory say /usr/local/lib
instead of the system provided libs in /usr/lib/. I then set my LD_LIBRARY_PATH=/usr/local/lib
and confirm my executable with ldd(1) which shows


medit64# ldd dapid
dapid:
       libcrypt.so.2 => /lib/libcrypt.so.2 (0x8007d1000)
       libssl.so.3 => /usr/local/lib/libssl.so.3 (0x8008ea000)
       libcrypto.so.3 => /usr/local/lib/libcrypto.so.3 (0x800b01000)
       libpthread.so.1 => /usr/lib/libpthread.so.1 (0x800d52000)
       libstdc++.so.4 => /usr/lib/libstdc++.so.4 (0x800e7c000)
       libm.so.3 => /lib/libm.so.3 (0x80107a000)
       libc.so.5 => /lib/libc.so.5 (0x80119c000)

I then try to set a break point in gdb by setting my dir to the source dir, but I get the
following gdb error message


(gdb) dir /tmp/e/openssl/work/openssl-0.9.7e/ssl
Source directories searched: /tmp/e/openssl/work/openssl-0.9.7e/ssl:$cdir:$cwd
(gdb) break ssl_algs.c:SSL_library_init()
Function "ssl_algs.c:SSL_library_init()" not defined.
Make breakpoint pending on future shared library load? (y or [n]) n
(gdb) q
medit64# ls /tmp/e/openssl/work/openssl-0.9.7e/ssl/ssl_algs.c
/tmp/e/openssl/work/openssl-0.9.7e/ssl/ssl_algs.c
medit64#


As you see, when I instruct gdb to set a break point in ssl_algs.c, gdb say I can not find the file
but ls surely finds it ...


Here is some general questions...
My applications links with libgsoap++.a, libssl.so, pthreads, etc...
My libgsoap++.a is actually the one that calls SSL functions such as SSL_library_init().
When I create libgsoap++.a, it does not matter which SSL libs will be used (/usr/lib or /usr/local/lib)
Does the compiler/linker in the course of creating libgsoap++.a records the filename that will be used
to run (ie /usr/lib/libssl.so) or this is all resolved at run time and based on LD_LIBRARY_PATH and ldconfig


I appreciate any help you can provide...


Is there any gdb ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]

So I'm going to debug this the old "printf" way...

int SSL_library_init(void)
{
#ifndef OPENSSL_NO_DES
       EVP_add_cipher(EVP_des_cbc());
       EVP_add_cipher(EVP_des_ede3_cbc());
....etc...etc...

Where is the definition of EVP_des_cbc() and EVP_des_ede2_cbc()
Thanks
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to