Fix mypy errors reported with version 1.11.1 (#2359)

* Fix mypy errors reported with version 1.11.1

* Remove pyright None check
pull/2352/head^2
peace-maker 1 year ago committed by GitHub
parent b4a1b9a177
commit 9e7c41e4b5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -71,11 +71,11 @@ class argv_function(gdb.Function):
def __init__(self) -> None:
super().__init__("argv")
def invoke(self, number=0):
number = int(number)
def invoke(self, number_value: gdb.Value = gdb.Value(0), *args: gdb.Value) -> gdb.Value:
number = int(number_value)
if number > pwndbg.gdblib.argv.argc:
return 0
return gdb.Value(0)
ppchar = pwndbg.gdblib.typeinfo.pchar.pointer()
value = gdb.Value(pwndbg.gdblib.argv.argv)
@ -94,11 +94,11 @@ class envp_function(gdb.Function):
def __init__(self) -> None:
super().__init__("envp")
def invoke(self, number=0):
number = int(number)
def invoke(self, number_value: gdb.Value = gdb.Value(0), *args: gdb.Value) -> gdb.Value:
number = int(number_value)
if number > pwndbg.gdblib.argv.envc:
return pwndbg.gdblib.typeinfo.void
return pwndbg.gdblib.typeinfo.void.optimized_out()
ppchar = pwndbg.gdblib.typeinfo.pchar.pointer()
value = gdb.Value(pwndbg.gdblib.argv.envp)
@ -117,7 +117,7 @@ class argc_function(gdb.Function):
def __init__(self) -> None:
super().__init__("argc")
def invoke(self, number=0):
def invoke(self, *args: gdb.Value) -> int:
return pwndbg.gdblib.argv.argc
@ -132,8 +132,11 @@ class environ_function(gdb.Function):
def __init__(self) -> None:
super().__init__("environ")
def invoke(self, name):
name = name.string() + "="
def invoke(self, name_value: gdb.Value = gdb.Value(""), *args: gdb.Value) -> gdb.Value:
name = name_value.string()
if not name:
raise gdb.GdbError("No environment variable name provided")
name += "="
ppchar = pwndbg.gdblib.typeinfo.pchar.pointer()
value = gdb.Value(pwndbg.gdblib.argv.envp)
envp = value.cast(ppchar)
@ -144,7 +147,7 @@ class environ_function(gdb.Function):
if sz.startswith(name):
return ptr
return pwndbg.gdblib.typeinfo.void
return pwndbg.gdblib.typeinfo.void.optimized_out()
environ_function()

@ -10,13 +10,13 @@ from pwndbg.commands import CommandCategory
class segment(gdb.Function):
"""Get the flat address of memory based off of the named segment register."""
def __init__(self, name) -> None:
def __init__(self, name: str) -> None:
super().__init__(name)
self.name = name
def invoke(self, arg=0):
def invoke(self, arg: gdb.Value = gdb.Value(0), *args: gdb.Value) -> int:
result = getattr(pwndbg.gdblib.regs, self.name)
return result + arg
return result + int(arg)
# TODO/FIXME: This should be defined only for x86 and x86_64

@ -195,7 +195,7 @@ class module(ModuleType):
elif isinstance(regset, dict): # regs.flags
retval.extend(regset.keys())
else:
retval.append(regset) # type: ignore[arg-type]
retval.append(regset)
return retval
def fix(self, expression: str) -> str:

Loading…
Cancel
Save