Trait sasl::client::Mechanism

source ·
pub trait Mechanism {
    // Required methods
    fn name(&self) -> &str;
    fn from_credentials(
        credentials: Credentials
    ) -> Result<Self, MechanismError>
       where Self: Sized;

    // Provided methods
    fn initial(&mut self) -> Vec<u8> { ... }
    fn response(&mut self, _challenge: &[u8]) -> Result<Vec<u8>, MechanismError> { ... }
    fn success(&mut self, _data: &[u8]) -> Result<(), MechanismError> { ... }
}
Expand description

A trait which defines SASL mechanisms.

Required Methods§

source

fn name(&self) -> &str

The name of the mechanism.

source

fn from_credentials(credentials: Credentials) -> Result<Self, MechanismError>where Self: Sized,

Creates this mechanism from Credentials.

Provided Methods§

source

fn initial(&mut self) -> Vec<u8>

Provides initial payload of the SASL mechanism.

source

fn response(&mut self, _challenge: &[u8]) -> Result<Vec<u8>, MechanismError>

Creates a response to the SASL challenge.

source

fn success(&mut self, _data: &[u8]) -> Result<(), MechanismError>

Verifies the server success response, if there is one.

Implementors§