Enum nix::sys::socket::SockProtocol

#[repr(i32)]
#[non_exhaustive]
pub enum SockProtocol {    
    Tcp,
    Udp,
    NetlinkRoute,
    NetlinkUserSock,
    NetlinkSockDiag,
    NetlinkSELinux,
    NetlinkISCSI,
    NetlinkAudit,
    NetlinkFIBLookup,
    NetlinkNetFilter,
    NetlinkSCSITransport,
    NetlinkRDMA,
    NetlinkIPv6Firewall,
    NetlinkDECNetRoutingMessage,
    NetlinkKObjectUEvent,
    NetlinkCrypto,
}
Documentation

Constants used in socket and socketpair to specify the protocol to use.

Variants

Tcp

TCP protocol (ip(7))

Udp

UDP protocol (ip(7))

NetlinkRoute

Receives routing and link updates and may be used to modify the routing tables (both IPv4 and IPv6), IP addresses, link (ref)

NetlinkUserSock

Reserved for user-mode socket protocols (ref)

NetlinkSockDiag

Query information about sockets of various protocol families from the kernel (ref)

NetlinkSELinux

SELinux event notifications. (ref)

NetlinkISCSI

Open-iSCSI (ref)

NetlinkAudit

Auditing (ref)

NetlinkFIBLookup

Access to FIB lookup from user space (ref)

NetlinkNetFilter

Netfilter subsystem (ref)

NetlinkSCSITransport

SCSI Transports (ref)

NetlinkRDMA

Infiniband RDMA (ref)

NetlinkIPv6Firewall

Transport IPv6 packets from netfilter to user space. Used by ip6_queue kernel module. (ref)

NetlinkDECNetRoutingMessage

DECnet routing messages (ref)

NetlinkKObjectUEvent

Kernel messages to user space (ref)

NetlinkCrypto

Netlink interface to request information about ciphers registered with the kernel crypto API as well as allow configuration of the kernel crypto API. (ref)

Trait Implementations

impl Clone for SockProtocol
fn clone(&Self) -> SockProtocol
impl Copy for SockProtocol
impl Debug for SockProtocol
fn fmt(&Self, f: &mut $crate::fmt::Formatter<'_>) -> $crate::fmt::Result
impl Eq for SockProtocol
impl Hash for SockProtocol
fn hash<__H: $crate::hash::Hasher>(&Self, state: &mut __H) -> ()
impl PartialEq<SockProtocol> for SockProtocol
fn eq(&Self, other: &SockProtocol) -> bool

Auto Trait Implementations

impl Send for SockProtocol
impl Sync for SockProtocol
impl Unpin for SockProtocol

Blanket Implementations

impl<T> Any for T
where
    T: 'static + ?Sized,
fn type_id(&Self) -> TypeId
impl<T> Borrow<T> for T
where
    T: ?Sized,
fn borrow(&Self) -> &T
impl<T> BorrowMut<T> for T
where
    T: ?Sized,
fn borrow_mut(&mut Self) -> &mut T
impl<T> From<T> for T
fn from(t: T) -> T

Returns the argument unchanged.

impl<T, U> Into<U> for T
where
    U: From<T>,
fn into(Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

impl<T> ToOwned for T
where
    T: Clone,
type Owned = T
fn to_owned(&Self) -> T
fn clone_into(&Self, target: &mut T)
impl<T, U> TryFrom<U> for T
where
    U: Into<T>,
type Error = Infallible
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto<U> for T
where
    U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
fn try_into(Self) -> Result<U, <U as TryFrom<T>>::Error>