aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'libsandbox/trace/linux/i386.c')
-rw-r--r--libsandbox/trace/linux/i386.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/libsandbox/trace/linux/i386.c b/libsandbox/trace/linux/i386.c
index 7508e25..9a3f590 100644
--- a/libsandbox/trace/linux/i386.c
+++ b/libsandbox/trace/linux/i386.c
@@ -1,7 +1,4 @@
-static int trace_sysnum(void)
-{
- return do_peekuser(4 * ORIG_EAX);
-}
+#define trace_sysnum_puser (4 * ORIG_EAX)
static long trace_raw_ret(void *vregs)
{
@@ -9,6 +6,11 @@ static long trace_raw_ret(void *vregs)
return regs->eax;
}
+static void trace_set_ret(void *vregs, int err)
+{
+ do_pokeuser(EAX, -err);
+}
+
static unsigned long trace_arg(void *vregs, int num)
{
trace_regs *regs = vregs;