|
|
|
@ -52,15 +52,15 @@ pub async fn login_route(
|
|
|
|
|
password,
|
|
|
|
|
}) => {
|
|
|
|
|
let username = if let IncomingUserIdentifier::MatrixId(matrix_id) = identifier {
|
|
|
|
|
matrix_id
|
|
|
|
|
matrix_id.to_lowercase()
|
|
|
|
|
} else {
|
|
|
|
|
return Err(Error::BadRequest(ErrorKind::Forbidden, "Bad login type."));
|
|
|
|
|
};
|
|
|
|
|
let user_id = UserId::parse_with_server_name(
|
|
|
|
|
username.to_lowercase().to_owned(),
|
|
|
|
|
db.globals.server_name(),
|
|
|
|
|
)
|
|
|
|
|
.map_err(|_| Error::BadRequest(ErrorKind::InvalidUsername, "Username is invalid."))?;
|
|
|
|
|
let user_id =
|
|
|
|
|
UserId::parse_with_server_name(username.to_owned(), db.globals.server_name())
|
|
|
|
|
.map_err(|_| {
|
|
|
|
|
Error::BadRequest(ErrorKind::InvalidUsername, "Username is invalid.")
|
|
|
|
|
})?;
|
|
|
|
|
let hash = db.users.password_hash(&user_id)?.ok_or(Error::BadRequest(
|
|
|
|
|
ErrorKind::Forbidden,
|
|
|
|
|
"Wrong username or password.",
|
|
|
|
|