Check for proper username

This commit is contained in:
Bastian Gruber 2023-04-29 14:03:10 +02:00
parent b5a7e04051
commit 4d4df0ea06
No known key found for this signature in database
GPG key ID: BE9F8C772B188CBF

View file

@ -57,17 +57,22 @@ async fn main() -> Result<()> {
// we won't process until we find one.
match framed.next().await {
Some(Ok(username)) => {
name = username.clone();
db.0.lock().unwrap().insert(username.clone(), address);
let message = compose_message(username.clone(), db.clone());
info!("Adding username: {username} to db");
let _ = framed.send(message).await;
info!("Send message to client");
let b = BroadcastMessage(
username.clone(),
format!("* {} has entered the room", username),
);
let _ = tx.send(b);
if !username.is_empty() && username.is_ascii() {
name = username.clone();
db.0.lock().unwrap().insert(username.clone(), address);
let message = compose_message(username.clone(), db.clone());
info!("Adding username: {username} to db");
let _ = framed.send(message).await;
info!("Send message to client");
let b = BroadcastMessage(
username.clone(),
format!("* {} has entered the room", username),
);
let _ = tx.send(b);
} else {
return;
}
}
Some(Err(e)) => {
error!("Error parsing message: {e}");
@ -98,7 +103,7 @@ async fn main() -> Result<()> {
info!("No next frame");
let b =
BroadcastMessage(name.clone(), format!("* {} has left the room", name));
db.0.lock().unwrap().remove(username.clone());
db.0.lock().unwrap().remove(&name.clone());
let _ = tx.send(b);
break;
}