diff options
author | Erik Johnston <erik@matrix.org> | 2018-09-19 15:08:36 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2018-09-19 15:08:36 +0100 |
commit | ce846bb620e9866531f4a49f183fdd3cbb3f1eeb (patch) | |
tree | ed38561118af50948598967e17ad6a7f1fee8a8c /synapse/handlers/auth.py | |
parent | Newsfile (diff) | |
parent | Merge pull request #3910 from matrix-org/erikj/update_timeout (diff) | |
download | synapse-ce846bb620e9866531f4a49f183fdd3cbb3f1eeb.tar.xz |
Merge branch 'develop' of github.com:matrix-org/synapse into erikj/faster_typing
Diffstat (limited to 'synapse/handlers/auth.py')
-rw-r--r-- | synapse/handlers/auth.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/synapse/handlers/auth.py b/synapse/handlers/auth.py index 4a81bd2ba9..2a5eab124f 100644 --- a/synapse/handlers/auth.py +++ b/synapse/handlers/auth.py @@ -895,22 +895,24 @@ class AuthHandler(BaseHandler): Args: password (unicode): Password to hash. - stored_hash (unicode): Expected hash value. + stored_hash (bytes): Expected hash value. Returns: Deferred(bool): Whether self.hash(password) == stored_hash. """ - def _do_validate_hash(): # Normalise the Unicode in the password pw = unicodedata.normalize("NFKC", password) return bcrypt.checkpw( pw.encode('utf8') + self.hs.config.password_pepper.encode("utf8"), - stored_hash.encode('utf8') + stored_hash ) if stored_hash: + if not isinstance(stored_hash, bytes): + stored_hash = stored_hash.encode('ascii') + return make_deferred_yieldable( threads.deferToThreadPool( self.hs.get_reactor(), |