pub trait AsLairClient: 'static + Send + Sync {
    // Required methods
    fn get_enc_ctx_key(&self) -> BufReadSized<32>;
    fn get_dec_ctx_key(&self) -> BufReadSized<32>;
    fn shutdown(
        &self
    ) -> Pin<Box<dyn Future<Output = Result<(), OneErr>> + Send, Global>>;
    fn request(
        &self,
        request: LairApiEnum
    ) -> Pin<Box<dyn Future<Output = Result<LairApiEnum, OneErr>> + Send, Global>>;
}
Expand description

Object-safe lair client trait. Implement this to provide a new lair client backend implementation.

Required Methods§

fn get_enc_ctx_key(&self) -> BufReadSized<32>

Return the encryption context key for passphrases, etc.

fn get_dec_ctx_key(&self) -> BufReadSized<32>

Return the decryption context key for passphrases, etc.

fn shutdown( &self ) -> Pin<Box<dyn Future<Output = Result<(), OneErr>> + Send, Global>>

Shutdown the client connection.

fn request( &self, request: LairApiEnum ) -> Pin<Box<dyn Future<Output = Result<LairApiEnum, OneErr>> + Send, Global>>

Handle a lair client request

Implementors§