Struct bitflags::__core::os::ext::net::UnixListener
[−]
[src]
pub struct UnixListener(_);
unix_socket): newly added
A structure representing a Unix domain socket server.
Examples
#![feature(unix_socket)] use std::thread; use std::os::unix::net::{UnixStream, UnixListener}; fn handle_client(stream: UnixStream) { // ... } let listener = UnixListener::bind("/path/to/the/socket").unwrap(); // accept connections and process them, spawning a new thread for each one for stream in listener.incoming() { match stream { Ok(stream) => { /* connection succeeded */ thread::spawn(|| handle_client(stream)); } Err(err) => { /* connection failed */ break; } } } // close the listener socket drop(listener);
Methods
impl UnixListener
fn bind<P>(path: P) -> Result<UnixListener, Error> where P: AsRef<Path>
unix_socket): newly added
Creates a new UnixListener bound to the specified socket.
fn accept(&self) -> Result<(UnixStream, SocketAddr), Error>
unix_socket): newly added
Accepts a new incoming connection to this listener.
This function will block the calling thread until a new Unix connection
is established. When established, the corersponding UnixStream and
the remote peer's address will be returned.
fn try_clone(&self) -> Result<UnixListener, Error>
unix_socket): newly added
Creates a new independently owned handle to the underlying socket.
The returned UnixListener is a reference to the same socket that this
object references. Both handles can be used to accept incoming
connections and options set on one listener will affect the other.
fn local_addr(&self) -> Result<SocketAddr, Error>
unix_socket): newly added
Returns the local socket address of this listener.
fn set_nonblocking(&self, nonblocking: bool) -> Result<(), Error>
unix_socket): newly added
Moves the socket into or out of nonblocking mode.
fn take_error(&self) -> Result<Option<Error>, Error>
unix_socket): newly added
Returns the value of the SO_ERROR option.
fn incoming(&'a self) -> Incoming<'a>
unix_socket): newly added
Returns an iterator over incoming connections.
The iterator will never return None and will also not yield the
peer's SocketAddr structure.
Trait Implementations
impl Debug for UnixListener
impl AsRawFd for UnixListener
impl FromRawFd for UnixListener
unsafe fn from_raw_fd(fd: i32) -> UnixListener
unix_socket): newly added
impl IntoRawFd for UnixListener
fn into_raw_fd(self) -> i32
unix_socket): newly added