Trait hyperdriver::stream::tls::TlsHandshakeStream

source ·
pub trait TlsHandshakeStream: Send {
    // Required method
    fn poll_handshake(
        &mut self,
        cx: &mut Context<'_>,
    ) -> Poll<Result<(), Error>>;

    // Provided method
    fn finish_handshake(
        &mut self,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + '_>> { ... }
}
Available on crate feature tls only.
Expand description

A stream that supports a TLS handshake.

Required Methods§

source

fn poll_handshake(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Error>>

Poll the handshake to completion.

Provided Methods§

source

fn finish_handshake( &mut self, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + '_>>

Finish the TLS handshake.

This method will drive the connection asynchronosly allowing you to wait for the TLS handshake to complete. If this method is not called, the TLS handshake will be completed the first time the connection is used.

Implementors§

source§

impl<IO> TlsHandshakeStream for hyperdriver::client::conn::stream::Stream<IO>
where IO: HasConnectionInfo + AsyncRead + AsyncWrite + Send + Unpin + 'static, IO::Addr: Send + Unpin + Clone,

Available on crate feature client only.
source§

impl<IO> TlsHandshakeStream for hyperdriver::client::conn::stream::TlsStream<IO>

Available on crate feature client only.
source§

impl<IO> TlsHandshakeStream for hyperdriver::server::conn::Stream<IO>

Available on crate feature server only.
source§

impl<IO> TlsHandshakeStream for hyperdriver::server::conn::tls::TlsStream<IO>

Available on crate feature server only.
source§

impl<Tls, NoTls> TlsHandshakeStream for TlsBraid<Tls, NoTls>