diff options
-rw-r--r-- | ipapython/ipaldap.py | 31 | ||||
-rw-r--r-- | ipaserver/install/krbinstance.py | 4 | ||||
-rw-r--r-- | ipaserver/install/ldapupdate.py | 7 |
3 files changed, 9 insertions, 33 deletions
diff --git a/ipapython/ipaldap.py b/ipapython/ipaldap.py index 4a128e998..6d4079651 100644 --- a/ipapython/ipaldap.py +++ b/ipapython/ipaldap.py @@ -1015,26 +1015,6 @@ class LDAPEntry(collections.MutableMapping): return name, self.pop(name) - def toDict(self): - # FIXME: for backwards compatibility only - """Convert the attrs and values to a dict. The dict is keyed on the - attribute name. The value is either single value or a list of values.""" - assert isinstance(self.dn, DN) - result = ipautil.CIDict(self.data) - for i in result.keys(): - result[i] = ipautil.utf8_encode_values(result[i]) - result['dn'] = self.dn - return result - - def origDataDict(self): - """Returns a dict of the original values of the user. - - Used for updates. - """ - result = ipautil.CIDict(self.orig_data) - result['dn'] = self.dn - return result - class LDAPEntryView(collections.MutableMapping): __slots__ = ('_entry',) @@ -1974,11 +1954,8 @@ class IPAdmin(LDAPClient): FORCE_REPLACE_ON_UPDATE_ATTRS = ('nsslapd-ssl-check-hostname', 'nsslapd-lookthroughlimit', 'nsslapd-idlistscanlimit', 'nsslapd-anonlimitsdn', 'nsslapd-minssf-exclude-rootdse') modlist = [] - old_entry = ipautil.CIDict(old_entry) - new_entry = ipautil.CIDict(new_entry) - - keys = set(map(string.lower, old_entry.keys())) - keys.update(map(string.lower, new_entry.keys())) + keys = set(old_entry.keys()) + keys.update(new_entry.keys()) for key in keys: new_values = new_entry.get(key, []) @@ -2007,9 +1984,9 @@ class IPAdmin(LDAPClient): # You can't remove schema online. An add will automatically # replace any existing schema. - if old_entry.get('dn', DN()) == DN(('cn', 'schema')): + if old_entry.dn == DN(('cn', 'schema')): if len(adds) > 0: - if key == 'attributetypes': + if key.lower() == 'attributetypes': modlist.insert(0, (ldap.MOD_ADD, key, adds)) else: modlist.append((ldap.MOD_ADD, key, adds)) diff --git a/ipaserver/install/krbinstance.py b/ipaserver/install/krbinstance.py index a16e4d5f0..cd39b8270 100644 --- a/ipaserver/install/krbinstance.py +++ b/ipaserver/install/krbinstance.py @@ -123,10 +123,10 @@ class KrbInstance(service.Service): ipauniqueid=['autogenerate'], managedby=[host_dn], ) - if 'krbpasswordexpiration' in service_entry.toDict(): + if 'krbpasswordexpiration' in service_entry: host_entry['krbpasswordexpiration'] = service_entry[ 'krbpasswordexpiration'] - if 'krbticketflags' in service_entry.toDict(): + if 'krbticketflags' in service_entry: host_entry['krbticketflags'] = service_entry['krbticketflags'] self.admin_conn.add_entry(host_entry) diff --git a/ipaserver/install/ldapupdate.py b/ipaserver/install/ldapupdate.py index 35191e7ae..34dd3a5e1 100644 --- a/ipaserver/install/ldapupdate.py +++ b/ipaserver/install/ldapupdate.py @@ -809,11 +809,10 @@ class LDAPUpdate: else: # Update LDAP try: - changes = self.conn.generateModList(entry.origDataDict(), entry.toDict()) + changes = self.conn.generateModList(entry.orig_data, entry) if (entry.dn == DN(('cn', 'schema'))): d = dict() - e = entry.toDict() - for k,v in e.items(): + for k,v in entry.items(): d[k] = [str(x) for x in v] updated = self.is_schema_updated(d) else: @@ -825,7 +824,7 @@ class LDAPUpdate: self.debug("%s" % safe_changes) self.debug("Live %d, updated %d" % (self.live_run, updated)) if self.live_run and updated: - self.conn.updateEntry(entry.dn, entry.origDataDict(), entry.toDict()) + self.conn.updateEntry(entry.dn, entry.orig_data, entry) self.info("Done") except errors.EmptyModlist: self.info("Entry already up-to-date") |