/ crates / tor-cell / fuzz / fuzz_targets / relaymsg.rs
relaymsg.rs
 1  #![no_main]
 2  use libfuzzer_sys::fuzz_target;
 3  use tor_cell::{
 4      chancell::{BoxedCellBody, CELL_DATA_LEN},
 5      relaycell::{AnyRelayMsgOuter, RelayCellFormat},
 6  };
 7  
 8  fuzz_target!(|data: &[u8]| {
 9      let mut body: BoxedCellBody = Box::new([0_u8; CELL_DATA_LEN]);
10      let copy_len = std::cmp::min(data.len(), body.len());
11      body[..copy_len].copy_from_slice(&data[..copy_len]);
12      let _ = AnyRelayMsgOuter::decode_singleton(RelayCellFormat::V0, body);
13  });