pub struct AsyncSslStream<S>(/* private fields */);
Available on crate features
connect
and openssl
only.Expand description
An asynchronous version of openssl::ssl::SslStream
.
Implementations§
source§impl<S> SslStream<S>where
S: AsyncRead + AsyncWrite,
impl<S> SslStream<S>where
S: AsyncRead + AsyncWrite,
sourcepub fn new(ssl: Ssl, stream: S) -> Result<SslStream<S>, ErrorStack>
pub fn new(ssl: Ssl, stream: S) -> Result<SslStream<S>, ErrorStack>
Like SslStream::new
.
sourcepub fn poll_connect(
self: Pin<&mut SslStream<S>>,
cx: &mut Context<'_>
) -> Poll<Result<(), Error>>
pub fn poll_connect( self: Pin<&mut SslStream<S>>, cx: &mut Context<'_> ) -> Poll<Result<(), Error>>
Like SslStream::connect
.
sourcepub async fn connect(self: Pin<&mut SslStream<S>>) -> Result<(), Error>
pub async fn connect(self: Pin<&mut SslStream<S>>) -> Result<(), Error>
A convenience method wrapping poll_connect
.
sourcepub fn poll_accept(
self: Pin<&mut SslStream<S>>,
cx: &mut Context<'_>
) -> Poll<Result<(), Error>>
pub fn poll_accept( self: Pin<&mut SslStream<S>>, cx: &mut Context<'_> ) -> Poll<Result<(), Error>>
Like SslStream::accept
.
sourcepub async fn accept(self: Pin<&mut SslStream<S>>) -> Result<(), Error>
pub async fn accept(self: Pin<&mut SslStream<S>>) -> Result<(), Error>
A convenience method wrapping poll_accept
.
sourcepub fn poll_do_handshake(
self: Pin<&mut SslStream<S>>,
cx: &mut Context<'_>
) -> Poll<Result<(), Error>>
pub fn poll_do_handshake( self: Pin<&mut SslStream<S>>, cx: &mut Context<'_> ) -> Poll<Result<(), Error>>
Like SslStream::do_handshake
.
sourcepub async fn do_handshake(self: Pin<&mut SslStream<S>>) -> Result<(), Error>
pub async fn do_handshake(self: Pin<&mut SslStream<S>>) -> Result<(), Error>
A convenience method wrapping poll_do_handshake
.
sourcepub fn poll_read_early_data(
self: Pin<&mut SslStream<S>>,
cx: &mut Context<'_>,
buf: &mut [u8]
) -> Poll<Result<usize, Error>>
Available on ossl111
only.
pub fn poll_read_early_data( self: Pin<&mut SslStream<S>>, cx: &mut Context<'_>, buf: &mut [u8] ) -> Poll<Result<usize, Error>>
ossl111
only.sourcepub async fn read_early_data(
self: Pin<&mut SslStream<S>>,
buf: &mut [u8]
) -> Result<usize, Error>
Available on ossl111
only.
pub async fn read_early_data( self: Pin<&mut SslStream<S>>, buf: &mut [u8] ) -> Result<usize, Error>
ossl111
only.A convenience method wrapping poll_read_early_data
.
sourcepub fn poll_write_early_data(
self: Pin<&mut SslStream<S>>,
cx: &mut Context<'_>,
buf: &[u8]
) -> Poll<Result<usize, Error>>
Available on ossl111
only.
pub fn poll_write_early_data( self: Pin<&mut SslStream<S>>, cx: &mut Context<'_>, buf: &[u8] ) -> Poll<Result<usize, Error>>
ossl111
only.sourcepub async fn write_early_data(
self: Pin<&mut SslStream<S>>,
buf: &[u8]
) -> Result<usize, Error>
Available on ossl111
only.
pub async fn write_early_data( self: Pin<&mut SslStream<S>>, buf: &[u8] ) -> Result<usize, Error>
ossl111
only.A convenience method wrapping poll_write_early_data
.
Trait Implementations§
source§impl<S> AsyncWrite for SslStream<S>where
S: AsyncRead + AsyncWrite,
impl<S> AsyncWrite for SslStream<S>where
S: AsyncRead + AsyncWrite,
source§fn poll_write(
self: Pin<&mut SslStream<S>>,
ctx: &mut Context<'_>,
buf: &[u8]
) -> Poll<Result<usize, Error>>
fn poll_write( self: Pin<&mut SslStream<S>>, ctx: &mut Context<'_>, buf: &[u8] ) -> Poll<Result<usize, Error>>
Attempt to write bytes from
buf
into the object. Read moresource§fn poll_flush(
self: Pin<&mut SslStream<S>>,
ctx: &mut Context<'_>
) -> Poll<Result<(), Error>>
fn poll_flush( self: Pin<&mut SslStream<S>>, ctx: &mut Context<'_> ) -> Poll<Result<(), Error>>
Attempts to flush the object, ensuring that any buffered data reach
their destination. Read more
source§fn poll_shutdown(
self: Pin<&mut SslStream<S>>,
ctx: &mut Context<'_>
) -> Poll<Result<(), Error>>
fn poll_shutdown( self: Pin<&mut SslStream<S>>, ctx: &mut Context<'_> ) -> Poll<Result<(), Error>>
Initiates or attempts to shut down this writer, returning success when
the I/O connection has completely shut down. Read more
source§fn poll_write_vectored(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &[IoSlice<'_>]
) -> Poll<Result<usize, Error>>
fn poll_write_vectored( self: Pin<&mut Self>, cx: &mut Context<'_>, bufs: &[IoSlice<'_>] ) -> Poll<Result<usize, Error>>
Like
poll_write
, except that it writes from a slice of buffers. Read moresource§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
Determines if this writer has an efficient
poll_write_vectored
implementation. Read moreAuto Trait Implementations§
impl<S> Freeze for SslStream<S>
impl<S> RefUnwindSafe for SslStream<S>where
S: RefUnwindSafe,
impl<S> Send for SslStream<S>where
S: Send,
impl<S> Sync for SslStream<S>where
S: Sync,
impl<S> Unpin for SslStream<S>where
S: Unpin,
impl<S> UnwindSafe for SslStream<S>where
S: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more