Mercurial > kallithea
changeset 1135:1aa1655bf019 beta
fixed some config bool converter problems with ldap
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Tue, 15 Mar 2011 23:34:14 +0100 |
parents | 1dc5d169e85a |
children | 82344ce0a892 |
files | rhodecode/lib/__init__.py rhodecode/lib/auth.py rhodecode/model/settings.py |
diffstat | 3 files changed, 18 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/lib/__init__.py Mon Mar 14 01:34:08 2011 +0100 +++ b/rhodecode/lib/__init__.py Tue Mar 15 23:34:14 2011 +0100 @@ -26,7 +26,16 @@ # MA 02110-1301, USA. def str2bool(v): - return v.lower() in ["yes", "true", "t", "1"] if v else None + if isinstance(v, (str, unicode)): + obj = v.strip().lower() + if obj in ['true', 'yes', 'on', 'y', 't', '1']: + return True + elif obj in ['false', 'no', 'off', 'n', 'f', '0']: + return False + else: + if not safe: + raise ValueError("String is not true/false: %r" % obj) + return bool(obj) def generate_api_key(username, salt=None): from tempfile import _RandomNameSequence
--- a/rhodecode/lib/auth.py Mon Mar 14 01:34:08 2011 +0100 +++ b/rhodecode/lib/auth.py Tue Mar 15 23:34:14 2011 +0100 @@ -43,7 +43,7 @@ if __platform__ in ('Linux', 'Darwin'): import bcrypt - +from rhodecode.lib import str2bool from rhodecode.lib.exceptions import LdapPasswordError, LdapUsernameError from rhodecode.lib.utils import get_repo_slug from rhodecode.lib.auth_ldap import AuthLdap @@ -179,7 +179,7 @@ #====================================================================== # FALLBACK TO LDAP AUTH IF ENABLE #====================================================================== - if ldap_settings.get('ldap_active', False): + if str2bool(ldap_settings.get('ldap_active')): log.debug("Authenticating user using ldap") kwargs = { 'server':ldap_settings.get('ldap_host', ''), @@ -187,7 +187,7 @@ 'port':ldap_settings.get('ldap_port'), 'bind_dn':ldap_settings.get('ldap_dn_user'), 'bind_pass':ldap_settings.get('ldap_dn_pass'), - 'use_ldaps':ldap_settings.get('ldap_ldaps'), + 'use_ldaps':str2bool(ldap_settings.get('ldap_ldaps')), 'tls_reqcert':ldap_settings.get('ldap_tls_reqcert'), 'ldap_filter':ldap_settings.get('ldap_filter'), 'search_scope':ldap_settings.get('ldap_search_scope'),
--- a/rhodecode/model/settings.py Mon Mar 14 01:34:08 2011 +0100 +++ b/rhodecode/model/settings.py Tue Mar 15 23:34:14 2011 +0100 @@ -95,8 +95,11 @@ for row in r: v = row.app_settings_value - if v in ['0', '1']: - v = v == '1' + if v in ['true', 'yes', 'on', 'y', 't', '1']: + v = True + elif v in ['false', 'no', 'off', 'n', 'f', '0']: + v = False + fd.update({row.app_settings_name:v}) return fd