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§
Sourcefn probe<P: PhysicalMemoryProvider>(&self, reader: &ObjectReader<P>) -> u8
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.
Sourcefn processes<P: PhysicalMemoryProvider>(
&self,
reader: &ObjectReader<P>,
) -> Result<Vec<ProcessInfo>>
fn processes<P: PhysicalMemoryProvider>( &self, reader: &ObjectReader<P>, ) -> Result<Vec<ProcessInfo>>
Enumerate running processes.
Sourcefn connections<P: PhysicalMemoryProvider>(
&self,
reader: &ObjectReader<P>,
) -> Result<Vec<ConnectionInfo>>
fn connections<P: PhysicalMemoryProvider>( &self, reader: &ObjectReader<P>, ) -> Result<Vec<ConnectionInfo>>
Enumerate network connections.
Sourcefn modules<P: PhysicalMemoryProvider>(
&self,
reader: &ObjectReader<P>,
) -> Result<Vec<ModuleInfo>>
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".