ID:               41889
 Updated by:       [EMAIL PROTECTED]
 Reported By:      roman dot vanicek at gmail dot com
-Status:           Open
+Status:           Feedback
 Bug Type:         Reproducible crash
 Operating System: Ubuntu Linux 6.06
 PHP Version:      5.2.3
 New Comment:

>Last notice: If pdo_oci is compiled statically into PHP and oci8
>dynamically (it refuses to be built static)
Huh? I _never_ build it as dynamic extension.





Previous Comments:
------------------------------------------------------------------------

[2007-07-03 20:52:41] roman dot vanicek at gmail dot com

Yes, I think you are right. It is probably some clash between the
specific versions of Apache/mod_ssl, OpenSSL, PHP/OCI modules and
Instantclient.

Even though I don't understand, why this clash isn't reported during
the linking or the loading of the libraries.

I have tried with the newest instantclient and there is no change.

Just to summarize, I have:
Ubuntu Linux 6.06
Apache 1.3.34 with mod_ssl 2.8.25
OpenSSL 0.9.8a
PHP 5.3.2 with oci8.so a pdo_oci.so as dynamic modules at the same
time
Instantclient 10.1.0.5.

Last notice: If pdo_oci is compiled statically into PHP and oci8
dynamically (it refuses to be built static), it works fine. I think I
can accept this as a workaround.

And if there is someone else unfortunate enough to meet the same
circumstances as me, i hope this helps him at least a little bit ;-)

------------------------------------------------------------------------

[2007-07-03 16:02:08] [EMAIL PROTECTED]

This looks like a symbol clash between OpenSSL and Oracle Client.
Try updating Oracle Client and searching their bug database.

------------------------------------------------------------------------

[2007-07-03 15:54:02] roman dot vanicek at gmail dot com

Yes, these extensions are built together with the main PHP engine. I am
using libssl.so.0.9.8 that comes with Ubuntu 6.06. I think that Oracle
(instant-client) is not linked to openssl (at least not dynamically).
For details see below. Anyhow, with CLI the sames script works without
problems (both oci modules loaded).

ldd /root/libphp5.so
 linux-gate.so.1 =>  (0xffffe000)
 libcrypt.so.1 => /lib/tls/i686/cmov/libcrypt.so.1 (0xb7aa2000)
 librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb7a9a000)
 libfbclient.so.2 => /root/build/bin/firebird/lib/libfbclient.so.2
(0xb7a09000)
 libssl.so.0.9.8 => /usr/lib/i686/cmov/libssl.so.0.9.8 (0xb79cb000)
 libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8
(0xb789c000)
 libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0xb7889000)
 libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7867000)
 libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7864000)
 libnsl.so.1 => /lib/tls/i686/cmov/libnsl.so.1 (0xb784f000)
 libz.so.1 => /usr/lib/libz.so.1 (0xb783a000)
 libiodbc.so.2 => /usr/lib/libiodbc.so.2 (0xb77f7000)
 libxml2.so.2 => /usr/lib/libxml2.so.2 (0xb76e8000)
 libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb75b9000)
 libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb75a7000)
 /lib/ld-linux.so.2 (0x80000000)
 libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0xb74ec000)
 libncurses.so.5 => /lib/libncurses.so.5 (0xb74ab000)
 libiodbcinst.so.2 => /usr/lib/libiodbcinst.so.2 (0xb7499000)
 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb748f000)



ldd oci8.so
 linux-gate.so.1 =>  (0xffffe000)
 libclntsh.so.10.1 => /usr/local/lib/oracli/libclntsh.so.10.1
(0xb7189000)
 libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7054000)
 libnnz10.so => /usr/local/lib/oracli/libnnz10.so (0xb6e50000)
 libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb6e4c000)
 libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb6e2a000)
 libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb6e18000)
 libnsl.so.1 => /lib/tls/i686/cmov/libnsl.so.1 (0xb6e03000)
 /lib/ld-linux.so.2 (0x80000000)

ldd pdo_oci.so
 linux-gate.so.1 =>  (0xffffe000)
 libclntsh.so.10.1 => /usr/local/lib/oracli/libclntsh.so.10.1
(0xb7194000)
 libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb705f000)
 libnnz10.so => /usr/local/lib/oracli/libnnz10.so (0xb6e5b000)
 libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb6e57000)
 libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb6e35000)
 libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb6e23000)
 libnsl.so.1 => /lib/tls/i686/cmov/libnsl.so.1 (0xb6e0e000)
 /lib/ld-linux.so.2 (0x80000000)

------------------------------------------------------------------------

[2007-07-03 15:42:30] [EMAIL PROTECTED]

Are each and every one of those extensions linked with same SSL
libraries? And none of them is linked with static ssl libs?

------------------------------------------------------------------------

[2007-07-03 15:38:16] roman dot vanicek at gmail dot com

I have more details and the strack-trace (below). The problem appears
only if there are both oci8.so and pdo_oci.so loaded as dynamic modules.
If there is none of them loaded or just one of them present, it works
ok. When there are both of them, it segfaults. The static linking i have
not tried. 

The stack trace (--disable-debug).

#3  0xb7f4eb30 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
#4  0xb65c2115 in __do_global_dtors_aux ()
   from /usr/local/lib/oracli/libclntsh.so.10.1
#5  0xb71120be in _fini () from
/usr/local/lib/oracli/libclntsh.so.10.1
#6  0xb7f4f8f4 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
#7  0xb7cd75d7 in exit () from /lib/tls/i686/cmov/libc.so.6
#8  0x0805dd58 in ap_start_restart ()
#9  0x0805f070 in ap_update_child_status ()
#10 0x08060e0f in main ()
(gdb)

The stack trace (--enable-debug).
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1211394368 (LWP 13339)]
0xb7f593d3 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
(gdb) bt
#0  0xb7f593d3 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
#1  0xb7f597c9 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
#2  0xb7f5cbf6 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
#3  0xb7f5cb30 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
#4  0xb6303055 in A_X931RandomContextDestroy ()
   from /usr/local/lib/oracli/libnnz10.so
#5  0xb7c1f7d6 in ssl3_get_key_exchange ()
   from /usr/lib/i686/cmov/libssl.so.0.9.8
#6  0xb7c22207 in ssl3_connect () from
/usr/lib/i686/cmov/libssl.so.0.9.8
#7  0xb7c345f4 in SSL_connect () from
/usr/lib/i686/cmov/libssl.so.0.9.8
#8  0xb7c287ce in ssl23_connect () from
/usr/lib/i686/cmov/libssl.so.0.9.8
#9  0xb7c345f4 in SSL_connect () from
/usr/lib/i686/cmov/libssl.so.0.9.8
#10 0xb19a782e in php_openssl_enable_crypto (stream=0x8115de4,
    sslsock=0x8115d80, cparam=0xbfe5fd30)
    at /root/build/php/php-5.2.3/ext/openssl/xp_ssl.c:418
#11 0xb19a72a5 in php_openssl_sockop_set_option (stream=0x8115de4,
option=8,
    value=0, ptrparam=0xbfe5fd30)
    at /root/build/php/php-5.2.3/ext/openssl/xp_ssl.c:666
#12 0xb1c13631 in _php_stream_set_option (stream=0x8115de4, option=8,
value=0,
    ptrparam=0xbfe5fd30)
    at /root/build/php/php-5.2.3/main/streams/streams.c:1133
#13 0xb1c2132e in php_stream_xport_crypto_enable (stream=0x8115de4,
activate=1)
    at /root/build/php/php-5.2.3/main/streams/transports.c:371
---Type <return> to continue, or q <return> to quit---

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/41889

-- 
Edit this bug report at http://bugs.php.net/?id=41889&edit=1

Reply via email to