pub trait Context<Crypto: CryptoSuite> {
Show 16 methods
fn on_handshake_keys(
&mut self,
key: Crypto::HandshakeKey,
header_key: Crypto::HandshakeHeaderKey
) -> Result<(), Error>;
fn on_zero_rtt_keys(
&mut self,
key: Crypto::ZeroRttKey,
header_key: Crypto::ZeroRttHeaderKey,
application_parameters: ApplicationParameters<'_>
) -> Result<(), Error>;
fn on_one_rtt_keys(
&mut self,
key: Crypto::OneRttKey,
header_key: Crypto::OneRttHeaderKey,
application_parameters: ApplicationParameters<'_>
) -> Result<(), Error>;
fn on_server_name(&mut self, server_name: ServerName) -> Result<(), Error>;
fn on_application_protocol(
&mut self,
application_protocol: Bytes
) -> Result<(), Error>;
fn on_handshake_complete(&mut self) -> Result<(), Error>;
fn receive_initial(&mut self, max_len: Option<usize>) -> Option<Bytes>;
fn receive_handshake(&mut self, max_len: Option<usize>) -> Option<Bytes>;
fn receive_application(&mut self, max_len: Option<usize>) -> Option<Bytes>;
fn can_send_initial(&self) -> bool;
fn send_initial(&mut self, transmission: Bytes);
fn can_send_handshake(&self) -> bool;
fn send_handshake(&mut self, transmission: Bytes);
fn can_send_application(&self) -> bool;
fn send_application(&mut self, transmission: Bytes);
fn waker(&self) -> &Waker;
}Required Methods
fn on_handshake_keys(
&mut self,
key: Crypto::HandshakeKey,
header_key: Crypto::HandshakeHeaderKey
) -> Result<(), Error>
fn on_zero_rtt_keys(
&mut self,
key: Crypto::ZeroRttKey,
header_key: Crypto::ZeroRttHeaderKey,
application_parameters: ApplicationParameters<'_>
) -> Result<(), Error>
fn on_one_rtt_keys(
&mut self,
key: Crypto::OneRttKey,
header_key: Crypto::OneRttHeaderKey,
application_parameters: ApplicationParameters<'_>
) -> Result<(), Error>
fn on_server_name(&mut self, server_name: ServerName) -> Result<(), Error>
fn on_handshake_complete(&mut self) -> Result<(), Error>
Receives data from the initial packet space
A max_len may be provided to indicate how many bytes the TLS implementation
is willing to buffer.
Receives data from the handshake packet space
A max_len may be provided to indicate how many bytes the TLS implementation
is willing to buffer.
Receives data from the application packet space
A max_len may be provided to indicate how many bytes the TLS implementation
is willing to buffer.