diff options
Diffstat (limited to 'pwnlib/shellcraft/templates/common/linux/syscalls/ioctl.asm')
-rw-r--r-- | pwnlib/shellcraft/templates/common/linux/syscalls/ioctl.asm | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/pwnlib/shellcraft/templates/common/linux/syscalls/ioctl.asm b/pwnlib/shellcraft/templates/common/linux/syscalls/ioctl.asm index 114bfc7..5d6ddf9 100644 --- a/pwnlib/shellcraft/templates/common/linux/syscalls/ioctl.asm +++ b/pwnlib/shellcraft/templates/common/linux/syscalls/ioctl.asm @@ -5,7 +5,7 @@ import pwnlib.constants import pwnlib.shellcraft import six %> -<%docstring>ioctl(fd, request, vararg_0, vararg_1, vararg_2, vararg_3, vararg_4) -> str +<%docstring>ioctl(fd, request, vararg_0, vararg_1, vararg_2, vararg_3, vararg_4, vararg_5) -> str Invokes the syscall ioctl. @@ -18,7 +18,7 @@ Arguments: Returns: int </%docstring> -<%page args="fd=0, request=0, vararg_0=None, vararg_1=None, vararg_2=None, vararg_3=None, vararg_4=None"/> +<%page args="fd=0, request=0, vararg_0=None, vararg_1=None, vararg_2=None, vararg_3=None, vararg_4=None, vararg_5=None"/> <% abi = pwnlib.abi.ABI.syscall() stack = abi.stack @@ -28,8 +28,8 @@ Returns: can_pushstr = [] can_pushstr_array = [] - argument_names = ['fd', 'request', 'vararg_0', 'vararg_1', 'vararg_2', 'vararg_3', 'vararg_4'] - argument_values = [fd, request, vararg_0, vararg_1, vararg_2, vararg_3, vararg_4] + argument_names = ['fd', 'request', 'vararg_0', 'vararg_1', 'vararg_2', 'vararg_3', 'vararg_4', 'vararg_5'] + argument_values = [fd, request, vararg_0, vararg_1, vararg_2, vararg_3, vararg_4, vararg_5] # Load all of the arguments into their destination registers / stack slots. register_arguments = dict() @@ -50,7 +50,7 @@ Returns: target = regs[index] register_arguments[target] = arg elif arg is not None: - stack_arguments[index] = arg + stack_arguments[name] = arg # The argument is not a register. It is a string value, and we # are expecting a string value @@ -78,7 +78,7 @@ Returns: target = regs[index] register_arguments[target] = arg elif arg is not None: - stack_arguments[target] = arg + stack_arguments[name] = arg # Some syscalls have different names on various architectures. # Determine which syscall number to use for the current architecture. @@ -86,7 +86,7 @@ Returns: if hasattr(pwnlib.constants, syscall): break else: - raise Exception("Could not locate any syscalls: %r" % syscalls) + raise Exception("Could not locate any syscalls: %r" % ['SYS_ioctl']) %> /* ioctl(${', '.join(syscall_repr)}) */ %for name, arg in string_arguments.items(): |