1 2 3 4 5 6 7 8 9 10 11 12
//! This module contains an example use case for defining a layout: ICMP packets. use crate::prelude::*; // See https://en.wikipedia.org/wiki/Internet_Control_Message_Protocol for ICMP package layout define_layout!(icmp_packet, BigEndian, { packet_type: u8, code: u8, checksum: u16, rest_of_header: [u8; 4], data_section: [u8], // open ended byte array, matches until the end of the packet });