/rust/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.27/src/msgs/ccs.rs
Line | Count | Source |
1 | | use alloc::vec::Vec; |
2 | | |
3 | | use crate::error::InvalidMessage; |
4 | | use crate::msgs::codec::{Codec, Reader}; |
5 | | |
6 | | #[derive(Debug)] |
7 | | pub struct ChangeCipherSpecPayload; |
8 | | |
9 | | impl Codec<'_> for ChangeCipherSpecPayload { |
10 | 0 | fn encode(&self, bytes: &mut Vec<u8>) { |
11 | 0 | 1u8.encode(bytes); |
12 | 0 | } |
13 | | |
14 | 0 | fn read(r: &mut Reader<'_>) -> Result<Self, InvalidMessage> { |
15 | 0 | let typ = u8::read(r)?; |
16 | 0 | if typ != 1 { |
17 | 0 | return Err(InvalidMessage::InvalidCcs); |
18 | 0 | } |
19 | | |
20 | 0 | r.expect_empty("ChangeCipherSpecPayload") |
21 | 0 | .map(|_| Self {}) |
22 | 0 | } |
23 | | } |