summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2003-08-03 18:08:04 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2003-08-03 18:08:04 +0000
commitbd85d12d6d2b0c24bbfe1b4c5ebc5408b33c81a9 (patch)
treecc5f7052e3956a119d63b0e2acfba3e8d9a9e002
parent8421f98a751330cac87b4dca3308335ddc2c68a5 (diff)
another gapped system call handled incorrectly: truncate64; marius@monkey.org
-rw-r--r--sys/compat/linux/linux_file64.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/compat/linux/linux_file64.c b/sys/compat/linux/linux_file64.c
index 37d55183167..bd63798fabd 100644
--- a/sys/compat/linux/linux_file64.c
+++ b/sys/compat/linux/linux_file64.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: linux_file64.c,v 1.5 2003/08/02 18:37:06 deraadt Exp $ */
+/* $OpenBSD: linux_file64.c,v 1.6 2003/08/03 18:08:03 deraadt Exp $ */
/* $NetBSD: linux_file64.c,v 1.2 2000/12/12 22:24:56 jdolecek Exp $ */
/*-
@@ -221,11 +221,15 @@ linux_sys_truncate64(p, v, retval)
syscallarg(char *) path;
syscallarg(off_t) length;
} */ *uap = v;
+ struct sys_truncate_args ta;
caddr_t sg = stackgap_init(p->p_emul);
LINUX_CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
- return sys_truncate(p, uap, retval);
+ SCARG(&ta, path) = SCARG(uap, path);
+ SCARG(&ta, length) = SCARG(uap, length);
+
+ return sys_truncate(p, &ta, retval);
}
/*