Enum nix::sys::socket::AddressFamily
source · #[repr(i32)]
#[non_exhaustive]
pub enum AddressFamily {
Show 23 variants
Unix,
Inet,
Inet6,
Ipx,
AppleTalk,
Decnet,
Sna,
Bluetooth,
Isdn,
ImpLink,
Pup,
Chaos,
Ns,
Iso,
Datakit,
Ccitt,
Dli,
Lat,
Hylink,
Link,
Coip,
Cnt,
Natm,
}
Expand description
These constants specify the protocol family to be used
in socket
and socketpair
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Unix
Local communication (see unix(7)
)
Inet
IPv4 Internet protocols (see ip(7)
)
Inet6
IPv6 Internet protocols (see ipv6(7)
)
Ipx
IPX - Novell protocols
AppleTalk
AppleTalk
Decnet
Sna
Bluetooth
Isdn
ImpLink
Pup
Chaos
Ns
Iso
Datakit
Ccitt
Dli
Lat
Hylink
Link
Coip
Cnt
Natm
Implementations§
source§impl AddressFamily
impl AddressFamily
sourcepub const fn from_i32(family: i32) -> Option<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§
source§impl Clone for AddressFamily
impl Clone for AddressFamily
source§fn clone(&self) -> AddressFamily
fn clone(&self) -> AddressFamily
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more