pub struct WriteTraffic<'c, Data> { /* private fields */ }展开描述
允许加密应用数据
实现§
Source§impl<Data> WriteTraffic<'_, Data>
impl<Data> WriteTraffic<'_, Data>
Sourcepub fn encrypt(
&mut self,
application_data: &[u8],
outgoing_tls: &mut [u8],
) -> Result<usize, EncryptError>
pub fn encrypt( &mut self, application_data: &[u8], outgoing_tls: &mut [u8], ) -> Result<usize, EncryptError>
Encrypts application_data into the outgoing_tls 缓冲区
返回数量 bytes that were written into outgoing_tls, 或 an error if
the provided 缓冲区 is too small. In the error case, outgoing_tls is not modified
Sourcepub fn queue_close_notify(
&mut self,
outgoing_tls: &mut [u8],
) -> Result<usize, EncryptError>
pub fn queue_close_notify( &mut self, outgoing_tls: &mut [u8], ) -> Result<usize, EncryptError>
Encrypts 一个 close_notify warning alert in outgoing_tls
返回数量 bytes that were written into outgoing_tls, 或 an error if
the provided 缓冲区 is too small. In the error case, outgoing_tls is not modified
Sourcepub fn refresh_traffic_keys(self) -> Result<(), Error>
pub fn refresh_traffic_keys(self) -> Result<(), Error>
Arranges 用于 一个 TLS 1.3 key_update 到 be sent.
This consumes the WriteTraffic state: 到 actually send the message,
call UnbufferedConnectionCommon::process_tls_records again which will
return 一个 ConnectionState::EncodeTlsData that emits the key_update
message.
,请参见ConnectionCommon::refresh_traffic_keys() 用于 full documentation,
including why you might call this 并 in what circumstances it will fail.