summaryrefslogtreecommitdiffstats
path: root/ipaserver/install/replication.py
diff options
context:
space:
mode:
authorPetr Viktorin <pviktori@redhat.com>2013-01-21 08:39:09 -0500
committerMartin Kosek <mkosek@redhat.com>2013-03-01 16:59:45 +0100
commit4779865ea30dba0b5f0594cdc4633b0cc93bf36a (patch)
tree17708b9facca822d26570de65cd691e12bf3eeff /ipaserver/install/replication.py
parentf5c404c65d81d9a28f171fabe7c5749d6c37f102 (diff)
downloadfreeipa.git-4779865ea30dba0b5f0594cdc4633b0cc93bf36a.tar.gz
freeipa.git-4779865ea30dba0b5f0594cdc4633b0cc93bf36a.tar.xz
freeipa.git-4779865ea30dba0b5f0594cdc4633b0cc93bf36a.zip
Replace getList by a get_entries method
The find_entries method is cumbersome to use: it requires keyword arguments for simple uses, and callers are tempted to ignore the 'truncated' flag it returns. Introduce a simpler method, get_entries, that returns the found list directly, and raises an errors if the list is truncated. Replace the getList method by get_entries. Part of the work for: https://fedorahosted.org/freeipa/ticket/2660
Diffstat (limited to 'ipaserver/install/replication.py')
-rw-r--r--ipaserver/install/replication.py32
1 files changed, 18 insertions, 14 deletions
diff --git a/ipaserver/install/replication.py b/ipaserver/install/replication.py
index fcb6ca84..32ea5220 100644
--- a/ipaserver/install/replication.py
+++ b/ipaserver/install/replication.py
@@ -251,8 +251,9 @@ class ReplicationManager(object):
"""
filt = self.get_agreement_filter()
try:
- ents = self.conn.getList(DN(('cn', 'mapping tree'), ('cn', 'config')),
- ldap.SCOPE_SUBTREE, filt)
+ ents = self.conn.get_entries(
+ DN(('cn', 'mapping tree'), ('cn', 'config')),
+ ldap.SCOPE_SUBTREE, filt)
except errors.NotFound:
ents = []
return ents
@@ -269,8 +270,9 @@ class ReplicationManager(object):
filt = self.get_agreement_filter(IPA_REPLICA)
try:
- ents = self.conn.getList(DN(('cn', 'mapping tree'), ('cn', 'config')),
- ldap.SCOPE_SUBTREE, filt)
+ ents = self.conn.get_entries(
+ DN(('cn', 'mapping tree'), ('cn', 'config')),
+ ldap.SCOPE_SUBTREE, filt)
except errors.NotFound:
return res
@@ -291,8 +293,9 @@ class ReplicationManager(object):
filt = self.get_agreement_filter(host=hostname)
try:
- entries = self.conn.getList(DN(('cn', 'mapping tree'), ('cn', 'config')),
- ldap.SCOPE_SUBTREE, filt)
+ entries = self.conn.get_entries(
+ DN(('cn', 'mapping tree'), ('cn', 'config')),
+ ldap.SCOPE_SUBTREE, filt)
except errors.NotFound:
return None
@@ -1031,7 +1034,7 @@ class ReplicationManager(object):
newschedule = '2358-2359 0'
filter = self.get_agreement_filter(host=hostname)
- entries = conn.getList(
+ entries = conn.get_entries(
DN(('cn', 'config')), ldap.SCOPE_SUBTREE, filter)
if len(entries) == 0:
root_logger.error("Unable to find replication agreement for %s" %
@@ -1086,9 +1089,9 @@ class ReplicationManager(object):
# delete master kerberos key and all its svc principals
try:
- filter='(krbprincipalname=*/%s@%s)' % (replica, realm)
- entries = self.conn.getList(self.suffix, ldap.SCOPE_SUBTREE,
- filterstr=filter)
+ entries = self.conn.get_entries(
+ self.suffix, ldap.SCOPE_SUBTREE,
+ filter='(krbprincipalname=*/%s@%s)' % (replica, realm))
if entries:
entries.sort(key=len, reverse=True)
for dn in entries:
@@ -1128,8 +1131,9 @@ class ReplicationManager(object):
# delete master entry with all active services
try:
- dn = DN(('cn', replica), ('cn', 'masters'), ('cn', 'ipa'), ('cn', 'etc'), self.suffix)
- entries = self.conn.getList(dn, ldap.SCOPE_SUBTREE)
+ dn = DN(('cn', replica), ('cn', 'masters'), ('cn', 'ipa'),
+ ('cn', 'etc'), self.suffix)
+ entries = self.conn.get_entries(dn, ldap.SCOPE_SUBTREE)
if entries:
entries.sort(key=len, reverse=True)
for dn in entries:
@@ -1145,8 +1149,8 @@ class ReplicationManager(object):
try:
basedn = DN(('cn', 'etc'), self.suffix)
filter = '(dnaHostname=%s)' % replica
- entries = self.conn.getList(basedn, ldap.SCOPE_SUBTREE,
- filterstr=filter)
+ entries = self.conn.get_entries(
+ basedn, ldap.SCOPE_SUBTREE, filter=filter)
if len(entries) != 0:
for e in entries:
self.conn.deleteEntry(e.dn)