Struct net::wire::MldAddressRecord
pub struct MldAddressRecord<T>where
T: AsRef<[u8]>,{ /* private fields */ }
Expand description
A read/write wrapper around an MLDv2 Listener Report Message Address Record.
Implementations§
§impl<T> AddressRecord<T>where
T: AsRef<[u8]>,
impl<T> AddressRecord<T>where T: AsRef<[u8]>,
pub const fn new_unchecked(buffer: T) -> AddressRecord<T>
pub const fn new_unchecked(buffer: T) -> AddressRecord<T>
Imbue a raw octet buffer with a Address Record structure.
pub fn new_checked(buffer: T) -> Result<AddressRecord<T>, Error>
pub fn new_checked(buffer: T) -> Result<AddressRecord<T>, Error>
Shorthand for a combination of new_unchecked and check_len.
pub fn check_len(&self) -> Result<(), Error>
pub fn check_len(&self) -> Result<(), Error>
Ensure that no accessor method will panic if called.
Returns Err(Error::Truncated)
if the buffer is too short.
pub fn into_inner(self) -> T
pub fn into_inner(self) -> T
Consume the packet, returning the underlying buffer.
§impl<T> AddressRecord<T>where
T: AsRef<[u8]>,
impl<T> AddressRecord<T>where T: AsRef<[u8]>,
Getters for a MLDv2 Listener Report Message Address Record. See RFC 3810 § 5.2.
pub fn record_type(&self) -> RecordType
pub fn record_type(&self) -> RecordType
Return the record type for the given sources.
pub fn aux_data_len(&self) -> u8
pub fn aux_data_len(&self) -> u8
Return the length of the auxiliary data.
pub fn mcast_addr(&self) -> Address
pub fn mcast_addr(&self) -> Address
Return the multicast address field.
§impl<T> AddressRecord<T>where
T: AsMut<[u8]> + AsRef<[u8]>,
impl<T> AddressRecord<T>where T: AsMut<[u8]> + AsRef<[u8]>,
Setters for a MLDv2 Listener Report Message Address Record. See RFC 3810 § 5.2.
pub fn set_record_type(&mut self, rty: RecordType)
pub fn set_record_type(&mut self, rty: RecordType)
Return the record type for the given sources.
pub fn set_aux_data_len(&mut self, len: u8)
pub fn set_aux_data_len(&mut self, len: u8)
Return the length of the auxiliary data.
pub fn set_num_srcs(&mut self, num_srcs: u16)
pub fn set_num_srcs(&mut self, num_srcs: u16)
Return the number of sources field.
pub fn set_mcast_addr(&mut self, addr: Address)
pub fn set_mcast_addr(&mut self, addr: Address)
Return the multicast address field.
Panics
This function panics if the given address is not a multicast address.
§impl<T> AddressRecord<T>where
T: AsRef<[u8]> + AsMut<[u8]>,
impl<T> AddressRecord<T>where T: AsRef<[u8]> + AsMut<[u8]>,
pub fn payload_mut(&mut self) -> &mut [u8]
pub fn payload_mut(&mut self) -> &mut [u8]
Return a pointer to the address records.
Trait Implementations§
§impl<T> Clone for AddressRecord<T>where
T: Clone + AsRef<[u8]>,
impl<T> Clone for AddressRecord<T>where T: Clone + AsRef<[u8]>,
§fn clone(&self) -> AddressRecord<T>
fn clone(&self) -> AddressRecord<T>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl<T> PartialEq<AddressRecord<T>> for AddressRecord<T>where
T: PartialEq<T> + AsRef<[u8]>,
impl<T> PartialEq<AddressRecord<T>> for AddressRecord<T>where T: PartialEq<T> + AsRef<[u8]>,
§fn eq(&self, other: &AddressRecord<T>) -> bool
fn eq(&self, other: &AddressRecord<T>) -> bool
self
and other
values to be equal, and is used
by ==
.