Skip to main content

ProxyConfiguration

Trait ProxyConfiguration 

Source
pub trait ProxyConfiguration {
    // Required methods
    fn notify(&mut self, message: WorkerRequest) -> WorkerResponse;
    fn accept(
        &mut self,
        token: ListenToken,
    ) -> Result<(TcpStream, SocketAddr), AcceptError>;
    fn create_session(
        &mut self,
        socket: TcpStream,
        peer: SocketAddr,
        token: ListenToken,
        wait_time: Duration,
        proxy: Rc<RefCell<Self>>,
    ) -> Result<(), AcceptError>;
}

Required Methods§

Source

fn notify(&mut self, message: WorkerRequest) -> WorkerResponse

Source

fn accept( &mut self, token: ListenToken, ) -> Result<(TcpStream, SocketAddr), AcceptError>

Accept one connection on the listener behind token, returning the socket together with the peer address accept(2) reported for it.

Source

fn create_session( &mut self, socket: TcpStream, peer: SocketAddr, token: ListenToken, wait_time: Duration, proxy: Rc<RefCell<Self>>, ) -> Result<(), AcceptError>

Build the session for a socket Self::accept returned. peer is the address accept(2) returned with it, so the session never has to ask the kernel again with getpeername(2).

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§