Struct rustls::internal::msgs::deframer::MessageDeframer [−][src]
pub struct MessageDeframer {
pub frames: VecDeque<Message>,
pub desynced: bool,
// some fields omitted
}Expand description
This deframer works to reconstruct TLS messages
from arbitrary-sized reads, buffering as necessary.
The input is read(), the output is the frames deque.
Fields
frames: VecDeque<Message>Completed frames for output.
desynced: boolSet to true if the peer is not talking TLS, but some other protocol. The caller should abort the connection, because the deframer cannot recover.
Implementations
impl MessageDeframer[src]
impl MessageDeframer[src]pub fn new() -> MessageDeframer[src]
pub fn read(&mut self, rd: &mut dyn Read) -> Result<usize>[src]
pub fn read(&mut self, rd: &mut dyn Read) -> Result<usize>[src]Read some bytes from rd, and add them to our internal
buffer. If this means our internal buffer contains
full messages, decode them all.
pub fn has_pending(&self) -> bool[src]
pub fn has_pending(&self) -> bool[src]Returns true if we have messages for the caller to process, either whole messages in our output queue or partial messages in our buffer.