Lorsque je veux supprimer une entrée dans mon LDAP, le log d'OpenLDAP me
donne ceci :
>>> dnPrettyNormal: <inetOrgPerson,cn=ZeGilooo,o=tech,dc=myldap,dc=com>
=> ldap_bv2dn(inetOrgPerson,cn=ZeGilooo,o=tech,dc=myldap,dc=com,0)
<= ldap_bv2dn(inetOrgPerson,cn=ZeGilooo,o=tech,dc=myldap,dc=com,0)=84
do_search: invalid dn (inetOrgPerson,cn=ZeGilooo,o=tech,dc=myldap,dc=com)
J'utilise pourtant la même syntaxe et les mêmes ID & mot de passe que pour
modifier la valeur d'un attribut (ce qui marche bien)
voici mon code :
...
hr = ADsGetObject(pszSRVLdap, IID_IADs, (void**)&pADs);
hr = pADs->get_Schema(&bstrSchema);
if(FAILED(hr)) {goto Cleanup;}
hr = ADsGetObject(bstrSchema, IID_IADsClass, (void**)&pCls);
if(FAILED(hr)) {goto Cleanup;}
pCls->get_Class(&bstrClass);
pCls->get_Name(&bstrRelName);
hr = ADsOpenObject(pszSRVLdap, pszUser, pszPassword, ADS_SERVER_BIND,
IID_IADsContainer, (void**) &pCont);
if (SUCCEEDED(hr)) // hr =
S_OK jusque ici
{
hr = pCont->Delete(bstrClass, bstrRelName);
if ( !SUCCEEDED(hr) ){goto Cleanup;} // ici, hr = Une
syntaxe DN non valide a été spécifiée
}
else
{goto Cleanup;}
...
Si quelqu'un a une idée de ce j'ai merdu... :-(
Merci beaucoup de votre aide,
ZeGilooo.