diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2003-08-03 18:08:04 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2003-08-03 18:08:04 +0000 |
commit | bd85d12d6d2b0c24bbfe1b4c5ebc5408b33c81a9 (patch) | |
tree | cc5f7052e3956a119d63b0e2acfba3e8d9a9e002 | |
parent | 8421f98a751330cac87b4dca3308335ddc2c68a5 (diff) |
another gapped system call handled incorrectly: truncate64; marius@monkey.org
-rw-r--r-- | sys/compat/linux/linux_file64.c | 8 |
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); } /* |