pub trait UnixStreamExt: AsRawFd + FromRawFd + Sized {
    fn connect_to_unix_addr(addr: &UnixSocketAddr) -> Result<Self, Error>;
    fn connect_from_to_unix_addr(
        from: &UnixSocketAddr,
        to: &UnixSocketAddr
    ) -> Result<Self, Error>; fn local_unix_addr(&self) -> Result<UnixSocketAddr, Error> { ... } fn peer_unix_addr(&self) -> Result<UnixSocketAddr, Error> { ... } fn send_fds(&self, bytes: &[u8], fds: &[RawFd]) -> Result<usize, Error> { ... } fn recv_fds(
        &self,
        buf: &mut [u8],
        fd_buf: &mut [RawFd]
    ) -> Result<(usize, usize), Error> { ... } fn initial_peer_credentials(&self) -> Result<ConnCredentials, Error> { ... } fn initial_peer_selinux_context(
        &self,
        buffer: &mut [u8]
    ) -> Result<usize, Error> { ... } }
Expand description

Extension trait for std::os::unix::net::UnixDatagram and nonblocking equivalents.

Required Methods

Creates a connection to a listening path-based or abstract named socket.

Creates a path-based or abstract-named socket and connects to a listening socket.

Provided Methods

Get the address of this socket, as a type that fully supports abstract addresses.

Returns the address of the other end of this stream, as a type that fully supports abstract addresses.

Sends file descriptors in addition to bytes.

Receives file descriptors in addition to bytes.

Returns the credentials of the process that created the other end of this stream.

Returns the SELinux security context of the process that created the other end of this stream.

Will return an error on other operating systems than Linux or Android, and also if running under kubernetes. On success the number of bytes used is returned. (like Read)

The default security context is unconfined, without any trailing NUL.
A buffor of 50 bytes is probably always big enough.

Implementations on Foreign Types

Implementors