-
-
Notifications
You must be signed in to change notification settings - Fork 719
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add stepover command #1086
add stepover command #1086
Conversation
Pwndbg calls this command
|
@hugsy @Ordoviz @Grazfather opinion? looks good for you? |
Ok this is wild! This should be a GDB bug, is there any tracking of this? |
@hugsy , I don't think it's a bug. I don't believe GDB is designed to step over instructions like call/rep/... for all architectures... Implementing this would be quite a hassle, right? This has been an issue for years. Also, consider unusual cases like push + ret, polymorphic code, or if it's the last instruction in memory... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All looks good to me but the name, please change from so
to stepover
as a name everywhere, and make so
an alias
Thanks!
done! @hugsy |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM now
Description
This pull request addresses a limitation in GDB where the "nexti" and "next" commands fail to step over call instructions properly. To resolve this, I have implemented a new feature, "stepover", specifically designed to enhance debugging efficiency by allowing users to step over call instructions seamlessly.
In my bootcamps, it’s a real pain to deal with this situation, especially for a GDB-newbie.
@Ordoviz
POC
From a x86_64 Linux create a x32 binary
hello.asm
Create executable:
its impossible step over a call in GDB :(
The "nexti" and "next" commands do not work as expected :-(
btw, my Python skills are a bit rusty, sorry about that! xD
Checklist