Enum nix::sys::socket::AddressFamily

#[repr(i32)]
#[non_exhaustive]
pub enum AddressFamily {    
    Unix,
    Inet,
    Inet6,
    Netlink,
    Packet,
    Ax25,
    Ipx,
    AppleTalk,
    NetRom,
    Bridge,
    AtmPvc,
    X25,
    Rose,
    Decnet,
    NetBeui,
    Security,
    Key,
    Ash,
    Econet,
    AtmSvc,
    Rds,
    Sna,
    Irda,
    Pppox,
    Wanpipe,
    Llc,
    Ib,
    Mpls,
    Can,
    Tipc,
    Bluetooth,
    Iucv,
    RxRpc,
    Isdn,
    Phonet,
    Ieee802154,
    Caif,
    Alg,
    Nfc,
    Vsock,
    Unspec,
}
Documentation

These constants specify the protocol family to be used in socket and socketpair

Variants

Unix

Local communication (see unix(7))

Inet

IPv4 Internet protocols (see ip(7))

Inet6

IPv6 Internet protocols (see ipv6(7))

Packet

Low level packet interface (see packet(7))

Ax25

Amateur radio AX.25 protocol

Ipx

IPX - Novell protocols

AppleTalk

AppleTalk

NetRom
Bridge
AtmPvc

Access to raw ATM PVCs

X25

ITU-T X.25 / ISO-8208 protocol (see x25(7))

Rose
Decnet
NetBeui
Security
Key
Ash
Econet
AtmSvc
Rds
Sna
Irda
Pppox
Wanpipe
Llc
Ib
Mpls
Can
Tipc
Bluetooth
Iucv
RxRpc
Isdn
Phonet
Ieee802154
Caif
Alg

Interface to kernel crypto API

Nfc
Vsock
Unspec

Unspecified address family, (see getaddrinfo(3))

Implementations

impl AddressFamily
pub const fn from_i32(family: i32) -> Option<AddressFamily>

Create a new AddressFamily from an integer value retrieved from libc, usually from the sa_family field of a sockaddr.

Currently only supports these address families: Unix, Inet (v4 & v6), Netlink, Link/Packet and System. Returns None for unsupported or unknown address families.

Trait Implementations

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

Auto Trait Implementations

impl Send for AddressFamily
impl Sync for AddressFamily
impl Unpin for AddressFamily

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>