[Date Prev][Date Next] [Chronological] [Thread] [Top]

ldap_modrdn vs. ldap_modrdn2 in ldap-c-api-01.txt

I just noticed the ldap_modrdn prototype/semantics used in the draft:
	int ldap_modrdn(LDAP *ld, char* dn, char* newrdn, int deleteoldrdn)

which matches RFC-1823 BUT differs from existing common API usage of:
	int ldap_modrdn(LDAP *ld, char* dn, char* newrdn);

(which generally have an ldap_modrdn2() with the deleteoldrdn argument).

Given this groups previous API change discussions which tend towards
"don't break existing implementations", I don't quite understand why
that argument has not been applied here.

I recommend that U-Mich v3.3 prototypes/semantics ldap_modrdn()/ldap_modrdn2()
be added.  I believe this to consistent with common and historical usage and
should not be changed without just cause.

Existing APIs which use U-Mich v3.3 prototype instead of RFC1823 prototype:
	Netscape (Mozilla) Directory SDK
	Microsoft LDAP SDK

Does anyone have a publically released API which actually uses the RFC-1823
prototype and semantics for ldap_modrdn?