ID: 14618 Updated by: venaas Reported By: [EMAIL PROTECTED] Old Status: Open Status: Closed Bug Type: LDAP related Operating System: Solaris 2.8 PHP Version: 4.1.0 Assigned To: venaas New Comment:
I decided to make a more generic check for ldap_parse_reference(). Could you please test with latest CVS or snapshot? Reopen this if there still are problems. Previous Comments: ------------------------------------------------------------------------ [2001-12-23 10:00:55] [EMAIL PROTECTED] /usr/include/ldap.h contains on Solaris 8 #define LDAP_VENDOR_NAME "Sun Microsystems Inc." #define LDAP_VENDOR_VERSION 400 In Solaris 9, LDAP_VENDOR_VERSION is defined as 500. So this can be used to identify the correct version. After replacing the ldap_parse_reference() call in ext/ldap/ldap.c with RETURN_FALSE, PHP compiled. That means that all other functions are present. We have filed that problem to Sun as well. ------------------------------------------------------------------------ [2001-12-23 09:09:47] [EMAIL PROTECTED] Yes, this is certainly a SUN bug. LDAP_API_VERSION 2004 should mean version 4 of the draft-ietf-ldapext-ldap-c-api draft, and it includes ldap_parse_reference(). I have a couple of questions for you. What are LDAP_VENDOR_NAME and LDAP_VENDOR_VERSION defined as? Are there other macros you think could be used to detect that we are using the Solaris 8 lib? Could you try to check what else is missing? Is ldap_parse_reference() really the only one? ------------------------------------------------------------------------ [2001-12-20 05:54:38] [EMAIL PROTECTED] This is the same problem as in Bug #11873 Configure options: --enable-force-cgi-redirect --enable-trans-sid --enable-memory-limit --with-ldap Operating system: SunOS myHost 5.8 Generic_108528-12 sun4u sparc SUNW,Ultra-250 The original Solaris LDAP library is used, no other library is installed. -rwxr-xr-x 1 root bin 224200 Jan 5 2000 /usr/lib/libldap.so.4* There is no ldap_parse_reference() in this library. (Solaris 9 comes with libldap.so.5 including ldap_parse_reference() ). LDAP_API_VERSION is defined as 2004 (2005 on Solaris 9) in /usr/include/ldap.h HAVE_NSLDAP is not defined in main/config_php.h I looked for references on the web about what API function has to be present in the different API versions. It's definitely possible that Sun wrongly labeled their library in Solaris 8 with 2004 but didn't supply the needed ldap_parse_reference() method. But it would be useful to make PHP ignore that problem and undefine ldap_parse_reference() on Solaris 8 or at least check for its existance during configure. ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=14618&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]