FreeBSD Port: php5-mhash-5.2.11_1
Raphael Becker
rabe at uugrn.org
Thu Dec 17 03:11:25 UTC 2009
Hello David,
On Thu, Dec 17, 2009 at 01:06:28PM +1100, David N wrote:
> Thats a long list of extensions,
>
> try adding one of them to the end of extensions.ini one by one.
> The ordering of it matters, you need to re-arrange the order in which
> the extensions are loaded. You may need to play around with it until
> it stops core dumping.
I re-enabled at the end of extensions.ini:
extension=mysqli.so
extension=pdo_mysql.so
extension=curl.so
extension=imap.so
extension=ldap.so
extension=ftp.so
extension=openssl.so
I wasn't still able to find a working location for
extension=mhash.so
... coredumps regardless of any position in extensions.ini, from top to
bottom.
It's - again - kind of noticeable that all of this "complicated" modules
are linkend against openssl:
[root at freebsd /usr/local/lib/php/20060613]# for SO in ./*.so ; do
if ldd $SO | grep -i ssl >/dev/null; then echo $SO; fi ; done
./curl.so
./ftp.so
./imap.so
./ldap.so
./mysql.so
./mysqli.so
./openssl.so
./pdo_mysql.so
... hmm, ./mysql.so was inconspicuous before *strange*
Lets have a closer look on all modules depending on *ssl*:
[root at freebsd /usr/local/lib/php/20060613]# for SO in ./*.so ; do
if ldd $SO | grep -i ssl >/dev/null; t en echo $SO; fi ; done |
xargs ldd
---------------------------------------------------
./curl.so:
libcurl.so.5 => /usr/local/lib/libcurl.so.5 (0x68190000)
libidn.so.16 => /usr/local/lib/libidn.so.16 (0x68300000)
libssh2.so.1 => /usr/local/lib/libssh2.so.1 (0x681d9000)
libssl.so.5 => /usr/local/lib/libssl.so.5 (0x68330000) !!!!
libcrypto.so.5 => /usr/local/lib/libcrypto.so.5 (0x68374000) !!!!
libz.so.4 => /lib/libz.so.4 (0x684c4000)
libc.so.7 => /lib/libc.so.7 (0x68080000)
libintl.so.8 => /usr/local/lib/libintl.so.8 (0x684d6000)
libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x684df000)
libthr.so.3 => /lib/libthr.so.3 (0x685d5000)
./ftp.so:
libssl.so.5 => /usr/local/lib/libssl.so.5 (0x6818d000) !!!!
libcrypto.so.5 => /usr/local/lib/libcrypto.so.5 (0x68300000) !!!!
libc.so.7 => /lib/libc.so.7 (0x68080000)
libz.so.4 => /lib/libz.so.4 (0x681d1000)
libthr.so.3 => /lib/libthr.so.3 (0x681e3000)
./imap.so:
libssl.so.5 => /usr/local/lib/libssl.so.5 (0x68199000) !!!!
libcrypto.so.5 => /usr/local/lib/libcrypto.so.5 (0x68300000) !!!!
libc-client4.so.9 => /usr/local/lib/libc-client4.so.9 (0x68447000)
libcrypt.so.4 => /lib/libcrypt.so.4 (0x681dd000)
libpam.so.4 => /usr/lib/libpam.so.4 (0x681f6000)
libc.so.7 => /lib/libc.so.7 (0x68080000)
libz.so.4 => /lib/libz.so.4 (0x68548000)
libthr.so.3 => /lib/libthr.so.3 (0x6855a000)
./ldap.so:
libldap-2.4.so.7 => /usr/local/lib/libldap-2.4.so.7 (0x6818c000)
liblber-2.4.so.7 => /usr/local/lib/liblber-2.4.so.7 (0x681c6000)
libc.so.7 => /lib/libc.so.7 (0x68080000)
libssl.so.5 => /usr/local/lib/libssl.so.5 (0x68300000) !!!!
libcrypto.so.5 => /usr/local/lib/libcrypto.so.5 (0x68344000) !!!!
libz.so.4 => /lib/libz.so.4 (0x681d2000)
libthr.so.3 => /lib/libthr.so.3 (0x6848b000)
./mysql.so: (***)
libmysqlclient.so.15 => /usr/local/lib/mysql/libmysqlclient.so.15 (0x6818d000)
libc.so.7 => /lib/libc.so.7 (0x68080000)
libcrypt.so.4 => /lib/libcrypt.so.4 (0x68300000)
libm.so.5 => /lib/libm.so.5 (0x68319000)
libssl.so.5 => /usr/lib/libssl.so.5 (0x6832e000) !!!!
libcrypto.so.5 => /lib/libcrypto.so.5 (0x6836f000) !!!!
libz.so.4 => /lib/libz.so.4 (0x684c8000)
./mysqli.so:
libmysqlclient.so.15 => /usr/local/lib/mysql/libmysqlclient.so.15 (0x6819a000)
libz.so.4 => /lib/libz.so.4 (0x68300000)
libcrypt.so.4 => /lib/libcrypt.so.4 (0x68312000)
libm.so.5 => /lib/libm.so.5 (0x6832b000)
libssl.so.5 => /usr/local/lib/libssl.so.5 (0x68340000) !!!!
libcrypto.so.5 => /usr/local/lib/libcrypto.so.5 (0x6838d000) !!!!
libc.so.7 => /lib/libc.so.7 (0x68080000)
libthr.so.3 => /lib/libthr.so.3 (0x684d4000)
./openssl.so:
libssl.so.5 => /usr/local/lib/libssl.so.5 (0x68196000) !!!!
libcrypto.so.5 => /usr/local/lib/libcrypto.so.5 (0x68300000) !!!!
libc.so.7 => /lib/libc.so.7 (0x68080000)
libz.so.4 => /lib/libz.so.4 (0x681da000)
libthr.so.3 => /lib/libthr.so.3 (0x68447000)
./pdo_mysql.so:
libmysqlclient.so.15 => /usr/local/lib/mysql/libmysqlclient.so.15 (0x68189000)
libz.so.4 => /lib/libz.so.4 (0x681ea000)
libcrypt.so.4 => /lib/libcrypt.so.4 (0x68300000)
libm.so.5 => /lib/libm.so.5 (0x68319000)
libssl.so.5 => /usr/local/lib/libssl.so.5 (0x6832e000) !!!!
libcrypto.so.5 => /usr/local/lib/libcrypto.so.5 (0x6837b000) !!!!
libc.so.7 => /lib/libc.so.7 (0x68080000)
libthr.so.3 => /lib/libthr.so.3 (0x684c2000)
---------------------------------------------------
All modules but mysql.so will load libssl.so.5 from
/usr/local/lib/libssl.so.5, mysql.so is linked to
libssl.so.5 => /usr/lib/libssl.so.5
This is kind of interesting!
If disable(!) ./mysql.so from extensions.ini, php will segfault again!
So what seems to happen? libssl.so.5 get loaded by mysql.so and won't
get loaded by one of the following modules, which are "hard-linked" to
/usr/local/lib/libssl.so.5
Question: how does "mysql.so" link against another libssl.so.5 than
"mysqli.so" would? Is this the RPATH-thing?
Am I right with my assumption about mysql.so links to
/usr/lib/libssl.so.5 and therefore any other module linking to
libssl.so.5 won't link to /usr/local/lib/libssl.so.5 (because it's
already provided/loaded by /usr/lib/libssl.so.5)?
If so why does /usr/local/lib/libssl.so.5 segfault?
mhash isn't explained here. This seems to be another strange thing.
I'd appreciate any help and background information on this
"libssl.so.5/libcrypto.so.5 - thing".
With best regards
Raphael
--
Raphael Becker <rabe at uugrn.org> http://rabe.uugrn.org/
https://www.xing.com/profile/Raphael_Becker
GnuPG: E7B2 1D66 3AF2 EDC7 9828 6D7A 9CDA 3E7B 10CA 9F2D
.........|.........|.........|.........|.........|.........|.........|..
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20091217/457e3d93/attachment.pgp
More information about the freebsd-ports
mailing list