Hi 
 
I am facing issues in running my application on two different Linux 
distributions having different OpenSSL versions. 
 
The application “foo” is built on SUSE 9 and is intended to be executed on RHEL 
4, 5, SUSE 9 and 10. The application”foo” links implicit dynamic with OpenSSL 
libraries on the SUSE 9, OpenSSL version here is 0.9.7d. When I try to run the 
application on RHEL 5 where in the OpenSSL version is 0.9.8b. I am getting 
following error. 
 
======================= Error Log ============================
 
*** glibc detected *** /bin/foo: free(): invalid pointer: 0x0a0fbfd0 ***
======= Backtrace: =========
/lib/libc.so.6[0xc3ab16]
/lib/libc.so.6(cfree+0x90)[0xc3e030]
/bin/foo[0x81081c3]
/bin/foo[0x8107031]
/bin/foo[0x805a87f]
/bin/foo[0x805b34d]
/bin/foo[0x8106bc5]
/bin/foo[0x8103dd8]
/bin/foo[0x8118335]
/bin/foo[0x8119c1e]
/bin/foo[0x8115c8f]
/bin/foo[0x81292e3]
/bin/foo[0x810263f]
/bin/foo[0x805c767]
/bin/foo[0x814b3fc]
/lib/libpthread.so.0[0x11545b]
/lib/libc.so.6(clone+0x5e)[0xca2c4e]
======= Memory map: ========
00110000-00123000 r-xp 00000000 08:01 4784177    /lib/libpthread-2.5.so
00123000-00124000 r-xp 00012000 08:01 4784177    /lib/libpthread-2.5.so
00124000-00125000 rwxp 00013000 08:01 4784177    /lib/libpthread-2.5.so
00125000-00127000 rwxp 00125000 00:00 0 
00127000-00168000 r-xp 00000000 08:01 4784342    /lib/libssl.so.0.9.8b
00168000-0016c000 rwxp 00040000 08:01 4784342    /lib/libssl.so.0.9.8b
0016c000-00198000 r-xp 00000000 08:01 370418     /usr/lib/libgssapi_krb5.so.2.2
00198000-00199000 rwxp 0002c000 08:01 370418     /usr/lib/libgssapi_krb5.so.2.2
0019a000-001bf000 r-xp 00000000 08:01 4784161    /lib/libm-2.5.so
001bf000-001c0000 r-xp 00024000 08:01 4784161    /lib/libm-2.5.so
001c0000-001c1000 rwxp 00025000 08:01 4784161    /lib/libm-2.5.so
001c3000-001dd000 r-xp 00000000 08:01 4784146    /lib/ld-2.5.so
001dd000-001de000 r-xp 00019000 08:01 4784146    /lib/ld-2.5.so
001de000-001df000 rwxp 0001a000 08:01 4784146    /lib/ld-2.5.so
001df000-002fb000 r-xp 00000000 08:01 4784340    /lib/libcrypto.so.0.9.8b
002fb000-0030d000 rwxp 0011c000 08:01 4784340    /lib/libcrypto.so.0.9.8b
0030d000-00311000 rwxp 0030d000 00:00 0 
00311000-00320000 r-xp 00000000 08:01 4784179    /lib/libresolv-2.5.so
00320000-00321000 r-xp 0000e000 08:01 4784179    /lib/libresolv-2.5.so
00321000-00322000 rwxp 0000f000 08:01 4784179    /lib/libresolv-2.5.so
00322000-00324000 rwxp 00322000 00:00 0 
00324000-00326000 r-xp 00000000 08:01 4784215    /lib/libkeyutils-1.2.so
00326000-00327000 rwxp 00001000 08:01 4784215    /lib/libkeyutils-1.2.so
00327000-00330000 r-xp 00000000 08:01 4784169    /lib/libnss_files-2.5.so
00330000-00331000 r-xp 00008000 08:01 4784169    /lib/libnss_files-2.5.so
00331000-00332000 rwxp 00009000 08:01 4784169    /lib/libnss_files-2.5.so
00332000-00336000 r-xp 00000000 08:01 4784167    /lib/libnss_dns-2.5.so
00336000-00337000 r-xp 00003000 08:01 4784167    /lib/libnss_dns-2.5.so
00337000-00338000 rwxp 00004000 08:01 4784167    /lib/libnss_dns-2.5.so
008f5000-00985000 r-xp 00000000 08:01 370432     /usr/lib/libkrb5.so.3.3
00985000-00988000 rwxp 0008f000 08:01 370432     /usr/lib/libkrb5.so.3.3
00988000-0099e000 r-xp 00000000 08:01 4784319    /lib/libselinux.so.1
0099e000-009a0000 rwxp 00015000 08:01 4784319    /lib/libselinux.so.1
009a0000-009db000 r-xp 00000000 08:01 4784224    /lib/libsepol.so.1
009db000-009dc000 rwxp 0003a000 08:01 4784224    /lib/libsepol.so.1
009dc000-009e6000 rwxp 009dc000 00:00 0 
009e6000-009f1000 r-xp 00000000 08:01 4784130    
/lib/libgcc_s-4.1.2-20080102.so.1
009f1000-009f2000 rwxp 0000a000 08:01 4784130    
/lib/libgcc_s-4.1.2-20080102.so.1
00b04000-00b0b000 r-xp 00000000 08:01 4784181    /lib/librt-2.5.so
00b0b000-00b0c000 r-xp 00006000 08:01 4784181    /lib/librt-2.5.so
00b0c000-00b0d000 rwxp 00007000 08:01 4784181    /lib/librt-2.5.so
00bbd000-00bbe000 r-xp 00bbd000 00:00 0          [vdso]
00bd2000-00d0f000 r-xp 00000000 08:01 4784153    /lib/libc-2.5.so
00d0f000-00d11000 r-xp 0013d000 08:01 4784153    /lib/libc-2.5.so
00d11000-00d12000 rwxp 0013f000 08:01 4784153    /lib/libc-2.5.so
00d12000-00d15000 rwxp 00d12000 00:00 0 
00deb000-00df3000 r-xp 00000000 08:01 370434     /usr/lib/libkrb5support.so.0.1
00df3000-00df4000 rwxp 00007000 08:01 370434     /usr/lib/libkrb5support.so.0.1
00e09000-00e1b000 r-xp 00000000 08:01 364812     /usr/lib/libz.so.1.2.3
00e1b000-00e1c000 rwxp 00011000 08:01 364812     /usr/lib/libz.so.1.2.3
00ee8000-00eea000 r-xp 00000000 08:01 4784331    /lib/libcom_err.so.2.1
00eea000-00eeb000 rwxp 00001000 08:01 4784331    /lib/libcom_err.so.2.1
00f45000-00f47000 r-xp 00000000 08:01 4784159    /lib/libdl-2.5.so
00f47000-00f48000 r-xp 00001000 08:01 4784159    /lib/libdl-2.5.so
00f48000-00f49000 rwxp 00002000 08:01 4784159    /lib/libdl-2.5.so
00f4b000-00f70000 r-xp 00000000 08:01 370422     /usr/lib/libk5crypto.so.3.1
00f70000-00f71000 rwxp 00025000 08:01 370422     /usr/lib/libk5crypto.so.3.1
08048000-08193000 r-xp 00000000 08:01 387035     /bin/foo
08193000-0819b000 rw-p 0014b000 08:01 387035     /bin/foo
b64d5000-b64d6000 ---p b64d5000 00:00 0 
b64d6000-b6ed6000 rw-p b64d6000 00:00 0 
b7f61000-b7f62000 rw-p b7f61000 00:00 0 
bfa96000-bfaba000 rw-p bfa96000 00:00 0          [stack]
 
 
Can somebody please let me know how to address this OpenSSL version 
in-compatibility problem? Basically, I request to know whether OpenSSL does not 
support backward compatibility or backward compatibility is broken?
 
 
Summarizing:.
 

Application “foo” build on SUSE 9 implicit dynamic link to OpenSSL-0.9.7d. 
“foo” runs without any problem on SUSE 9 which has OpenSSL version 0.9.7d 
Try running the same “foo” on RHEL 5 – OpenSSL version on RHEL 5 is 0.9.8b. 
“foo” fails to come up with above mentioned errors on  RHEL 5. It seems that 
application “foo” fails to work with higher version of OpenSSL 
 
Request for suggestions.
 
Thank you,
 
Regards,
Shridhar GR


      

Reply via email to