netlink_packet_route/rtnl/neighbour_table/
buffer.rs1use netlink_packet_utils::DecodeError;
4
5use netlink_packet_utils::nla::{NlaBuffer, NlasIterator};
6
7pub const NEIGHBOUR_TABLE_HEADER_LEN: usize = 4;
8
9buffer!(NeighbourTableMessageBuffer(NEIGHBOUR_TABLE_HEADER_LEN) {
10 family: (u8, 0),
11 payload: (slice, NEIGHBOUR_TABLE_HEADER_LEN..),
12});
13
14impl<'a, T: AsRef<[u8]> + ?Sized> NeighbourTableMessageBuffer<&'a T> {
15 pub fn nlas(
16 &self,
17 ) -> impl Iterator<Item = Result<NlaBuffer<&'a [u8]>, DecodeError>> {
18 NlasIterator::new(self.payload())
19 }
20}