[−][src]Struct smoltcp::wire::Ipv6RoutingHeader
A read/write wrapper around an IPv6 Routing Header buffer.
Methods
impl<T: AsRef<[u8]>> Header<T>
[src]
Core getter methods relevant to any routing type.
pub fn new(buffer: T) -> Header<T>
[src]
Create a raw octet buffer with an IPv6 Routing Header structure.
pub fn new_checked(buffer: T) -> Result<Header<T>>
[src]
Shorthand for a combination of new_unchecked and check_len.
pub fn check_len(&self) -> Result<()>
[src]
Ensure that no accessor method will panic if called.
Returns Err(Error::Truncated)
if the buffer is too short.
The result of this check is invalidated by calling set_header_len.
pub fn into_inner(self) -> T
[src]
Consume the header, returning the underlying buffer.
pub fn next_header(&self) -> Protocol
[src]
Return the next header field.
pub fn header_len(&self) -> u8
[src]
Return the header length field. Length of the Routing header in 8-octet units, not including the first 8 octets.
pub fn routing_type(&self) -> Type
[src]
Return the routing type field.
pub fn segments_left(&self) -> u8
[src]
Return the segments left field.
impl<T: AsRef<[u8]>> Header<T>
[src]
Getter methods for the Type 2 Routing Header routing type.
pub fn home_address(&self) -> Address
[src]
Return the IPv6 Home Address
Panics
This function may panic if this header is not the Type2 Routing Header routing type.
impl<T: AsRef<[u8]>> Header<T>
[src]
Getter methods for the RPL Source Routing Header routing type.
pub fn cmpr_i(&self) -> u8
[src]
Return the number of prefix octects elided from addresses[1..n-1].
Panics
This function may panic if this header is not the RPL Source Routing Header routing type.
pub fn cmpr_e(&self) -> u8
[src]
Return the number of prefix octects elided from the last address (addresses[n]
).
Panics
This function may panic if this header is not the RPL Source Routing Header routing type.
pub fn pad(&self) -> u8
[src]
Return the number of octects used for padding after addresses[n]
.
Panics
This function may panic if this header is not the RPL Source Routing Header routing type.
pub fn addresses(&self) -> &[u8]
[src]
Return the address vector in bytes
Panics
This function may panic if this header is not the RPL Source Routing Header routing type.
impl<T: AsRef<[u8]> + AsMut<[u8]>> Header<T>
[src]
Core setter methods relevant to any routing type.
pub fn set_next_header(&mut self, value: Protocol)
[src]
Set the next header field.
pub fn set_header_len(&mut self, value: u8)
[src]
Set the option data length. Length of the Routing header in 8-octet units.
pub fn set_routing_type(&mut self, value: Type)
[src]
Set the routing type.
pub fn set_segments_left(&mut self, value: u8)
[src]
Set the segments left field.
pub fn clear_reserved(&mut self)
[src]
impl<T: AsRef<[u8]> + AsMut<[u8]>> Header<T>
[src]
Setter methods for the RPL Source Routing Header routing type.
pub fn set_home_address(&mut self, value: Address)
[src]
Set the Ipv6 Home Address
Panics
This function may panic if this header is not the Type 2 Routing Header routing type.
impl<T: AsRef<[u8]> + AsMut<[u8]>> Header<T>
[src]
Setter methods for the RPL Source Routing Header routing type.
pub fn set_cmpr_i(&mut self, value: u8)
[src]
Set the number of prefix octects elided from addresses[1..n-1].
Panics
This function may panic if this header is not the RPL Source Routing Header routing type.
pub fn set_cmpr_e(&mut self, value: u8)
[src]
Set the number of prefix octects elided from the last address (addresses[n]
).
Panics
This function may panic if this header is not the RPL Source Routing Header routing type.
pub fn set_pad(&mut self, value: u8)
[src]
Set the number of octects used for padding after addresses[n]
.
Panics
This function may panic if this header is not the RPL Source Routing Header routing type.
pub fn set_addresses(&mut self, value: &[u8])
[src]
Set address data
Panics
This function may panic if this header is not the RPL Source Routing Header routing type.
Trait Implementations
impl<T: Debug + AsRef<[u8]>> Debug for Header<T>
[src]
impl<'a, T: AsRef<[u8]> + ?Sized> Display for Header<&'a T>
[src]
impl<T: PartialEq + AsRef<[u8]>> PartialEq<Header<T>> for Header<T>
[src]
impl<T: AsRef<[u8]>> StructuralPartialEq for Header<T>
[src]
Auto Trait Implementations
impl<T> RefUnwindSafe for Header<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Send for Header<T> where
T: Send,
T: Send,
impl<T> Sync for Header<T> where
T: Sync,
T: Sync,
impl<T> Unpin for Header<T> where
T: Unpin,
T: Unpin,
impl<T> UnwindSafe for Header<T> where
T: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,