Split execve(). This required some interesting changes to the shell
authorDavid P. Reese, Jr. <daver@dragonflybsd.org>
Wed, 12 Nov 2003 01:00:33 +0000 (01:00 +0000)
committerDavid P. Reese, Jr. <daver@dragonflybsd.org>
Wed, 12 Nov 2003 01:00:33 +0000 (01:00 +0000)
commit2bd9d75c4d0e922e26d00adbacf200dc10cd0b29
tree8062553a4295aa21e890b1fae74e837c2af4dd1f
parentb651c485a2864e87f2a0f6b577c9667ad39d4490
Split execve().  This required some interesting changes to the shell
image activation code and the image_params structure.

Userland pointers are no longer passed in the image_params structure.
The exec_copyin_args() function now pulls the arguments, environment
and filename of the target being execve()'d into a kernel space buffer
before calling kern_execve().

The exec_shell_imgact() function does some magic to prepend the
interpreter arguments.
12 files changed:
sys/emulation/ibcs2/coff/imgact_coff.c
sys/emulation/linux/i386/imgact_linux.c
sys/emulation/linux/i386/linux_sysvec.c
sys/emulation/svr4/imgact_svr4.c
sys/emulation/svr4/svr4_sysvec.c
sys/kern/imgact_aout.c
sys/kern/imgact_elf.c
sys/kern/imgact_gzip.c
sys/kern/imgact_shell.c
sys/kern/kern_exec.c
sys/sys/imgact.h
sys/sys/kern_syscall.h