diff options
author | Petr Viktorin <pviktori@redhat.com> | 2013-01-18 09:43:53 -0500 |
---|---|---|
committer | Martin Kosek <mkosek@redhat.com> | 2013-03-01 16:59:44 +0100 |
commit | b2dd8d7f0512dff47bd5b1b973da50dd56a2e99e (patch) | |
tree | 10e80db963f236aaff592546f26698bf7e49e62d /ipaserver/install/adtrustinstance.py | |
parent | 3dd4b36e1a3262f923a5f07f9d287318a68532a8 (diff) | |
download | freeipa-b2dd8d7f0512dff47bd5b1b973da50dd56a2e99e.tar.gz freeipa-b2dd8d7f0512dff47bd5b1b973da50dd56a2e99e.tar.xz freeipa-b2dd8d7f0512dff47bd5b1b973da50dd56a2e99e.zip |
Use update_entry with a single entry in adtrustinstance
Part of the work for: https://fedorahosted.org/freeipa/ticket/2660
Diffstat (limited to 'ipaserver/install/adtrustinstance.py')
-rw-r--r-- | ipaserver/install/adtrustinstance.py | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/ipaserver/install/adtrustinstance.py b/ipaserver/install/adtrustinstance.py index 2a9a0b4fc..9775a4e83 100644 --- a/ipaserver/install/adtrustinstance.py +++ b/ipaserver/install/adtrustinstance.py @@ -416,12 +416,11 @@ class ADTRUSTInstance(service.Service): targets_dn = DN(('cn', 'ipa-cifs-delegation-targets'), ('cn', 's4u2proxy'), ('cn', 'etc'), self.suffix) try: - targets = self.admin_conn.getEntry(targets_dn, ldap.SCOPE_BASE) - current = self.admin_conn.make_entry(targets_dn, targets.toDict()) - members = current.getValues('memberPrincipal') or [] + current = self.admin_conn.get_entry(targets_dn) + members = current.get('memberPrincipal', []) if not(self.cifs_principal in members): - current.setValues("memberPrincipal", members + [self.cifs_principal]) - self.admin_conn.updateEntry(targets_dn, targets.toDict(), current.toDict()) + current["memberPrincipal"] = members + [self.cifs_principal] + self.admin_conn.update_entry(targets_dn, current) else: self.print_msg('cifs principal already targeted, nothing to do.') except errors.NotFound: @@ -448,12 +447,11 @@ class ADTRUSTInstance(service.Service): # as 389-ds only operates with GroupOfNames, we have to use # the principal's proper dn as defined in self.cifs_agent try: - entry = self.admin_conn.getEntry(self.smb_dn, ldap.SCOPE_BASE) - current = self.admin_conn.make_entry(self.smb_dn, entry.toDict()) - members = current.getValues('member') or [] + current = self.admin_conn.get_entry(self.smb_dn) + members = current.get('member', []) if not(self.cifs_agent in members): - current.setValues("member", members + [self.cifs_agent]) - self.admin_conn.updateEntry(self.smb_dn, entry.toDict(), current.toDict()) + current["member"] = members + [self.cifs_agent] + self.admin_conn.update_entry(self.smb_dn, current) except errors.NotFound: entry = self.admin_conn.make_entry( self.smb_dn, |