summaryrefslogtreecommitdiffstats
path: root/cobbler/modules/authn_ldap.py
diff options
context:
space:
mode:
Diffstat (limited to 'cobbler/modules/authn_ldap.py')
-rw-r--r--cobbler/modules/authn_ldap.py23
1 files changed, 17 insertions, 6 deletions
diff --git a/cobbler/modules/authn_ldap.py b/cobbler/modules/authn_ldap.py
index d30e87d0..e4313e07 100644
--- a/cobbler/modules/authn_ldap.py
+++ b/cobbler/modules/authn_ldap.py
@@ -59,13 +59,24 @@ def authenticate(api_handle,username,password):
anon_bind = api_handle.settings().ldap_anonymous_bind
prefix = api_handle.settings().ldap_search_prefix
- # form our ldap uri based on connection port
- if port == '389':
- uri = 'ldap://' + server
- elif port == '636':
- uri = 'ldaps://' + server
+ # allow multiple servers split by a space
+ if server.find(" "):
+ servers = server.split()
else:
- uri = 'ldap://' + "%s:%s" % (server,port)
+ servers = [server]
+
+ uri = ""
+ for server in servers:
+ # form our ldap uri based on connection port
+ if port == '389':
+ uri += 'ldap://' + server
+ elif port == '636':
+ uri += 'ldaps://' + server
+ else:
+ uri += 'ldap://' + "%s:%s" % (server,port)
+ uri += ' '
+
+ uri = uri.strip()
# connect to LDAP host
dir = ldap.initialize(uri)