Struct kev::vmcs::ActiveVmcs
source · pub struct ActiveVmcs { /* private fields */ }
Expand description
A representation of active vmcs.
Implementations§
source§impl ActiveVmcs
impl ActiveVmcs
sourcepub unsafe fn activated() -> Result<(ActiveVmcs, Pa), VmError>
pub unsafe fn activated() -> Result<(ActiveVmcs, Pa), VmError>
Get currently activated vmcs.
sourcepub fn write(&self, field: Field, v: u64) -> Result<(), VmError>
pub fn write(&self, field: Field, v: u64) -> Result<(), VmError>
Write to the vmcs field of the activated vmcs.
sourcepub fn read(&self, field: Field) -> Result<u64, VmError>
pub fn read(&self, field: Field) -> Result<u64, VmError>
Read from the vmcs field of the activated vmcs.
sourcepub fn exit_reason(&self) -> Result<ExitReason, VmError>
pub fn exit_reason(&self) -> Result<ExitReason, VmError>
Resolve the exit reason of the activated vmcs.
sourcepub fn get_instruction<P: Probe>(&self, p: &P) -> Result<Instruction, VmError>
pub fn get_instruction<P: Probe>(&self, p: &P) -> Result<Instruction, VmError>
Get the instruction that rip pointed.
sourcepub fn forward_rip(&self) -> Result<(), VmError>
pub fn forward_rip(&self) -> Result<(), VmError>
Forward to the next instruction.
Auto Trait Implementations§
impl RefUnwindSafe for ActiveVmcs
impl Send for ActiveVmcs
impl Sync for ActiveVmcs
impl Unpin for ActiveVmcs
impl UnwindSafe for ActiveVmcs
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
const: unstable§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more