Module Name: src Committed By: christos Date: Sun Sep 15 20:26:52 UTC 2019
Modified Files: src/sys/compat/netbsd32: netbsd32_execve.c Log Message: fix fexecve To generate a diff of this commit: cvs rdiff -u -r1.39 -r1.40 src/sys/compat/netbsd32/netbsd32_execve.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/compat/netbsd32/netbsd32_execve.c diff -u src/sys/compat/netbsd32/netbsd32_execve.c:1.39 src/sys/compat/netbsd32/netbsd32_execve.c:1.40 --- src/sys/compat/netbsd32/netbsd32_execve.c:1.39 Mon Sep 3 12:29:29 2018 +++ src/sys/compat/netbsd32/netbsd32_execve.c Sun Sep 15 16:26:51 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: netbsd32_execve.c,v 1.39 2018/09/03 16:29:29 riastradh Exp $ */ +/* $NetBSD: netbsd32_execve.c,v 1.40 2019/09/15 20:26:51 christos Exp $ */ /* * Copyright (c) 1998, 2001 Matthew R. Green @@ -28,7 +28,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: netbsd32_execve.c,v 1.39 2018/09/03 16:29:29 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: netbsd32_execve.c,v 1.40 2019/09/15 20:26:51 christos Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -71,9 +71,8 @@ netbsd32_execve(struct lwp *l, const str syscallarg(netbsd32_charpp) argp; syscallarg(netbsd32_charpp) envp; } */ - const char *path = SCARG_P32(uap, path); - return execve1(l, path, SCARG_P32(uap, argp), + return execve1(l, SCARG_P32(uap, path), -1, SCARG_P32(uap, argp), SCARG_P32(uap, envp), netbsd32_execve_fetch_element); } @@ -86,13 +85,9 @@ netbsd32_fexecve(struct lwp *l, const st syscallarg(netbsd32_charpp) argp; syscallarg(netbsd32_charpp) envp; } */ - struct sys_fexecve_args ua; - NETBSD32TO64_UAP(fd); - NETBSD32TOP_UAP(argp, char * const); - NETBSD32TOP_UAP(envp, char * const); - - return sys_fexecve(l, &ua, retval); + return execve1(l, NULL, SCARG(uap, fd), SCARG_P32(uap, argp), + SCARG_P32(uap, envp), netbsd32_execve_fetch_element); } static int