conditionally import ldap
2 files changed, 5 insertions, 3 deletions
diff --git a/synapse/handlers/auth.py b/synapse/handlers/auth.py
index ee2b285cc1..12585abb1b 100644
--- a/synapse/handlers/auth.py
+++ b/synapse/handlers/auth.py
@@ -30,8 +30,6 @@ import simplejson
import synapse.util.stringutils as stringutils
-import ldap
-
logger = logging.getLogger(__name__)
@@ -60,6 +58,9 @@ class AuthHandler(BaseHandler):
self.ldap_email_property = hs.config.ldap_email_property
self.ldap_full_name_property = hs.config.ldap_full_name_property
+ if self.ldap_enabled:
+ import ldap
+
self.hs = hs # FIXME better possibility to access registrationHandler later?
@defer.inlineCallbacks
@@ -445,6 +446,8 @@ class AuthHandler(BaseHandler):
logger.info("LDAP not configured")
defer.returnValue(False)
+ import ldap
+
logger.info("Authenticating %s with LDAP" % user_id)
try:
ldap_url = "%s:%s" % (self.ldap_server, self.ldap_port)
diff --git a/synapse/python_dependencies.py b/synapse/python_dependencies.py
index d6b6e82bd7..cf1414b4db 100644
--- a/synapse/python_dependencies.py
+++ b/synapse/python_dependencies.py
@@ -37,7 +37,6 @@ REQUIREMENTS = {
"pysaml2>=3.0.0,<4.0.0": ["saml2>=3.0.0,<4.0.0"],
"pymacaroons-pynacl": ["pymacaroons"],
"pyjwt": ["jwt"],
- "python-ldap": ["ldap"],
}
CONDITIONAL_REQUIREMENTS = {
"web_client": {
|