You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A temporary workaround until this gets fixed is to rename all occurrences of get_pid in ext_gdb/sync.py to something that does not conflict, e.g. get_pid__ret_sync
Log
nikos@laptop:~/tmp$ gdb ~/test-binary
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
For help, type "help".
Type "apropos word" to search for commands related to "word"...
[sync] init
[sync] 18 commands added
Reading symbols from /home/nikos/test-binary...
(No debugging symbols found in /home/nikos/test-binary)
(gdb) sync
[sync] initializing tunnel to IDA using localhost:9100...
[sync] sync is now enabled with host localhost
(gdb) source ~/bin/binaries/.gdbinit-gef.py
GEF for linux ready, type `gef' to start, `gef config' to configure
91 commands loaded for GDB 9.2 using Python engine 3.8
[*] 1 command could not be loaded, run `gef missing` to know why.
gef➤ b *0x00401211
Breakpoint 1 at 0x401211
gef➤ r
Starting program: /home/nikos/test-binary
Breakpoint 1, 0x0000000000401211 in ?? ()
Python Exception <class 'TypeError'> get_pid() got an unexpected keyword argument 'ctx':
[ Legend: Modified register | Code | Heap | Stack | String ]
─── registers ───
$rax : 0x0
$rbx : 0x00000000004017b0 → endbr64
...
The text was updated successfully, but these errors were encountered:
Helper functions in global namespace may conflict with other plugins (ex. GEF). Wrap them in a class and use static methods.
Thank @nikosChalk for reporting issue #67
I fixed a similar issue a couple of monthes ago with PEDA. To be more future proof I moved the helper functions into a dedicated class.
Could you confirm it is now working as expected for you as well please?
Overview
ret-sync
plugin does not work when used in combination with GEF GDB.Details
Currently the
get_pid()
function (ext_gdb/sync.py#L131) conflicts with a function in GEF that has the same name, is also at the global namespace, and takes zero arguments github.com/hugsy/gef/blob/master/gef.py#L2671.Temporary workaround
A temporary workaround until this gets fixed is to rename all occurrences of
get_pid
in ext_gdb/sync.py to something that does not conflict, e.g.get_pid__ret_sync
Log
The text was updated successfully, but these errors were encountered: