[−][src]Function sunrise_kernel::i386::stack::dump_stack_from_slice
fn dump_stack_from_slice<'a>(
stack: &[u8],
orig_address: usize,
esp: usize,
ebp: usize,
eip: usize,
elf: Option<(&ElfFile<'a>, &'a [Entry32])>
)
Dumps a stack, displaying it in a frame-by-frame format.
The stack is passed as a slice. The function starts at given esp, and goes down, frame by frame. The original address of the stack must be given, this way it can even work on a stack that is not identity mapped, therefore it should even be possible to use it on a user stack
The function will stop if it encounters:
- a null pointer as saved ebp/eip (expected at the bottom of the stack)
- any ebp/esp falling outside of the stack
The data of every stack frame will be hexdumped.