INNER CODE UNIT · Rust
raw_to_message
google/OpenSK · libraries/opensk/fuzz/fuzz_helper/src/lib.rs:56
fn raw_to_message(data: &[u8]) -> Message {
if data.len() <= 4 {
let mut cid = [0; 4];
cid[..data.len()].copy_from_slice(data);
Message {
cid,
// Arbitrary command.
cmd: CtapHidCommand::Cbor,
payload: vec![],
}
} else {
Message {
cid: array_ref!(data, 0, 4).clone(),
cmd: CtapHidCommand::from(data[4]),
payload: data[5..].to_vec(),
}
}
}