diff options
author | Rob Crittenden <rcritten@redhat.com> | 2012-11-06 17:31:11 -0500 |
---|---|---|
committer | Martin Kosek <mkosek@redhat.com> | 2012-11-07 10:01:20 +0100 |
commit | 12e1ad747effc11e71741377b29e147d4040c11e (patch) | |
tree | b098cda79589883c94139ed5dcf0e225245bd104 | |
parent | dc406253821ba7a616dd12e2bcc5dd602247a279 (diff) | |
download | freeipa.git-12e1ad747effc11e71741377b29e147d4040c11e.tar.gz freeipa.git-12e1ad747effc11e71741377b29e147d4040c11e.tar.xz freeipa.git-12e1ad747effc11e71741377b29e147d4040c11e.zip |
Handle the case where there are no replicas with list-ruv
This assumed that at least was returned by LDAP. This is not the case
if no replicas have ever been created.
https://fedorahosted.org/freeipa/ticket/3229
-rwxr-xr-x | install/tools/ipa-replica-manage | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/install/tools/ipa-replica-manage b/install/tools/ipa-replica-manage index 449138bd..24228910 100755 --- a/install/tools/ipa-replica-manage +++ b/install/tools/ipa-replica-manage @@ -334,16 +334,17 @@ def get_ruv(realm, host, dirman_passwd): sys.exit(0) servers = [] - for ruv in entries[0][1]['nsds50ruv']: - if ruv.startswith('{replicageneration'): - continue - data = re.match('\{replica (\d+) (ldap://.*:\d+)\}(\s+\w+\s+\w*){0,1}', ruv) - if data: - rid = data.group(1) - (scheme, netloc, path, params, query, fragment) = urlparse.urlparse(data.group(2)) - servers.append((netloc, rid)) - else: - print "unable to decode: %s" % ruv + for e in entries: + for ruv in e[1]['nsds50ruv']: + if ruv.startswith('{replicageneration'): + continue + data = re.match('\{replica (\d+) (ldap://.*:\d+)\}(\s+\w+\s+\w*){0,1}', ruv) + if data: + rid = data.group(1) + (scheme, netloc, path, params, query, fragment) = urlparse.urlparse(data.group(2)) + servers.append((netloc, rid)) + else: + print "unable to decode: %s" % ruv return servers |