Skip to main content

NetlinkClient

Trait NetlinkClient 

Source
pub trait NetlinkClient: Send + Sync {
    type Request: Clone + Debug + NetlinkDeserializable<Error: Into<DecodeError>> + MessageWithPermission + Send;

    // Required methods
    fn set_pid(&self, pid: NonZeroU32);
    fn add_membership(
        &self,
        group: ModernGroup,
    ) -> Result<AsyncWorkCompletionWaiter, InvalidModernGroupError>;
    fn del_membership(
        &self,
        group: ModernGroup,
    ) -> Result<(), InvalidModernGroupError>;
    fn set_legacy_memberships(
        &self,
        legacy_memberships: LegacyGroups,
    ) -> Result<AsyncWorkCompletionWaiter, InvalidLegacyGroupsError>;
}
Expand description

A client of a Netlink protocol family.

Required Associated Types§

Source

type Request: Clone + Debug + NetlinkDeserializable<Error: Into<DecodeError>> + MessageWithPermission + Send

The request message type associated with this client’s protocol family.

Required Methods§

Source

fn set_pid(&self, pid: NonZeroU32)

Sets the PID assigned to the client.

Source

fn add_membership( &self, group: ModernGroup, ) -> Result<AsyncWorkCompletionWaiter, InvalidModernGroupError>

Adds the given multicast group membership.

Source

fn del_membership( &self, group: ModernGroup, ) -> Result<(), InvalidModernGroupError>

Deletes the given multicast group membership.

Source

fn set_legacy_memberships( &self, legacy_memberships: LegacyGroups, ) -> Result<AsyncWorkCompletionWaiter, InvalidLegacyGroupsError>

Sets the legacy multicast group memberships.

Implementors§