Trait PluginValidator

Source
pub trait PluginValidator: Send + Sync {
    // Required methods
    fn validate_manifest(
        &self,
        manifest: &PluginManifest,
    ) -> Result<Vec<ValidationWarning>>;
    fn validate_wasm(&self, wasm_bytes: &[u8]) -> Result<Vec<ValidationWarning>>;
    fn security_audit(
        &self,
        manifest: &PluginManifest,
        wasm_bytes: &[u8],
    ) -> Result<SecurityAuditReport>;
    fn benchmark(&self, plugin: &dyn WasmPlugin) -> Result<BenchmarkReport>;
}
Expand description

Plugin validation trait

Required Methods§

Source

fn validate_manifest( &self, manifest: &PluginManifest, ) -> Result<Vec<ValidationWarning>>

Validate plugin manifest

Source

fn validate_wasm(&self, wasm_bytes: &[u8]) -> Result<Vec<ValidationWarning>>

Validate WASM bytecode

Source

fn security_audit( &self, manifest: &PluginManifest, wasm_bytes: &[u8], ) -> Result<SecurityAuditReport>

Security audit of plugin

Source

fn benchmark(&self, plugin: &dyn WasmPlugin) -> Result<BenchmarkReport>

Performance benchmark

Implementors§