summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>2003-08-03 18:08:03 +0000
committerderaadt <deraadt@openbsd.org>2003-08-03 18:08:03 +0000
commit1769ad24100bc4ff9592775d2d2cfdb7e2e2f56f (patch)
tree5c5e2d07f4e578f30c0ce6b55d1ff2a15d958b2c
parentgnu gzip dir is now bye bye (diff)
downloadwireguard-openbsd-1769ad24100bc4ff9592775d2d2cfdb7e2e2f56f.tar.xz
wireguard-openbsd-1769ad24100bc4ff9592775d2d2cfdb7e2e2f56f.zip
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);
}
/*