pub struct SocketListener {
    fd: SystemListener,
    drop_path: Option<Box<dyn Any>>,
}
Expand description

Unix domain socket listener for accepting incoming connections.

Fields§

§fd: SystemListener§drop_path: Option<Box<dyn Any>>

Implementations§

source§

impl SocketListener

source

pub fn new<P: AsRef<Path>>(path: P, unlink: bool) -> Result<Self>

Create a unix domain socket listener.

§Return:
    • the new SocketListener object on success.
    • SocketError: failed to create listener socket.
source

pub fn take_resources_for_parent(&mut self) -> Option<Box<dyn Any>>

Take and return the resources that the parent process needs to keep alive as long as the child process lives, in case of incoming fork.

Trait Implementations§

source§

impl AsRawDescriptor for SocketListener

source§

fn as_raw_descriptor(&self) -> RawDescriptor

Returns the underlying raw descriptor. Read more
source§

impl Listener for SocketListener

source§

fn accept(&mut self) -> Result<Option<Connection<FrontendReq>>>

Accept an incoming connection.

§Return:
    • Some(SystemListener): new SystemListener object if new incoming connection is available.
    • None: no incoming connection available.
    • SocketError: errors from accept().
source§

fn set_nonblocking(&self, block: bool) -> Result<()>

Change blocking status on the listener.

§Return:
    • () on success.
    • SocketError: failure from set_nonblocking().

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> AsRawDescriptors for T
where T: AsRawDescriptor,

§

fn as_raw_descriptors(&self) -> Vec<i32>

Returns the underlying raw descriptors. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.