summaryrefslogtreecommitdiff
path: root/pwnlib/shellcraft/templates/common/linux/syscalls/tuxcall.asm
diff options
context:
space:
mode:
Diffstat (limited to 'pwnlib/shellcraft/templates/common/linux/syscalls/tuxcall.asm')
-rw-r--r--pwnlib/shellcraft/templates/common/linux/syscalls/tuxcall.asm14
1 files changed, 7 insertions, 7 deletions
diff --git a/pwnlib/shellcraft/templates/common/linux/syscalls/tuxcall.asm b/pwnlib/shellcraft/templates/common/linux/syscalls/tuxcall.asm
index d888dad..c501265 100644
--- a/pwnlib/shellcraft/templates/common/linux/syscalls/tuxcall.asm
+++ b/pwnlib/shellcraft/templates/common/linux/syscalls/tuxcall.asm
@@ -5,7 +5,7 @@ import pwnlib.constants
import pwnlib.shellcraft
import six
%>
-<%docstring>tuxcall(vararg_0, vararg_1, vararg_2, vararg_3, vararg_4) -> str
+<%docstring>tuxcall(vararg_0, vararg_1, vararg_2, vararg_3, vararg_4, vararg_5) -> str
Invokes the syscall tuxcall.
@@ -16,7 +16,7 @@ Arguments:
Returns:
long
</%docstring>
-<%page args="vararg_0=None, vararg_1=None, vararg_2=None, vararg_3=None, vararg_4=None"/>
+<%page args="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
@@ -26,8 +26,8 @@ Returns:
can_pushstr = []
can_pushstr_array = []
- argument_names = ['vararg_0', 'vararg_1', 'vararg_2', 'vararg_3', 'vararg_4']
- argument_values = [vararg_0, vararg_1, vararg_2, vararg_3, vararg_4]
+ argument_names = ['vararg_0', 'vararg_1', 'vararg_2', 'vararg_3', 'vararg_4', 'vararg_5']
+ argument_values = [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()
@@ -48,7 +48,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
@@ -76,7 +76,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.
@@ -84,7 +84,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_tuxcall'])
%>
/* tuxcall(${', '.join(syscall_repr)}) */
%for name, arg in string_arguments.items():