pub trait MessageValidation {
// Required methods
fn init(config: ValidationConfig) -> Result<(), ValidationError>;
fn validate_message(
&self,
message: &Message,
) -> Result<ValidationResult, ValidationError>;
fn validate_signature(
&self,
message: &Message,
) -> Result<bool, ValidationError>;
fn check_freshness(&self, message: &Message) -> bool;
fn validate_version(&self, version: u32) -> bool;
}
Expand description
Message validation trait defining the interface for validation operations.
Required Methods§
Sourcefn init(config: ValidationConfig) -> Result<(), ValidationError>
fn init(config: ValidationConfig) -> Result<(), ValidationError>
Initialize validation with configuration.
Sourcefn validate_message(
&self,
message: &Message,
) -> Result<ValidationResult, ValidationError>
fn validate_message( &self, message: &Message, ) -> Result<ValidationResult, ValidationError>
Validate a message.
Sourcefn validate_signature(&self, message: &Message) -> Result<bool, ValidationError>
fn validate_signature(&self, message: &Message) -> Result<bool, ValidationError>
Validate message signature.
Sourcefn check_freshness(&self, message: &Message) -> bool
fn check_freshness(&self, message: &Message) -> bool
Check message freshness.
Sourcefn validate_version(&self, version: u32) -> bool
fn validate_version(&self, version: u32) -> bool
Validate protocol version.
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.