pub struct SslStreamBuilder<S> { /* private fields */ }
👎Deprecated since 0.10.32: use the methods directly on Ssl/SslStream instead
Expand description

A partially constructed SslStream, useful for unusual handshakes.

Implementations

Begin creating an SslStream atop stream

Perform a stateless server-side handshake

Requires that cookie generation and verification callbacks were set on the SSL context.

Returns Ok(true) if a complete ClientHello containing a valid cookie was read, in which case the handshake should be continued via accept. If a HelloRetryRequest containing a fresh cookie was transmitted, Ok(false) is returned instead. If the handshake cannot proceed at all, Err is returned.

This corresponds to SSL_stateless

Configure as an outgoing stream from a client.

This corresponds to SSL_set_connect_state.

Configure as an incoming stream to a server.

This corresponds to SSL_set_accept_state.

See Ssl::connect

See Ssl::accept

Initiates the handshake.

This will fail if set_accept_state or set_connect_state was not called first.

This corresponds to SSL_do_handshake.

Read application data transmitted by a client before handshake completion.

Useful for reducing latency, but vulnerable to replay attacks. Call set_accept_state first.

Returns Ok(0) if all early data has been read.

Requires OpenSSL 1.1.1 or LibreSSL 3.4.0 or newer.

This corresponds to SSL_read_early_data.

Send data to the server without blocking on handshake completion.

Useful for reducing latency, but vulnerable to replay attacks. Call set_connect_state first.

Requires OpenSSL 1.1.1 or LibreSSL 3.4.0 or newer.

This corresponds to SSL_write_early_data.

Returns a shared reference to the underlying stream.

Returns a mutable reference to the underlying stream.

Warning

It is inadvisable to read from or write to the underlying stream as it will most likely corrupt the SSL session.

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

👎Deprecated since 0.10.30: Use SslRef::set_mtu instead

Set the DTLS MTU size.

It will be ignored if the value is smaller than the minimum packet size the DTLS protocol requires.

Panics

This function panics if the given mtu size can’t be represented in a positive c_long range

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.