Skip to main content

CtxApplicationProcessor

Trait CtxApplicationProcessor 

Source
pub trait CtxApplicationProcessor {
    type Error;

    // Required method
    fn spin_application<Li, Lo, R>(
        &mut self,
        _left_in: &mut Li,
        _left_out: &mut Lo,
        _right: &mut R,
    ) -> Result<Option<ShutdownComplete>, Self::Error>
       where Li: TlsLeftIn,
             Lo: TlsLeftOut,
             R: TlsRight;
}
Expand description

Implement to process application data part

Required Associated Types§

Required Methods§

Source

fn spin_application<Li, Lo, R>( &mut self, _left_in: &mut Li, _left_out: &mut Lo, _right: &mut R, ) -> Result<Option<ShutdownComplete>, Self::Error>
where Li: TlsLeftIn, Lo: TlsLeftOut, R: TlsRight,

Spin Application state forward with the given Left and Right sides.

§Left

Same as in handshake the left is typically the I/O allowing the state machine to uphold the context alive and encrypt & decrypt the application traffic.

Right side allows the application to both provide cleartext to the state machinery to encrypt egress traffic as well as state machine to provide the cleartext decrypted traffic to application.

§Evolution

Shutdown is provided when the state machinery can be shut down.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§