pub struct MsgHdr<'addr, 'bufs, 'control> { /* private fields */ }Expand description
Configuration of a sendmsg(2) system call.
This wraps msghdr on Unix and WSAMSG on Windows. Also see MsgHdrMut
for the variant used by recvmsg(2).
Implementations§
Source§impl<'addr, 'bufs, 'control> MsgHdr<'addr, 'bufs, 'control>
impl<'addr, 'bufs, 'control> MsgHdr<'addr, 'bufs, 'control>
Sourcepub fn with_addr(self, addr: &'addr SockAddr) -> Self
pub fn with_addr(self, addr: &'addr SockAddr) -> Self
Set the address (name) of the message.
Corresponds to setting msg_name and msg_namelen on Unix and name
and namelen on Windows.
Sourcepub fn with_buffers(self, bufs: &'bufs [IoSlice<'_>]) -> Self
pub fn with_buffers(self, bufs: &'bufs [IoSlice<'_>]) -> Self
Set the buffer(s) of the message.
Corresponds to setting msg_iov and msg_iovlen on Unix and lpBuffers
and dwBufferCount on Windows.
Sourcepub fn with_control(self, buf: &'control [u8]) -> Self
pub fn with_control(self, buf: &'control [u8]) -> Self
Set the control buffer of the message.
Corresponds to setting msg_control and msg_controllen on Unix and
Control on Windows.
Sourcepub fn with_flags(self, flags: c_int) -> Self
pub fn with_flags(self, flags: c_int) -> Self
Set the flags of the message.
Corresponds to setting msg_flags on Unix and dwFlags on Windows.
Trait Implementations§
Auto Trait Implementations§
impl<'addr, 'bufs, 'control> Freeze for MsgHdr<'addr, 'bufs, 'control>
impl<'addr, 'bufs, 'control> RefUnwindSafe for MsgHdr<'addr, 'bufs, 'control>
impl<'addr, 'bufs, 'control> !Send for MsgHdr<'addr, 'bufs, 'control>
impl<'addr, 'bufs, 'control> !Sync for MsgHdr<'addr, 'bufs, 'control>
impl<'addr, 'bufs, 'control> Unpin for MsgHdr<'addr, 'bufs, 'control>
impl<'addr, 'bufs, 'control> UnwindSafe for MsgHdr<'addr, 'bufs, 'control>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 56 bytes