pub struct GdbStub {
    vm_tube: Mutex<Tube>,
    vcpu_com: Vec<Sender<VcpuControl>>,
    from_vcpu: Receiver<VcpuDebugStatusMessage>,
    single_step: bool,
    max_hw_breakpoints: Option<usize>,
    hw_breakpoints: Vec<GuestAddress>,
}

Fields

vm_tube: Mutex<Tube>vcpu_com: Vec<Sender<VcpuControl>>from_vcpu: Receiver<VcpuDebugStatusMessage>single_step: boolmax_hw_breakpoints: Option<usize>hw_breakpoints: Vec<GuestAddress>

Implementations

Trait Implementations

Support for setting / removing hardware breakpoints.

Support for setting / removing software breakpoints.

Support for setting / removing hardware watchpoints.

Add a new hardware breakpoint. Return Ok(false) if the operation could not be completed.

Remove an existing hardware breakpoint. Return Ok(false) if the operation could not be completed.

Read to a single register on the target. Read more

Write from a single register on the target. Read more

Read the target’s registers.

Write the target’s registers.

Read bytes from the specified address range. Read more

Write bytes to the specified address range. Read more

Support for resuming the target (e.g: via continue or step)

Support for single-register access. See SingleRegisterAccess for more details. Read more

Resume execution on the target. Read more

Support for optimized single stepping. Read more

Support for optimized range stepping. Read more

Support for reverse stepping a target. Read more

Support for reverse continuing a target. Read more

Single step the target. Read more

The target’s architecture.

A target-specific fatal error.

Base operations such as reading/writing from memory/registers, stopping/resuming the target, etc…. Read more

Support for setting / removing breakpoints.

If the target supports resumption, but hasn’t implemented explicit support for software breakpoints (via SwBreakpoints), notify the user that the GDB client may set “implicit” software breakpoints by rewriting the target’s instruction stream. Read more

Override the arch-level value for [Arch::single_step_gdb_behavior]. Read more

Enable/disable using the more efficient X packet to write to target memory (as opposed to the basic M packet). Read more

Whether gdbstub should provide a “stub” resume implementation on targets without support for resumption. Read more

Enable/Disable the use of run-length encoding on outgoing packets. Read more

Whether to send a target description XML to the client. Read more

(LLDB extension) Whether to send register information to the client. Read more

Support for handling custom GDB monitor commands.

Support for Extended Mode operations.

Support for handling requests to get the target’s current section (or segment) offsets. Read more

Support for overriding the target description XML specified by Target::Arch. Read more

(LLDB extension) Support for overriding the register info specified by Target::Arch. Read more

Support for reading the target’s memory map.

Support for setting / removing syscall catchpoints.

Support for Host I/O operations.

Support for reading the current exec-file.

Support for reading the target’s Auxillary Vector.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s. Read more

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.