netstack3_ip::device

Trait DadAddressContext

Source
pub trait DadAddressContext<BC>: IpDeviceAddressIdContext<Ipv6> {
    // Required methods
    fn with_address_assigned<O, F: FnOnce(&mut bool) -> O>(
        &mut self,
        device_id: &Self::DeviceId,
        addr: &Self::AddressId,
        cb: F,
    ) -> O;
    fn join_multicast_group(
        &mut self,
        bindings_ctx: &mut BC,
        device_id: &Self::DeviceId,
        multicast_addr: MulticastAddr<Ipv6Addr>,
    );
    fn leave_multicast_group(
        &mut self,
        bindings_ctx: &mut BC,
        device_id: &Self::DeviceId,
        multicast_addr: MulticastAddr<Ipv6Addr>,
    );
}
Expand description

The execution context while performing DAD.

Required Methods§

Source

fn with_address_assigned<O, F: FnOnce(&mut bool) -> O>( &mut self, device_id: &Self::DeviceId, addr: &Self::AddressId, cb: F, ) -> O

Calls the function with a mutable reference to the address’s assigned flag.

Source

fn join_multicast_group( &mut self, bindings_ctx: &mut BC, device_id: &Self::DeviceId, multicast_addr: MulticastAddr<Ipv6Addr>, )

Joins the multicast group on the device.

Source

fn leave_multicast_group( &mut self, bindings_ctx: &mut BC, device_id: &Self::DeviceId, multicast_addr: MulticastAddr<Ipv6Addr>, )

Leaves the multicast group on the device.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§