Struct tokio_boring::SslStream

source ·
pub struct SslStream<S>(/* private fields */);
Expand description

A wrapper around an underlying raw stream which implements the SSL protocol.

A SslStream<S> represents a handshake that has been completed successfully and both the server and the client are ready for receiving and sending data. Bytes read from a SslStream are decrypted from S and bytes written to a SslStream are encrypted when passing through to S.

Implementations§

source§

impl<S> SslStream<S>

source

pub fn ssl(&self) -> &SslRef

Returns a shared reference to the Ssl object associated with this stream.

source

pub fn ssl_mut(&mut self) -> &mut SslRef

Returns a mutable reference to the Ssl object associated with this stream.

source

pub fn get_ref(&self) -> &S

Returns a shared reference to the underlying stream.

source

pub fn get_mut(&mut self) -> &mut S

Returns a mutable reference to the underlying stream.

source§

impl<S> SslStream<S>
where S: AsyncRead + AsyncWrite + Unpin,

source

pub unsafe fn from_raw_parts(ssl: *mut SSL, stream: S) -> Self

Constructs an SslStream from a pointer to the underlying OpenSSL SSL struct.

This is useful if the handshake has already been completed elsewhere.

§Safety

The caller must ensure the pointer is valid.

Trait Implementations§

source§

impl<S> AsyncRead for SslStream<S>
where S: AsyncRead + AsyncWrite + Unpin,

source§

fn poll_read( self: Pin<&mut Self>, ctx: &mut Context<'_>, buf: &mut ReadBuf<'_> ) -> Poll<Result<()>>

Attempts to read from the AsyncRead into buf. Read more
source§

impl<S> AsyncWrite for SslStream<S>
where S: AsyncRead + AsyncWrite + Unpin,

source§

fn poll_write( self: Pin<&mut Self>, ctx: &mut Context<'_>, buf: &[u8] ) -> Poll<Result<usize>>

Attempt to write bytes from buf into the object. Read more
source§

fn poll_flush(self: Pin<&mut Self>, ctx: &mut Context<'_>) -> Poll<Result<()>>

Attempts to flush the object, ensuring that any buffered data reach their destination. Read more
source§

fn poll_shutdown( self: Pin<&mut Self>, ctx: &mut Context<'_> ) -> Poll<Result<()>>

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>>

Like poll_write, except that it writes from a slice of buffers. Read more
source§

fn is_write_vectored(&self) -> bool

Determines if this writer has an efficient poll_write_vectored implementation. Read more
source§

impl<S: Debug> Debug for SslStream<S>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto 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> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. 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.