[][src]Struct tokio_seqpacket::UnixSeqpacket

pub struct UnixSeqpacket { /* fields omitted */ }

Unix seqpacket socket.

Implementations

impl UnixSeqpacket[src]

pub async fn connect<P: AsRef<Path>>(address: P) -> Result<Self>[src]

Connect a new seqpacket socket to the given address.

pub fn pair() -> Result<(Self, Self)>[src]

Create a pair of connected seqpacket sockets.

pub unsafe fn from_raw_fd(fd: RawFd) -> Result<Self>[src]

Wrap a raw file descriptor as UnixSeqpacket.

Registration of the file descriptor with the tokio runtime may fail. For that reason, this function returns a std::io::Result.

Safety

This function is unsafe because the socket assumes it is the sole owner of the file descriptor. Usage of this function could accidentally allow violating this contract which can cause memory unsafety in code that relies on it being true.

pub fn as_raw_fd(&self) -> RawFd[src]

Get the raw file descriptor of the socket.

pub fn into_raw_fd(self) -> RawFd[src]

Deregister the socket from the tokio runtime and return the inner file descriptor.

pub fn local_addr(&self) -> Result<SocketAddr>[src]

Get the socket address of the local half of this connection.

pub fn peer_addr(&self) -> Result<SocketAddr>[src]

Get the socket address of the remote half of this connection.

pub fn peer_cred(&self) -> Result<UCred>[src]

Get the effective credentials of the process which called connect or pair.

Note that this is not necessarily the process that currently has the file descriptor of the other side of the connection.

pub fn take_error(&self) -> Result<Option<Error>>[src]

Get the value of the SO_ERROR option.

pub fn poll_send(
    &self,
    cx: &mut Context<'_>,
    buffer: &[u8]
) -> Poll<Result<usize>>
[src]

Try to send data on the socket to the connected peer without blocking.

If the socket is not ready yet, the current task is scheduled to wake up when the socket becomes writeable.

pub fn poll_send_vectored(
    &self,
    cx: &mut Context<'_>,
    buffer: &[IoSlice<'_>]
) -> Poll<Result<usize>>
[src]

Try to send data on the socket to the connected peer without blocking.

If the socket is not ready yet, the current task is scheduled to wake up when the socket becomes writeable.

pub fn poll_send_vectored_with_ancillary(
    &self,
    cx: &mut Context<'_>,
    buffer: &[IoSlice<'_>],
    ancillary: &mut SocketAncillary<'_>
) -> Poll<Result<usize>>
[src]

Try to send data with ancillary data on the socket to the connected peer without blocking.

If the socket is not ready yet, the current task is scheduled to wake up when the socket becomes writeable.

pub async fn send(&self, buffer: &[u8]) -> Result<usize>[src]

Send data on the socket to the connected peer.

pub async fn send_vectored(&self, buffer: &[IoSlice<'_>]) -> Result<usize>[src]

Send data on the socket to the connected peer.

pub async fn send_vectored_with_ancillary(
    &self,
    buffer: &[IoSlice<'_>],
    ancillary: &mut SocketAncillary<'_>
) -> Result<usize>
[src]

Send data with ancillary data on the socket to the connected peer.

pub fn poll_recv(
    &self,
    cx: &mut Context<'_>,
    buffer: &mut [u8]
) -> Poll<Result<usize>>
[src]

Try to receive data on the socket from the connected peer without blocking.

If there is no data ready yet, the current task is scheduled to wake up when the socket becomes readable.

pub fn poll_recv_vectored(
    &self,
    cx: &mut Context<'_>,
    buffer: &mut [IoSliceMut<'_>]
) -> Poll<Result<usize>>
[src]

Try to receive data on the socket from the connected peer without blocking.

If there is no data ready yet, the current task is scheduled to wake up when the socket becomes readable.

pub fn poll_recv_vectored_with_ancillary(
    &self,
    cx: &mut Context<'_>,
    buffer: &mut [IoSliceMut<'_>],
    ancillary: &mut SocketAncillary<'_>
) -> Poll<Result<usize>>
[src]

Try to receive data with ancillary data on the socket from the connected peer without blocking.

If there is no data ready yet, the current task is scheduled to wake up when the socket becomes readable.

pub async fn recv(&self, buffer: &mut [u8]) -> Result<usize>[src]

Receive data on the socket from the connected peer.

pub async fn recv_vectored(
    &self,
    buffer: &mut [IoSliceMut<'_>]
) -> Result<usize>
[src]

Receive data on the socket from the connected peer.

pub async fn recv_vectored_with_ancillary(
    &self,
    buffer: &mut [IoSliceMut<'_>],
    ancillary: &mut SocketAncillary<'_>
) -> Result<usize>
[src]

Receive data with ancillary data on the socket from the connected peer.

pub fn shutdown(&self, how: Shutdown) -> Result<()>[src]

Shuts down the read, write, or both halves of this connection.

This function will cause all pending and future I/O calls on the specified portions to immediately return with an appropriate value (see the documentation of Shutdown).

Trait Implementations

impl AsRawFd for UnixSeqpacket[src]

impl Debug for UnixSeqpacket[src]

impl IntoRawFd for UnixSeqpacket[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.