embedded_tls/
change_cipher_spec.rs

1use crate::TlsError;
2use crate::buffer::CryptoBuffer;
3use crate::parse_buffer::ParseBuffer;
4
5#[derive(Debug, Copy, Clone)]
6#[cfg_attr(feature = "defmt", derive(defmt::Format))]
7pub struct ChangeCipherSpec {}
8
9#[allow(clippy::unnecessary_wraps)] // TODO
10impl ChangeCipherSpec {
11    pub fn new() -> Self {
12        Self {}
13    }
14
15    pub fn read(_rx_buf: &mut [u8]) -> Result<Self, TlsError> {
16        // info!("change cipher spec of len={}", rx_buf.len());
17        // TODO: Decode data
18        Ok(Self {})
19    }
20
21    #[allow(dead_code)]
22    pub fn parse(_: &mut ParseBuffer) -> Result<Self, TlsError> {
23        Ok(Self {})
24    }
25
26    #[allow(dead_code, clippy::unused_self)]
27    pub(crate) fn encode(self, buf: &mut CryptoBuffer<'_>) -> Result<(), TlsError> {
28        buf.push(1).map_err(|_| TlsError::EncodeError)?;
29        Ok(())
30    }
31}
32
33impl Default for ChangeCipherSpec {
34    fn default() -> Self {
35        ChangeCipherSpec::new()
36    }
37}