Author: nkinder
Update of /cvs/dirsec/ldapserver/ldap/servers/plugins/memberof In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv4675
Modified Files: memberof.c Log Message: Resolves: 443241 Summary: Fixed issues with cleanup task not adding indirect memberships.
Index: memberof.c =================================================================== RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/memberof/memberof.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- memberof.c 21 Apr 2008 17:45:15 -0000 1.7 +++ memberof.c 9 Jun 2008 21:43:59 -0000 1.8 @@ -2188,9 +2188,9 @@ /* memberof_fix_memberof_callback() * Add initial and/or fix up broken group list in entry * - * 1. Make sure direct membership groups are in the entry - * 2. Add all groups that current group list allows through nested membership - * 3. Trim groups that have no relationship to entry + * 1. Remove all present memberOf values + * 2. Add direct group membership memberOf values + * 3. Add indirect group membership memberOf values */ int memberof_fix_memberof_callback(Slapi_Entry *e, void *callback_data) { @@ -2198,14 +2198,12 @@ char *dn = slapi_entry_get_dn(e); memberof_add_groups data = {dn, dn};
- /* step 1. and step 2. */ + /* step 1 */ + slapi_entry_attr_delete(e, MEMBEROF_ATTR); + + /* step 2 and 3 */ rc = memberof_call_foreach_dn(0, dn, MEMBEROF_GROUP_ATTR, memberof_add_groups_search_callback, &data); - if(0 == rc) - { - /* step 3. */ - rc = memberof_test_membership_callback(e, 0); - }
return rc; }
389-commits@lists.fedoraproject.org