Mercurial > public > src > moin > 1.9
diff MoinMoin/config/multiconfig.py @ 5971:96ef8a8ecc80
improve some passlib related code using the 1.6.1-post-release doc updates
catch all exceptions that might happen when creating CryptContext
remove compatibility hack - as hash_needs_update removal was delayed to
passlib 2.0, we can just use the deprecated method name to support older
and current passlib versions.
author | Thomas Waldmann <tw AT waldmann-edv DOT de> |
---|---|
date | Sat, 16 Mar 2013 21:47:54 +0100 |
parents | 9894a3344118 |
children | 35bf45b53714 |
line wrap: on
line diff
--- a/MoinMoin/config/multiconfig.py Sat Mar 16 18:29:13 2013 +0100 +++ b/MoinMoin/config/multiconfig.py Sat Mar 16 21:47:54 2013 +0100 @@ -433,13 +433,15 @@ if self.passlib_support: try: from passlib.context import CryptContext + from passlib.exc import UserWarning except ImportError, err: raise error.ConfigurationError("Wiki is configured to use passlib, but importing passlib failed [%s]!" % str(err)) try: self.cache.pwd_context = CryptContext(**self.passlib_crypt_context) - except (ValueError, KeyError), err: + except (ValueError, KeyError, TypeError, UserWarning), err: # ValueError: wrong configuration values # KeyError: unsupported hash (seen with passlib 1.3) + # TypeError: configuration value has wrong type raise error.ConfigurationError("passlib_crypt_context configuration is invalid [%s]." % str(err)) elif self.password_scheme == '{PASSLIB}': raise error.ConfigurationError("passlib_support is switched off, thus you can't use password_scheme = '{PASSLIB}'.")