summaryrefslogtreecommitdiffstats
path: root/sys/i386/ibcs2
diff options
context:
space:
mode:
authorsobomax <sobomax@FreeBSD.org>2005-01-29 23:12:00 +0000
committersobomax <sobomax@FreeBSD.org>2005-01-29 23:12:00 +0000
commitf489acaf0f5bae70444702cdcc02ab81d3b6b51a (patch)
treec697d47092272c8c6973b42ba0a424e9763f7ce5 /sys/i386/ibcs2
parent1c7b5012657233c6ea65df68e8223e60b6f822a0 (diff)
downloadFreeBSD-src-f489acaf0f5bae70444702cdcc02ab81d3b6b51a.zip
FreeBSD-src-f489acaf0f5bae70444702cdcc02ab81d3b6b51a.tar.gz
o Split out kernel part of execve(2) syscall into two parts: one that
copies arguments into the kernel space and one that operates completely in the kernel space; o use kernel-only version of execve(2) to kill another stackgap in linuxlator/i386. Obtained from: DragonFlyBSD (partially) MFC after: 2 weeks
Diffstat (limited to 'sys/i386/ibcs2')
-rw-r--r--sys/i386/ibcs2/ibcs2_sysvec.c2
-rw-r--r--sys/i386/ibcs2/imgact_coff.c5
2 files changed, 1 insertions, 6 deletions
diff --git a/sys/i386/ibcs2/ibcs2_sysvec.c b/sys/i386/ibcs2/ibcs2_sysvec.c
index 6a4dacc..74be782 100644
--- a/sys/i386/ibcs2/ibcs2_sysvec.c
+++ b/sys/i386/ibcs2/ibcs2_sysvec.c
@@ -91,7 +91,7 @@ static int
ibcs2_fixup(register_t **stack_base, struct image_params *imgp)
{
- return (suword(--(*stack_base), imgp->argc));
+ return (suword(--(*stack_base), imgp->args->argc));
}
/*
diff --git a/sys/i386/ibcs2/imgact_coff.c b/sys/i386/ibcs2/imgact_coff.c
index 6470813..226d1e9 100644
--- a/sys/i386/ibcs2/imgact_coff.c
+++ b/sys/i386/ibcs2/imgact_coff.c
@@ -332,11 +332,6 @@ exec_coff_imgact(imgp)
VOP_UNLOCK(imgp->vp, 0, td);
- if ((error = exec_extract_strings(imgp)) != 0) {
- DPRINTF(("%s(%d): return %d\n", __FILE__, __LINE__, error));
- goto fail;
- }
-
exec_new_vmspace(imgp, &ibcs2_svr3_sysvec);
vmspace = imgp->proc->p_vmspace;
OpenPOWER on IntegriCloud