ID:               45886
 Updated by:       [EMAIL PROTECTED]
 Reported By:      rocko823 at gmail dot com
-Status:           Open
+Status:           Feedback
 Bug Type:         LDAP related
 Operating System: Solaris 10 SPARC
 PHP Version:      5.2.6
 New Comment:

Because some oracle libs contain their own implementation of ldap
functions and conflict with openldap ones. And IIRC, Solaris also has
it's own ldap stuff (sometimes) so in worst case you have 3 different
set of libs around and the mess is ready. 

You could try compiling PHP ldap using the oracle libs:

--with-ldap=/local/instantclient_10_2/

I'm not sure if this instantclient thing has the ldap stuff, but I
guess it's worth trying..


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

[2008-08-22 16:23:42] rocko823 at gmail dot com

Both apache and PHP are linked against a compiled version of openssl
0.9.8h

Unfortunately I cannot disable OCI8 as the projects on this server
require Oracle database access.  I have attempted to recreate this
problem on a test Intel machine running Solaris 10 but the problem does
not occur.  If I can get my hands on a test Sparc Solaris 10 Box I can
try disabling OCI8 to see if that has any effect.  However I really need
both modules running.  Why would OCI8 have any effect on the LDAP
module?

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

[2008-08-21 20:53:54] [EMAIL PROTECTED]

Try disabling oci8. And check also that Apache is linked with same
Openssl libs as you're linking PHP with.

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

[2008-08-21 20:14:11] rocko823 at gmail dot com

Description:
------------
PHP 5.2.6 with Apache 2.2.9 with this configure: './configure'
'--with-apxs2=/web/apache/bin/apxs' '--with-mysql=/local/mysql32'
'--with-gd' '--with-jpeg-dir=/usr/local/' '--with-zlib'
'--with-oci8=instantclient,/local/instantclient_10_2' '--with-mcrypt'
'--with-ldap' '--with-ldap-sasl' '--with-openssl=/usr/local/ssl'

with openldap 2.3.39

When ldap_connect then ldap_bind is run it fails with ldap error "Out
of memory" only when run under Apache 2 module, with the command line
client it runs correctly.

Reproduce code:
---------------
ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7);
$ds=ldap_connect("ldap://server";);

if ($ds) {
    [EMAIL PROTECTED]($ds, "user", "password");
    if ($r) {
       echo "success";
    } else {
       echo "fail:" . ldap_error($ds);
    }
}


Expected result:
----------------
PHP connects and binds to the LDAP server and returns success

Actual result:
--------------
PHP returns ldap error "Out of memory".  PHP doesn't even try to
connect to the LDAP server.  In the apache error logs I see these ldap
debugging messages:
ldap_create
ldap_url_parse_ext(ldap://server)
ldap_bind_s
ldap_simple_bind_s
ldap_sasl_bind_s
ldap_sasl_bind

and it stops there where when run with the command line and a success
there are many more lines


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


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

Reply via email to