moved from Incoming to Development
changed notes changed state Open to Feedback
Full_Name: Alan Clark Version: devel OS: Linux / NetWare / WinNT URL: ftp://ftp.openldap.org/incoming/aclark-000608 The enclosed patch cleans up externally visible function declarations in libldap and liblber. +++++++++++++++++++++++++++++++++++++++++++++++++++++++ Please note the following items that still need to be fixed: ldap_is_ldap_url(), ldap_is_ldaps_url() are declared in ldap.h but ldap_is_ldapi_url() is not. ldap_rename_ext(), and ldap_rename_ext_s are defined in ldap.h but no code exists to support these function. ldap_parent_dn(), ldap_relative_dn(), ldap_normalize_dn() are defined in ldap.h but no code exists to support these function. ldap_unbind_ext_s() is defined in ldap.h but no code exists to support this function. ber_print_error() is defined in lber.h. The function in the code is ber_error_print. +++++++++++++++++++++++++++++++++++++++++++++++++++++++ The following is a brief description of the changes: The header file libldap.h declares functions with the form LIBLDAP_F( char *) ldap_err2string LDAP_P(( int err )); But the function in the code is declared as: char *ldap_errstring( int err) where it should be LIBLDAP_F(char *) ldap_errstring( int err) I seemed to me that only externally visible functions should be declared in this way in libldap and liblber. If I am wrong, slap my hand. This patch fixes all functions in the declared in the external headers ldap.h and lber.h. I also created a new macro LIBLBER_V for variables which may need a slightly different syntax than functions. Currently the only external variables are in liblber. I removed the LIBLDAP_F and LIBLBER_F from the headers ldap-int.h and lber-int.h and left the actual functions unchanged. The code also has the benefical side effect for win32 that applications compiling with the headers get their ldap calls compiled with the calling convention that the library is built with. -Steve Sonntag -Alan Clark Manager Novell Directory Services
moved from Development to Software Enhancements
moved from Software Enhancements to Development
moved from Development to Contrib
moved from Contrib to Development
changed notes changed state Feedback to Closed
Dave to resolve