Function netlink_proto::new_connection
source · [−]pub fn new_connection<T>(
protocol: isize
) -> Result<(Connection<T>, ConnectionHandle<T>, UnboundedReceiver<(NetlinkMessage<T>, SocketAddr)>)> where
T: Debug + NetlinkSerializable + NetlinkDeserializable + Unpin,
Expand description
Create a new Netlink connection for the given Netlink protocol, and returns a handle to that
connection as well as a stream of unsolicited messages received by that connection (unsolicited
here means messages that are not a response to a request made by the Connection
).
Connection<T>
wraps a Netlink socket and implements the Netlink protocol.
protocol
must be one of the crate::sys::protocols
constants.
T
is the type of netlink messages used for this protocol. For instance, if you’re using the
NETLINK_AUDIT
protocol with the netlink-packet-audit
crate, T
will be
netlink_packet_audit::AuditMessage
. More generally, T
is anything that can be serialized
and deserialized into a Netlink message. See the netlink_packet_core
documentation for
details about the NetlinkSerializable
and NetlinkDeserializable
traits.
Most of the time, users will want to spawn the Connection
on an async runtime, and use the
handle to send messages.