12345678910111213141516171819 |
- #![no_main]
- use libfuzzer_sys::fuzz_target;
- use smoltcp::wire::{DhcpPacket, DhcpRepr};
- fuzz_target!(|data: &[u8]| {
- let _ = match DhcpPacket::new_checked(data) {
- Ok(ref packet) => match DhcpRepr::parse(packet) {
- Ok(dhcp_repr) => {
- let mut dhcp_payload = vec![0; dhcp_repr.buffer_len()];
- match DhcpPacket::new_checked(&mut dhcp_payload[..]) {
- Ok(mut dhcp_packet) => Some(dhcp_repr.emit(&mut dhcp_packet)),
- Err(_) => None,
- }
- }
- Err(_) => None,
- },
- Err(_) => None,
- };
- });
|