Mercurial > kallithea
diff rhodecode/lib/auth_ldap.py @ 3632:1ec67ddcaffe beta
ldap: handle more elegantly that python-ldap isn't installed when trying to use ldap
Don't fail with
AttributeError: 'NoneType' object has no attribute 'SCOPE_SUBTREE'
in the log.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Thu, 28 Mar 2013 01:15:56 +0100 |
parents | 8464d0e96e97 |
children | 3563bb7b4b82 |
line wrap: on
line diff
--- a/rhodecode/lib/auth_ldap.py Thu Mar 28 03:34:36 2013 +0100 +++ b/rhodecode/lib/auth_ldap.py Thu Mar 28 01:15:56 2013 +0100 @@ -26,7 +26,7 @@ import logging from rhodecode.lib.exceptions import LdapConnectionError, LdapUsernameError, \ - LdapPasswordError + LdapPasswordError, LdapImportError from rhodecode.lib.utils2 import safe_str log = logging.getLogger(__name__) @@ -36,7 +36,7 @@ import ldap except ImportError: # means that python-ldap is not installed - pass + ldap = None class AuthLdap(object): @@ -45,6 +45,9 @@ tls_kind='PLAIN', tls_reqcert='DEMAND', ldap_version=3, ldap_filter='(&(objectClass=user)(!(objectClass=computer)))', search_scope='SUBTREE', attr_login='uid'): + if ldap is None: + raise LdapImportError + self.ldap_version = ldap_version ldap_server_type = 'ldap'