botnet_utils/
lib.rs

1use nom::AsBytes;
2
3pub fn type_id(k: impl AsBytes) -> usize {
4    let mut buff: [u8; 8] = [0u8; 8];
5    let pad = "00000000".as_bytes();
6
7    let k = k.as_bytes();
8
9    if k.len() < 8 {
10        let b = &[k, pad].concat();
11        buff.copy_from_slice(&b[..8]);
12        return usize::from_le_bytes(buff);
13    }
14
15    buff.copy_from_slice(&k[..8]);
16    usize::from_le_bytes(buff)
17}