Page MenuHomePhorge

fixing recursive deletion of domains
ClosedPublic

Authored by pokorra on Jun 16 2015, 8:10 AM.
Tags
None
Referenced Files
F10369783: D23.id58.diff
Sat, Sep 30, 6:36 PM
F10369777: D23.id.diff
Sat, Sep 30, 6:36 PM
F10369768: D23.diff
Sat, Sep 30, 6:36 PM
Unknown Object (File)
Sat, Sep 30, 6:51 AM
Unknown Object (File)
Fri, Sep 29, 3:09 AM
Unknown Object (File)
Tue, Sep 26, 3:04 PM
Unknown Object (File)
Sun, Sep 10, 10:44 PM
Unknown Object (File)
Apr 26 2018, 8:57 AM

Details

Summary

recursive deletion: need to find and delete objects with objectclass ldapsubentry as well (#5100).
This is for example needed when deleting a domain, for the role kolab-admin which has class ldapsubentry

Diff Detail

Repository
rPNL php-Net_LDAP3
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

pokorra retitled this revision from to fixing recursive deletion of domains.
pokorra updated this object.
pokorra edited the test plan for this revision. (Show Details)
pokorra set the repository for this revision to rPNL php-Net_LDAP3.
pokorra added a subscriber: vanmeeuwen.

Jeroen, it seems I don't have commit permissions on php-Net_LDAP3.
Can you please commit that change?
Or give me permissions, then I can do that myself...

hmm..., objectclass=* should already catch objects with ldapsubentry class, no?

that is the problem, which took me so long to find.

It seems objectclass=nsTombstone and objectclass=ldapsentry (and probably others as well) are not part of objectclass=*

You can also test this with ldap_search on the commandline, it behaves the same:

different output from
ldapsearch -x -h localhost -D "cn=Directory Manager" -w "$pwd" -b $domain "(|(objectclass=*)(objectclass=ldapsubentry))"
and
ldapsearch -x -h localhost -D "cn=Directory Manager" -w "$pwd" -b $domain "(objectclass=*)"

Ok, thanks for the explanation. Jeroen should see this, anyway.

vanmeeuwen edited edge metadata.
In D23#555, @machniak wrote:

hmm..., objectclass=* should already catch objects with ldapsubentry class, no?

It doesn't, for the entries with an ldapsubentry objectclass are operational objects.

In D23#556, @pokorra wrote:

that is the problem, which took me so long to find.

It seems objectclass=nsTombstone and objectclass=ldapsentry (and probably others as well) are not part of objectclass=*

objectclass=nsTombstone should, though, be avoided.

This revision is now accepted and ready to land.Jun 25 2015, 9:02 AM

how does the landing of the change work?
anything for me to do?

This revision was automatically updated to reflect the committed changes.