Software /
code /
prosody
Changeset
8095:57192cf193c7
util.sasl.plain,scram: Record username in sasl state earlier
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 19 Apr 2017 06:47:02 +0200 (2017-04-19) |
parents | 8094:dcda2ae4569d |
children | 8096:dd3191974f2a |
files | util/sasl/plain.lua util/sasl/scram.lua |
diffstat | 2 files changed, 3 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/util/sasl/plain.lua Wed Apr 19 12:40:03 2017 +0100 +++ b/util/sasl/plain.lua Wed Apr 19 06:47:02 2017 +0200 @@ -63,6 +63,8 @@ end end + self.username = authentication + local correct, state = false, false; if self.profile.plain then local correct_password; @@ -72,7 +74,6 @@ correct, state = self.profile.plain_test(self, authentication, password, self.realm); end - self.username = authentication if state == false then return "failure", "account-disabled"; elseif state == nil or not correct then
--- a/util/sasl/scram.lua Wed Apr 19 12:40:03 2017 +0100 +++ b/util/sasl/scram.lua Wed Apr 19 06:47:02 2017 +0200 @@ -146,6 +146,7 @@ log("debug", "Username violates either SASLprep or contains forbidden character sequences.") return "failure", "malformed-request", "Invalid username."; end + self.username = username; -- retreive credentials local stored_key, server_key, salt, iteration_count; @@ -225,7 +226,6 @@ if StoredKey == H_f(ClientKey) then local server_final_message = "v="..base64.encode(ServerSignature); - self["username"] = state.username; return "success", server_final_message; else return "failure", "not-authorized", "The response provided by the client doesn't match the one we calculated.";