Skip to content

eax64/gxf

 
 

Repository files navigation

gxf

Gdb Extension Framework is a bunch of python code around the gdb api.

image

How to use:

$ python3 setup.py install # or develop
$ gdb
(gdb) python import gxf.extensions
(gdb) help gx

How to compile gdb with python3:

$ git clone git://sourceware.org/git/binutils-gdb.git
$ cd binutils-gdb
$ ./configure --with-python=python3
$ make && sudo make install

How to use peda alongside gxf:

diff --git a/peda.py b/peda.py
index fd5b8d9..cc74b07 100644
--- a/peda.py
+++ b/peda.py
@@ -5965,8 +5965,9 @@ signal.signal(signal.SIGINT, sigint_handler)

# custom hooks
peda.define_user_command("hook-stop",
-    "peda context\n"
-    "session autosave"
+    "\n"
+    # "peda context\n"
+    # "session autosave"
     )

 # common used shell commands aliases

FAQ

  • TypeError: int() argument must be a string or a number, not 'list'

    This error is probably due to your argcomplete version being too old and having bugs. See requirements.txt for the minimum version you need.

  • I keep seeing lots of other tracebacks.

    That is expected for the moment, I'm focusing on the framework and don't bother catching all the exception in the extensions where I should be displaying decent error messages. This will be done in the future, but for the moment it is normal if you see tracebacks when gxf tries to access program memory that isn't mapped. This happend for example when rip or rsp is invalid.

About

Gdb Extension Framework is a bunch of python code around the gdb api.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 97.9%
  • Makefile 2.1%