identifiers-validation: Disallow non-ascii alphanumeric chars in session IDs

This commit is contained in:
Jonas Platte 2022-06-08 12:18:42 +02:00 committed by Jonas Platte
parent 4b756c5887
commit 34ad27bdf5

View File

@ -3,7 +3,7 @@ use crate::Error;
pub fn validate(s: &str) -> Result<(), Error> {
if s.len() > 255 {
return Err(Error::MaximumLengthExceeded);
} else if !s.chars().all(|c| c.is_alphanumeric() || ".=_-".contains(c)) {
} else if !s.bytes().all(|b| b.is_ascii_alphanumeric() || b".=_-".contains(&b)) {
return Err(Error::InvalidCharacters);
} else if s.is_empty() {
return Err(Error::Empty);