summaryrefslogtreecommitdiffstats
path: root/ipaserver
diff options
context:
space:
mode:
authorJan Cholasta <jcholast@redhat.com>2013-01-31 11:57:02 +0100
committerMartin Kosek <mkosek@redhat.com>2013-03-01 16:59:47 +0100
commit3aa39547df18bc77ba49720f8a3a1a0052907859 (patch)
treea067e432ecc35f483afbd0b946c89a55345db294 /ipaserver
parentf17aa00ff01e3fff35d3b3ac75f001d076827ec8 (diff)
downloadfreeipa-3aa39547df18bc77ba49720f8a3a1a0052907859.tar.gz
freeipa-3aa39547df18bc77ba49720f8a3a1a0052907859.tar.xz
freeipa-3aa39547df18bc77ba49720f8a3a1a0052907859.zip
Support attributes with multiple names in LDAPEntry.
Diffstat (limited to 'ipaserver')
-rw-r--r--ipaserver/ipaldap.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/ipaserver/ipaldap.py b/ipaserver/ipaldap.py
index 9cff10169..10deca787 100644
--- a/ipaserver/ipaldap.py
+++ b/ipaserver/ipaldap.py
@@ -708,6 +708,18 @@ class LDAPEntry(dict):
else:
self._names[name] = name
+ try:
+ schema = self._conn.schema
+ except:
+ pass
+ else:
+ attrtype = schema.get_obj(ldap.schema.AttributeType,
+ name.encode('utf-8'))
+ if attrtype is not None:
+ for altname in attrtype.names:
+ altname = altname.decode('utf-8')
+ self._names[altname] = name
+
super(LDAPEntry, self).__setitem__(name, value)
def setdefault(self, name, default):