bitoku_sdk_agent/
helper.rs

1use crate::consts::*;
2
3pub fn validate_name(name: &[u8]) -> bool {
4    if name.len() > MAX_SIZE as usize {
5        return false;
6    }
7    let non_zero_bytes: Vec<u8> = name.iter().take_while(|&b| *b != 0).copied().collect();
8
9    for b in non_zero_bytes {
10        if !(b >= b'a' && b <= b'z')
11            && !(b >= b'A' && b <= b'Z')
12            && !(b >= b'0' && b <= b'9')
13            && !(b == b'.' || b == b'/' || b == b'_' || b == b'+' || b == b'-')
14        {
15            return false;
16        }
17    }
18    true
19}