Trait nix::sys::socket::SetSockOpt

pub trait SetSockOpt: Clone {    
    type Val;
    
    fn set(
        &Self,
        fd: RawFd,
        val: &Self::Val
    ) -> Result<()>;
}
Documentation

Represents a socket option that can be set.

Associated Types

type Val

Required Methods

fn set(
    &Self,
    fd: RawFd,
    val: &Self::Val
) -> Result<()>

Set the value of this socket option on the given socket.

Implementors

impl SetSockOpt for AlgSetAeadAuthSize
type Val = usize
fn set(
    &Self,
    fd: RawFd,
    val: &usize
) -> Result<()>
impl<T> SetSockOpt for AlgSetKey<T>
where
    T: AsRef<[u8]> + Clone,
type Val = T
fn set(
    &Self,
    fd: RawFd,
    val: &T
) -> Result<()>
impl SetSockOpt for BindToDevice
type Val = OsString
fn set(
    &Self,
    fd: RawFd,
    val: &OsString
) -> Result<()>
impl SetSockOpt for Broadcast
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for IpAddMembership
fn set(
    &Self,
    fd: RawFd,
    val: &super::IpMembershipRequest
) -> Result<()>
impl SetSockOpt for IpDropMembership
fn set(
    &Self,
    fd: RawFd,
    val: &super::IpMembershipRequest
) -> Result<()>
impl SetSockOpt for IpFreebind
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for IpMulticastLoop
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for IpMulticastTtl
type Val = u8
fn set(
    &Self,
    fd: RawFd,
    val: &u8
) -> Result<()>
impl SetSockOpt for IpTransparent
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for Ipv4PacketInfo
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for Ipv4RecvErr
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for Ipv4Ttl
type Val = i32
fn set(
    &Self,
    fd: RawFd,
    val: &libc::c_int
) -> Result<()>
impl SetSockOpt for Ipv6AddMembership
fn set(
    &Self,
    fd: RawFd,
    val: &super::Ipv6MembershipRequest
) -> Result<()>
impl SetSockOpt for Ipv6DropMembership
fn set(
    &Self,
    fd: RawFd,
    val: &super::Ipv6MembershipRequest
) -> Result<()>
impl SetSockOpt for Ipv6RecvErr
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for Ipv6RecvPacketInfo
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for Ipv6Ttl
type Val = i32
fn set(
    &Self,
    fd: RawFd,
    val: &libc::c_int
) -> Result<()>
impl SetSockOpt for Ipv6V6Only
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for KeepAlive
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for Linger
type Val = linger
fn set(
    &Self,
    fd: RawFd,
    val: &libc::linger
) -> Result<()>
impl SetSockOpt for Mark
type Val = u32
fn set(
    &Self,
    fd: RawFd,
    val: &u32
) -> Result<()>
impl SetSockOpt for OobInline
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for PassCred
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for RcvBuf
type Val = usize
fn set(
    &Self,
    fd: RawFd,
    val: &usize
) -> Result<()>
impl SetSockOpt for RcvBufForce
type Val = usize
fn set(
    &Self,
    fd: RawFd,
    val: &usize
) -> Result<()>
impl SetSockOpt for ReceiveTimeout
type Val = TimeVal
fn set(
    &Self,
    fd: RawFd,
    val: &TimeVal
) -> Result<()>
impl SetSockOpt for ReceiveTimestamp
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for ReceiveTimestampns
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for ReuseAddr
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for ReusePort
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for RxqOvfl
type Val = i32
fn set(
    &Self,
    fd: RawFd,
    val: &libc::c_int
) -> Result<()>
impl SetSockOpt for SendTimeout
type Val = TimeVal
fn set(
    &Self,
    fd: RawFd,
    val: &TimeVal
) -> Result<()>
impl SetSockOpt for SndBuf
type Val = usize
fn set(
    &Self,
    fd: RawFd,
    val: &usize
) -> Result<()>
impl SetSockOpt for SndBufForce
type Val = usize
fn set(
    &Self,
    fd: RawFd,
    val: &usize
) -> Result<()>
impl SetSockOpt for TcpCongestion
type Val = OsString
fn set(
    &Self,
    fd: RawFd,
    val: &OsString
) -> Result<()>
impl SetSockOpt for TcpKeepCount
type Val = u32
fn set(
    &Self,
    fd: RawFd,
    val: &u32
) -> Result<()>
impl SetSockOpt for TcpKeepIdle
type Val = u32
fn set(
    &Self,
    fd: RawFd,
    val: &u32
) -> Result<()>
impl SetSockOpt for TcpKeepInterval
type Val = u32
fn set(
    &Self,
    fd: RawFd,
    val: &u32
) -> Result<()>
impl SetSockOpt for TcpMaxSeg
type Val = u32
fn set(
    &Self,
    fd: RawFd,
    val: &u32
) -> Result<()>
impl SetSockOpt for TcpNoDelay
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for TcpRepair
type Val = u32
fn set(
    &Self,
    fd: RawFd,
    val: &u32
) -> Result<()>
impl SetSockOpt for TcpUserTimeout
type Val = u32
fn set(
    &Self,
    fd: RawFd,
    val: &u32
) -> Result<()>
impl SetSockOpt for UdpGroSegment
type Val = bool
fn set(
    &Self,
    fd: RawFd,
    val: &bool
) -> Result<()>
impl SetSockOpt for UdpGsoSegment
type Val = i32
fn set(
    &Self,
    fd: RawFd,
    val: &libc::c_int
) -> Result<()>