From d95ab6af0d89a4330d9457aab35cd0aa70f7ed15 Mon Sep 17 00:00:00 2001 From: Zach Riggle Date: Thu, 9 Apr 2015 21:21:10 -0400 Subject: [PATCH] Add reverse symbolization --- pwndbg/symbol.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pwndbg/symbol.py b/pwndbg/symbol.py index 2b7b8b373..9f49b879b 100644 --- a/pwndbg/symbol.py +++ b/pwndbg/symbol.py @@ -44,3 +44,16 @@ def get(address): return a return '' + +@pwndbg.memoize.reset_on_objfile +def address(symbol): + if isinstance(symbol, (int,long)): + return symbol + + try: + result = gdb.execute('info address %s' % symbol, to_string=True, from_tty=False) + result = result.split() + address = (r for r in result if r.startswith('0x')).next() + return int(address, 0) + except gdb.error: + return None \ No newline at end of file