pub struct UnixStream { /* private fields */ }
uds
only.Expand description
A structure representing a connected Unix socket.
This socket can be connected directly with UnixStream::connect
or accepted
from a listener with UnixListener::incoming
. Additionally, a pair of
anonymous Unix sockets can be created with UnixStream::pair
.
Implementations§
Source§impl UnixStream
impl UnixStream
Sourcepub async fn connect<P>(path: P) -> Result<UnixStream>
pub async fn connect<P>(path: P) -> Result<UnixStream>
Connects to the socket named by path
.
This function will create a new Unix socket and connect to the path specified, associating the returned stream with the default event loop’s handle.
Sourcepub fn from_std(stream: UnixStream) -> Result<UnixStream>
pub fn from_std(stream: UnixStream) -> Result<UnixStream>
Consumes a UnixStream
in the standard library and returns a
nonblocking UnixStream
from this crate.
The returned stream will be associated with the given event loop
specified by handle
and is ready to perform I/O.
§Panics
This function panics if thread-local runtime is not set.
The runtime is usually set implicitly when this function is called
from a future driven by a tokio runtime, otherwise runtime can be set
explicitly with Handle::enter
function.
Sourcepub fn pair() -> Result<(UnixStream, UnixStream)>
pub fn pair() -> Result<(UnixStream, UnixStream)>
Creates an unnamed pair of connected sockets.
This function will create a pair of interconnected Unix sockets for communicating back and forth between one another. Each socket will be associated with the default event loop’s handle.
Sourcepub fn local_addr(&self) -> Result<SocketAddr>
pub fn local_addr(&self) -> Result<SocketAddr>
Returns the socket address of the local half of this connection.
Sourcepub fn peer_addr(&self) -> Result<SocketAddr>
pub fn peer_addr(&self) -> Result<SocketAddr>
Returns the socket address of the remote half of this connection.
Sourcepub fn peer_cred(&self) -> Result<UCred>
pub fn peer_cred(&self) -> Result<UCred>
Returns effective credentials of the process which called connect
or pair
.
Sourcepub fn take_error(&self) -> Result<Option<Error>>
pub fn take_error(&self) -> Result<Option<Error>>
Returns the value of the SO_ERROR
option.
Trait Implementations§
Source§impl AsRawFd for UnixStream
impl AsRawFd for UnixStream
Source§impl AsRef<UnixStream> for ReadHalf<'_>
impl AsRef<UnixStream> for ReadHalf<'_>
Source§fn as_ref(&self) -> &UnixStream
fn as_ref(&self) -> &UnixStream
Source§impl AsRef<UnixStream> for WriteHalf<'_>
impl AsRef<UnixStream> for WriteHalf<'_>
Source§fn as_ref(&self) -> &UnixStream
fn as_ref(&self) -> &UnixStream
Source§impl AsyncRead for UnixStream
impl AsyncRead for UnixStream
Source§unsafe fn prepare_uninitialized_buffer(&self, _: &mut [MaybeUninit<u8>]) -> bool
unsafe fn prepare_uninitialized_buffer(&self, _: &mut [MaybeUninit<u8>]) -> bool
read
. Returns
true
if the supplied buffer was zeroed out. Read moreSource§impl AsyncWrite for UnixStream
impl AsyncWrite for UnixStream
Source§fn poll_write(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8],
) -> Poll<Result<usize>>
fn poll_write( self: Pin<&mut Self>, cx: &mut Context<'_>, buf: &[u8], ) -> Poll<Result<usize>>
buf
into the object. Read moreSource§fn poll_flush(self: Pin<&mut Self>, _: &mut Context<'_>) -> Poll<Result<()>>
fn poll_flush(self: Pin<&mut Self>, _: &mut Context<'_>) -> Poll<Result<()>>
Source§impl Debug for UnixStream
impl Debug for UnixStream
Source§impl TryFrom<UnixStream> for UnixStream
impl TryFrom<UnixStream> for UnixStream
Source§impl TryFrom<UnixStream> for UnixStream
impl TryFrom<UnixStream> for UnixStream
Source§fn try_from(stream: UnixStream) -> Result<Self>
fn try_from(stream: UnixStream) -> Result<Self>
Consumes stream, returning the tokio I/O object.
This is equivalent to
UnixStream::from_std(stream)
.
Auto Trait Implementations§
impl !Freeze for UnixStream
impl !RefUnwindSafe for UnixStream
impl Send for UnixStream
impl Sync for UnixStream
impl Unpin for UnixStream
impl !UnwindSafe for UnixStream
Blanket Implementations§
Source§impl<R> AsyncReadExt for R
impl<R> AsyncReadExt for R
Source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>where
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>where
Self: Unpin,
io-util
only.Source§fn read_buf<'a, B>(&'a mut self, buf: &'a mut B) -> ReadBuf<'a, Self, B>
fn read_buf<'a, B>(&'a mut self, buf: &'a mut B) -> ReadBuf<'a, Self, B>
io-util
only.Source§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>where
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>where
Self: Unpin,
io-util
only.buf
. Read moreSource§fn read_u8<'a>(&'a mut self) -> ReadU8<&'a mut Self>where
Self: Unpin,
fn read_u8<'a>(&'a mut self) -> ReadU8<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_i8<'a>(&'a mut self) -> ReadI8<&'a mut Self>where
Self: Unpin,
fn read_i8<'a>(&'a mut self) -> ReadI8<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_u16<'a>(&'a mut self) -> ReadU16<&'a mut Self>where
Self: Unpin,
fn read_u16<'a>(&'a mut self) -> ReadU16<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_i16<'a>(&'a mut self) -> ReadI16<&'a mut Self>where
Self: Unpin,
fn read_i16<'a>(&'a mut self) -> ReadI16<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_u32<'a>(&'a mut self) -> ReadU32<&'a mut Self>where
Self: Unpin,
fn read_u32<'a>(&'a mut self) -> ReadU32<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_i32<'a>(&'a mut self) -> ReadI32<&'a mut Self>where
Self: Unpin,
fn read_i32<'a>(&'a mut self) -> ReadI32<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_u64<'a>(&'a mut self) -> ReadU64<&'a mut Self>where
Self: Unpin,
fn read_u64<'a>(&'a mut self) -> ReadU64<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_i64<'a>(&'a mut self) -> ReadI64<&'a mut Self>where
Self: Unpin,
fn read_i64<'a>(&'a mut self) -> ReadI64<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_u128<'a>(&'a mut self) -> ReadU128<&'a mut Self>where
Self: Unpin,
fn read_u128<'a>(&'a mut self) -> ReadU128<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_i128<'a>(&'a mut self) -> ReadI128<&'a mut Self>where
Self: Unpin,
fn read_i128<'a>(&'a mut self) -> ReadI128<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>where
Self: Unpin,
fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>where
Self: Unpin,
io-util
only.buf
. Read moreSource§impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
Source§fn write<'a>(&'a mut self, src: &'a [u8]) -> Write<'a, Self>where
Self: Unpin,
fn write<'a>(&'a mut self, src: &'a [u8]) -> Write<'a, Self>where
Self: Unpin,
io-util
only.Source§fn write_buf<'a, B>(&'a mut self, src: &'a mut B) -> WriteBuf<'a, Self, B>
fn write_buf<'a, B>(&'a mut self, src: &'a mut B) -> WriteBuf<'a, Self, B>
io-util
only.Source§fn write_all<'a>(&'a mut self, src: &'a [u8]) -> WriteAll<'a, Self>where
Self: Unpin,
fn write_all<'a>(&'a mut self, src: &'a [u8]) -> WriteAll<'a, Self>where
Self: Unpin,
io-util
only.Source§fn write_u8<'a>(&'a mut self, n: u8) -> WriteU8<&'a mut Self>where
Self: Unpin,
fn write_u8<'a>(&'a mut self, n: u8) -> WriteU8<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_i8<'a>(&'a mut self, n: i8) -> WriteI8<&'a mut Self>where
Self: Unpin,
fn write_i8<'a>(&'a mut self, n: i8) -> WriteI8<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_u16<'a>(&'a mut self, n: u16) -> WriteU16<&'a mut Self>where
Self: Unpin,
fn write_u16<'a>(&'a mut self, n: u16) -> WriteU16<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_i16<'a>(&'a mut self, n: i16) -> WriteI16<&'a mut Self>where
Self: Unpin,
fn write_i16<'a>(&'a mut self, n: i16) -> WriteI16<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_u32<'a>(&'a mut self, n: u32) -> WriteU32<&'a mut Self>where
Self: Unpin,
fn write_u32<'a>(&'a mut self, n: u32) -> WriteU32<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_i32<'a>(&'a mut self, n: i32) -> WriteI32<&'a mut Self>where
Self: Unpin,
fn write_i32<'a>(&'a mut self, n: i32) -> WriteI32<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_u64<'a>(&'a mut self, n: u64) -> WriteU64<&'a mut Self>where
Self: Unpin,
fn write_u64<'a>(&'a mut self, n: u64) -> WriteU64<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_i64<'a>(&'a mut self, n: i64) -> WriteI64<&'a mut Self>where
Self: Unpin,
fn write_i64<'a>(&'a mut self, n: i64) -> WriteI64<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_u128<'a>(&'a mut self, n: u128) -> WriteU128<&'a mut Self>where
Self: Unpin,
fn write_u128<'a>(&'a mut self, n: u128) -> WriteU128<&'a mut Self>where
Self: Unpin,
io-util
only.Source§fn write_i128<'a>(&'a mut self, n: i128) -> WriteI128<&'a mut Self>where
Self: Unpin,
fn write_i128<'a>(&'a mut self, n: i128) -> WriteI128<&'a mut Self>where
Self: Unpin,
io-util
only.