pub struct Connection { /* private fields */ }Implementations§
Source§impl Connection
impl Connection
pub fn with_client_random(self, client_random: Vec<u8>) -> Connection
pub fn with_verify(self, verify: bool) -> Connection
pub fn disable_verify(self) -> Connection
pub fn set_by_server_hello( &mut self, server_hello: &ServerHello<'_>, ) -> Result<(), RlsError>
pub fn set_by_certificate( &mut self, certificate: Certificates<'_>, sni: &str, ) -> Result<(), RlsError>
pub fn set_by_cert_req( &mut self, req: CertificateRequest<'_>, cert: Option<&mut Certificate>, ) -> Result<(), RlsError>
pub fn set_by_server_exchange_key( &mut self, server_key: ServerKeyExchange, ) -> Result<(), RlsError>
pub fn set_by_client_exchange_key(&mut self, client_key: ClientKeyExchange<'_>)
pub fn make_cipher(&mut self, server: bool) -> Result<(), RlsError>
pub fn gen_server_hello<'a>( &mut self, client_hello: ClientHello<'_>, certificate: &'a mut [Certificate], pri_key: &RsaKey, random: &'a [u8], ) -> Result<RecordLayer<'a>, RlsError>
Sourcepub fn make_finish_message(
&mut self,
buffer: &mut [u8],
server: bool,
) -> Result<usize, RlsError>
pub fn make_finish_message( &mut self, buffer: &mut [u8], server: bool, ) -> Result<usize, RlsError>
§tls Record结构-5bytes(头部)
- aes-gcm: payload(8byte的explicit+16payload+16byte的tag)
- chacha20_poly1305: payload(16payload+16byte tag)
pub fn verify_finish( &mut self, data: &[u8], server: bool, ) -> Result<(), RlsError>
pub fn make_message( &mut self, cty: RecordType, buffer: &mut [u8], payload: &[u8], ) -> Result<usize, RlsError>
pub fn read_message( &mut self, origin: &[u8], buffer: &mut [u8], ) -> Result<usize, RlsError>
pub fn alpn(&self) -> Option<&ALPN>
pub fn update_session(&mut self, data: impl AsRef<[u8]>) -> Result<(), RlsError>
pub fn cipher_suite(&self) -> &CipherSuite
pub fn mtls(&self) -> bool
pub fn handle_mtls_client<W>(
&mut self,
writer: &mut W,
key: &RsaKey,
) -> Result<usize, RlsError>where
W: WriteExt,
Trait Implementations§
Source§impl Default for Connection
impl Default for Connection
Source§fn default() -> Connection
fn default() -> Connection
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for Connection
impl RefUnwindSafe for Connection
impl Send for Connection
impl Sync for Connection
impl Unpin for Connection
impl UnsafeUnpin for Connection
impl UnwindSafe for Connection
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