diff --git a/management/univention-directory-manager-modules/modules/univention/admin/handlers/__init__.py b/management/univention-directory-manager-modules/modules/univention/admin/handlers/__init__.py index d527575..502a589 100644 --- a/management/univention-directory-manager-modules/modules/univention/admin/handlers/__init__.py +++ b/management/univention-directory-manager-modules/modules/univention/admin/handlers/__init__.py @@ -844,9 +844,9 @@ def _ldap_object_classes(self, ml): must, may = schema.attribute_types(ocs) allowed = set(name.lower() for attr in may.values() for name in attr.names) | set(name.lower() for attr in must.values() for name in attr.names) - _ml = [x for x in ml if x[0].lower() != 'objectclass'] - _ml.append(('objectClass', self.oldattr.get('objectClass', []), list(ocs))) - newattr = ldap.cidict.cidict(_MergedAttributes(self, _ml).get_attributes()) + ml = [x for x in ml if x[0].lower() != 'objectclass'] + ml.append(('objectClass', self.oldattr.get('objectClass', []), list(ocs))) + newattr = ldap.cidict.cidict(_MergedAttributes(self, ml).get_attributes()) # make sure only attributes known by the object classes are set for attr, val in newattr.items(): @@ -2837,7 +2837,7 @@ def __init__(self, obj, modlist): def get_attributes(self): attributes = set(self.obj.oldattr.keys()) | set(x[0] for x in self.modlist) - return dict((attr, self.get_attribute(attr)) for attr in attributes) + return dict((re.sub(';binary$', '', attr), self.get_attribute(attr)) for attr in attributes) def get_attribute(self, attr): values = set(self.obj.oldattr.get(attr, []))