[−][src]Struct memflow_win32::win32::kernel::Kernel
Fields
phys_mem: T
vat: V
offsets: Win32Offsets
kernel_info: KernelInfo
sysproc_dtb: Address
Implementations
impl<T: PhysicalMemory, V: VirtualTranslate> Kernel<T, V>
[src]
pub fn new(
phys_mem: T,
vat: V,
offsets: Win32Offsets,
kernel_info: KernelInfo
) -> Self
[src]
phys_mem: T,
vat: V,
offsets: Win32Offsets,
kernel_info: KernelInfo
) -> Self
pub fn destroy(self) -> T
[src]
Consume the self object and return the containing memory connection
pub fn eprocess_list(&mut self) -> Result<Vec<Address>>
[src]
pub fn eprocess_list_extend<E: Extend<Address>>(
&mut self,
eprocs: &mut E
) -> Result<()>
[src]
&mut self,
eprocs: &mut E
) -> Result<()>
pub fn kernel_process_info(&mut self) -> Result<Win32ProcessInfo>
[src]
pub fn process_info_from_eprocess(
&mut self,
eprocess: Address
) -> Result<Win32ProcessInfo>
[src]
&mut self,
eprocess: Address
) -> Result<Win32ProcessInfo>
pub fn process_info_list_extend<E: Extend<Win32ProcessInfo>>(
&mut self,
list: &mut E
) -> Result<()>
[src]
&mut self,
list: &mut E
) -> Result<()>
pub fn process_info_list(&mut self) -> Result<Vec<Win32ProcessInfo>>
[src]
Retrieves a list of Win32ProcessInfo
structs for all processes
that can be found on the target system.
pub fn process_info(&mut self, name: &str) -> Result<Win32ProcessInfo>
[src]
Finds a process by it's name and returns the Win32ProcessInfo
struct.
If no process with the specified name can be found this function will return an Error.
pub fn process_info_pid(&mut self, pid: PID) -> Result<Win32ProcessInfo>
[src]
Finds a process by it's process id and returns the Win32ProcessInfo
struct.
If no process with the specified PID can be found this function will return an Error.
If the specified PID is 0 the kernel process is returned.
pub fn kernel_process(
&mut self
) -> Result<Win32Process<VirtualDMA<&mut T, &mut V, Win32VirtualTranslate>>>
[src]
&mut self
) -> Result<Win32Process<VirtualDMA<&mut T, &mut V, Win32VirtualTranslate>>>
Constructs a Win32Process
struct for the targets kernel by borrowing this kernel instance.
This function can be useful for quickly accessing the kernel process.
pub fn process(
&mut self,
name: &str
) -> Result<Win32Process<VirtualDMA<&mut T, &mut V, Win32VirtualTranslate>>>
[src]
&mut self,
name: &str
) -> Result<Win32Process<VirtualDMA<&mut T, &mut V, Win32VirtualTranslate>>>
Finds a process by its name and constructs a Win32Process
struct
by borrowing this kernel instance.
If no process with the specified name can be found this function will return an Error.
This function can be useful for quickly accessing a process.
pub fn process_pid(
&mut self,
pid: PID
) -> Result<Win32Process<VirtualDMA<&mut T, &mut V, Win32VirtualTranslate>>>
[src]
&mut self,
pid: PID
) -> Result<Win32Process<VirtualDMA<&mut T, &mut V, Win32VirtualTranslate>>>
Finds a process by its process id and constructs a Win32Process
struct
by borrowing this kernel instance.
If no process with the specified name can be found this function will return an Error.
This function can be useful for quickly accessing a process.
pub fn into_kernel_process(
self
) -> Result<Win32Process<VirtualDMA<T, V, Win32VirtualTranslate>>>
[src]
self
) -> Result<Win32Process<VirtualDMA<T, V, Win32VirtualTranslate>>>
Constructs a Win32Process
struct by consuming this kernel struct
and moving it into the resulting process.
If necessary the kernel can be retrieved back by calling destroy()
on the process after use.
This function can be useful for quickly accessing a process.
pub fn into_process(
self,
name: &str
) -> Result<Win32Process<VirtualDMA<T, V, Win32VirtualTranslate>>>
[src]
self,
name: &str
) -> Result<Win32Process<VirtualDMA<T, V, Win32VirtualTranslate>>>
Finds a process by its name and constructs a Win32Process
struct
by consuming the kernel struct and moving it into the process.
If necessary the kernel can be retrieved back by calling destroy()
on the process after use.
If no process with the specified name can be found this function will return an Error.
This function can be useful for quickly accessing a process.
pub fn into_process_pid(
self,
pid: PID
) -> Result<Win32Process<VirtualDMA<T, V, Win32VirtualTranslate>>>
[src]
self,
pid: PID
) -> Result<Win32Process<VirtualDMA<T, V, Win32VirtualTranslate>>>
Finds a process by its process id and constructs a Win32Process
struct
by consuming the kernel struct and moving it into the process.
If necessary the kernel can be retrieved back by calling destroy()
on the process again.
If no process with the specified name can be found this function will return an Error.
This function can be useful for quickly accessing a process.
impl<T: PhysicalMemory> Kernel<T, DirectTranslate>
[src]
pub fn builder(connector: T) -> KernelBuilder<T, T, DirectTranslate>
[src]
Trait Implementations
impl<T: Clone, V: Clone> Clone for Kernel<T, V>
[src]
impl<T: PhysicalMemory, V: VirtualTranslate> Debug for Kernel<T, V>
[src]
impl<T: PhysicalMemory, V: VirtualTranslate> OperatingSystem for Kernel<T, V>
[src]
Auto Trait Implementations
impl<T, V> !RefUnwindSafe for Kernel<T, V>
[src]
impl<T, V> Send for Kernel<T, V> where
T: Send,
V: Send,
[src]
T: Send,
V: Send,
impl<T, V> Sync for Kernel<T, V> where
T: Sync,
V: Sync,
[src]
T: Sync,
V: Sync,
impl<T, V> Unpin for Kernel<T, V> where
T: Unpin,
V: Unpin,
[src]
T: Unpin,
V: Unpin,
impl<T, V> !UnwindSafe for Kernel<T, V>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,