View | Details | Raw Unified | Return to bug 52874 | Differences between
and this patch

Collapse All | Expand All

(-)a/services/univention-ad-connector/modules/univention/connector/ad/__init__.py (-2 / +7 lines)
 Lines 1670-1683   class ad(univention.connector.ucs): Link Here 
1670
			uniqueMember_del = del_members['user'] + del_members['group'] + del_members['windowscomputer']
1670
			uniqueMember_del = del_members['user'] + del_members['group'] + del_members['windowscomputer']
1671
			memberUid_add = []
1671
			memberUid_add = []
1672
			memberUid_del = []
1672
			memberUid_del = []
1673
			trans_add = {}
1673
			for member in add_members['user']:
1674
			for member in add_members['user']:
1674
				(_rdn_attribute, uid, _flags) = str2dn(member)[0][0]
1675
				(_rdn_attribute, uid, _flags) = str2dn(member)[0][0]
1675
				memberUid_add.append(uid)
1676
				memberUid_add.append(uid)
1676
			for member in add_members['unknown'] + add_members['windowscomputer']:  # user or group?
1677
			for member in add_members['unknown'] + add_members['windowscomputer']:  # user or group?
1677
				ucs_object_attr = self.lo.get(member)
1678
				res = self.lo.search(base=member, scope='base')
1678
				uid = ucs_object_attr.get('uid')
1679
				uid = res[0][1].get('uid')
1679
				if uid:
1680
				if uid:
1680
					memberUid_add.append(uid[0].decode('UTF-8'))
1681
					memberUid_add.append(uid[0].decode('UTF-8'))
1682
					trans_add[member] = res[0][0]
1681
			for member in del_members['user']:
1683
			for member in del_members['user']:
1682
				(_rdn_attribute, uid, _flags) = str2dn(member)[0][0]
1684
				(_rdn_attribute, uid, _flags) = str2dn(member)[0][0]
1683
				memberUid_del.append(uid)
1685
				memberUid_del.append(uid)
 Lines 1686-1691   class ad(univention.connector.ucs): Link Here 
1686
				uid = ucs_object_attr.get('uid')
1688
				uid = ucs_object_attr.get('uid')
1687
				if uid:
1689
				if uid:
1688
					memberUid_del.append(uid[0])
1690
					memberUid_del.append(uid[0])
1691
			for k, v in trans_add.items():
1692
				uniqueMember_add.remove(k)
1693
				uniqueMember_add.append(v)
1689
			if uniqueMember_del or memberUid_del:
1694
			if uniqueMember_del or memberUid_del:
1690
				ucs_admin_object.fast_member_remove(uniqueMember_del, memberUid_del, ignore_license=True)
1695
				ucs_admin_object.fast_member_remove(uniqueMember_del, memberUid_del, ignore_license=True)
1691
			if uniqueMember_add or memberUid_del:
1696
			if uniqueMember_add or memberUid_del:

Return to bug 52874