|
926 |
if s4_group_attrs: |
926 |
if s4_group_attrs: |
927 |
s4_members = self.get_s4_members(s4_group_dn, s4_group_attrs) |
927 |
s4_members = self.get_s4_members(s4_group_dn, s4_group_attrs) |
928 |
group_cache = self.group_members_cache_con[s4_group_dn.lower()] |
928 |
group_cache = self.group_members_cache_con[s4_group_dn.lower()] |
929 |
group_cache.extend(m.lower() for m in s4_members) |
929 |
group_cache.extend([m.lower() for m in s4_members]) |
930 |
|
930 |
|
931 |
ud.debug(ud.LDAP, ud.INFO, "__init__: self.group_members_cache_con: %s" % self.group_members_cache_con) |
931 |
ud.debug(ud.LDAP, ud.INFO, "__init__: self.group_members_cache_con: %s" % self.group_members_cache_con) |
932 |
|
932 |
|
|
1502 |
return True # nothing left to do |
1502 |
return True # nothing left to do |
1503 |
else: |
1503 |
else: |
1504 |
s4_members = self.get_s4_members(s4_group_object['dn'], ldap_object_s4_group) |
1504 |
s4_members = self.get_s4_members(s4_group_object['dn'], ldap_object_s4_group) |
1505 |
s4_members = map(compatible_modstring, s4_members) |
|
|
1506 |
object_dn_modstring = compatible_modstring(object['dn']) |
1505 |
object_dn_modstring = compatible_modstring(object['dn']) |
|
|
1506 |
object_dn_modstring_lower = object_dn_modstring.lower() |
1507 |
|
1507 |
|
1508 |
s4_members_lower = map(str.lower, s4_members) |
1508 |
for member in s4_members: |
1509 |
if object_dn_modstring.lower() not in s4_members_lower: # add as member |
1509 |
if object_dn_modstring_lower == compatible_modstring(member).lower(): |
|
|
1510 |
break |
1511 |
else: |
1510 |
s4_members.append(object_dn_modstring) |
1512 |
s4_members.append(object_dn_modstring) |
1511 |
ud.debug(ud.LDAP, ud.INFO, "primary_group_sync_from_ucs: primary Group needs change of membership in S4") |
1513 |
ud.debug(ud.LDAP, ud.INFO, "primary_group_sync_from_ucs: primary Group needs change of membership in S4") |
1512 |
self.lo_s4.lo.modify_s(compatible_modstring(s4_group_object['dn']), [(ldap.MOD_REPLACE, 'member', s4_members)]) |
1514 |
self.lo_s4.lo.modify_s(compatible_modstring(s4_group_object['dn']), [(ldap.MOD_REPLACE, 'member', s4_members)]) |