Skip to main content

WalkerPlugin

Trait WalkerPlugin 

Source
pub trait WalkerPlugin: Send + Sync {
    // Required methods
    fn name(&self) -> &str;
    fn probe<P: PhysicalMemoryProvider>(&self, reader: &ObjectReader<P>) -> u8;
    fn processes<P: PhysicalMemoryProvider>(
        &self,
        reader: &ObjectReader<P>,
    ) -> Result<Vec<ProcessInfo>>;
    fn connections<P: PhysicalMemoryProvider>(
        &self,
        reader: &ObjectReader<P>,
    ) -> Result<Vec<ConnectionInfo>>;
    fn modules<P: PhysicalMemoryProvider>(
        &self,
        reader: &ObjectReader<P>,
    ) -> Result<Vec<ModuleInfo>>;
}
Expand description

A plugin that walks Linux kernel data structures.

Implementations provide specific enumeration logic (processes, connections, modules) using an ObjectReader for memory access.

Required Methods§

Source

fn name(&self) -> &str

Human-readable name of this walker.

Source

fn probe<P: PhysicalMemoryProvider>(&self, reader: &ObjectReader<P>) -> u8

Probe whether this walker can operate on the current memory image. Returns a confidence score 0-100.

Source

fn processes<P: PhysicalMemoryProvider>( &self, reader: &ObjectReader<P>, ) -> Result<Vec<ProcessInfo>>

Enumerate running processes.

Source

fn connections<P: PhysicalMemoryProvider>( &self, reader: &ObjectReader<P>, ) -> Result<Vec<ConnectionInfo>>

Enumerate network connections.

Source

fn modules<P: PhysicalMemoryProvider>( &self, reader: &ObjectReader<P>, ) -> Result<Vec<ModuleInfo>>

Enumerate loaded kernel modules.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§