Python3 fixes

pull/11/head
Zach Riggle 11 years ago
parent 68529bcb5c
commit 79ca9d5fa1

@ -38,7 +38,7 @@ def context(*args):
result.extend(context_signal()) result.extend(context_signal())
for line in result: for line in result:
print(line.encode('utf-8')) print(line)
def context_regs(): def context_regs():
result = [] result = []

@ -6,6 +6,7 @@ Command to print the vitual memory map a la /proc/self/maps.
import gdb import gdb
import pwndbg.color import pwndbg.color
import pwndbg.commands import pwndbg.commands
import pwndbg.compat
import pwndbg.vmmap import pwndbg.vmmap
@ -17,7 +18,7 @@ def vmmap(map=None):
""" """
int_map = None int_map = None
str_map = None str_map = None
if isinstance(map, str): if isinstance(map, pwndbg.compat.basestring):
str_map = map str_map = map
elif isinstance(map, (long, int, gdb.Value)): elif isinstance(map, (long, int, gdb.Value)):
int_map = int(map) int_map = int(map)

@ -12,4 +12,6 @@ python2 = sys.version_info.major == 2
python3 = sys.version_info.major == 3 python3 = sys.version_info.major == 3
if python3: if python3:
globals()['basestring'] = str basestring = str
else:
basestring = basestring

@ -40,8 +40,8 @@ def ExtractFuncDecl(node, verbose=False):
ftype, fderef, fname = extractTypeAndName(node) ftype, fderef, fname = extractTypeAndName(node)
if not fname: if not fname:
print "Skipping function without a name!" print("Skipping function without a name!")
print node.show() print(node.show())
return return
fargs = [] fargs = []
@ -55,7 +55,7 @@ def ExtractFuncDecl(node, verbose=False):
Func = Function(ftype, fderef, fname, fargs) Func = Function(ftype, fderef, fname, fargs)
if verbose: if verbose:
print Stringify(Func) + '(' + ','.join(Stringify(a) for a in Func.args) + ');' print(Stringify(Func) + '(' + ','.join(Stringify(a) for a in Func.args) + ');')
return Func return Func

@ -10,6 +10,7 @@ from types import ModuleType
import gdb import gdb
import pwndbg.arch import pwndbg.arch
import pwndbg.compat
import pwndbg.events import pwndbg.events
import pwndbg.memoize import pwndbg.memoize
@ -204,8 +205,8 @@ class module(ModuleType):
if isinstance(item, int): if isinstance(item, int):
return arch_to_regs[pwndbg.arch.current][item] return arch_to_regs[pwndbg.arch.current][item]
if not isinstance(item, basestring): if not isinstance(item, pwndbg.compat.basestring):
print "Unknown register type: %r" % (item) print("Unknown register type: %r" % (item))
import pdb, traceback import pdb, traceback
traceback.print_stack() traceback.print_stack()
pdb.set_trace() pdb.set_trace()

Loading…
Cancel
Save