Request: handle empty fields as errors
This commit is contained in:
parent
6d66bf9664
commit
f87299ad34
1 changed files with 8 additions and 0 deletions
|
@ -57,7 +57,15 @@ impl FromStr for Request {
|
|||
}
|
||||
if let Some((user, message)) = s.split_once(' ') {
|
||||
let message = message.trim_end().to_string();
|
||||
if message.is_empty() {
|
||||
return Err(ParseRequestError::EmptyMessage);
|
||||
}
|
||||
if let Some((user, host)) = user.rsplit_once('@') {
|
||||
if host.is_empty() {
|
||||
return Err(ParseRequestError::EmptyHost);
|
||||
} else if user.is_empty() {
|
||||
return Err(ParseRequestError::EmptyUser);
|
||||
}
|
||||
let host = host.parse()?;
|
||||
let user = user.to_string();
|
||||
Ok(Request { user, host, message })
|
||||
|
|
Loading…
Add table
Reference in a new issue