Commit Graph

153 Commits

Author SHA1 Message Date
mycroft d1f36d3007 fname --> path 1994-05-27 08:44:12 +00:00
deraadt d0f39cffd9 return 0 on success 1994-05-27 07:58:37 +00:00
cgd ebcaebd335 MIN -> min, MAX -> max 1994-05-24 02:35:53 +00:00
cgd 82fabd73d5 struct execve_args now defined in exec.h 1994-05-21 07:48:10 +00:00
cgd 72db136279 kill bogus include 1994-05-07 04:17:10 +00:00
cgd 4bbabd8e7a Rename a lot of process flags. 1994-05-04 03:41:12 +00:00
cgd f50f031448 kill syscall name aliases. no user-visible changes 1994-04-29 04:41:02 +00:00
cgd 675a199909 SUGID semantics, similar to 4.4BSD 1994-04-07 00:40:14 +00:00
cgd a790e23e87 simplify error returns, and fix bugs 1994-02-16 01:21:00 +00:00
mycroft 974e9ba226 Fix typo in last change. 1994-02-12 07:19:11 +00:00
cgd 3a46cb73c6 ditto on the last; weird failure modes are the cause of the day. 1994-02-12 07:02:34 +00:00
cgd 64517d6f7f don't forget to deallocate vmcmds if exec fails bounds checks.
thanks to charles for pointing it out.
1994-02-12 04:13:43 +00:00
cgd 114cf35108 dtrt with exec header size 1994-02-05 02:23:30 +00:00
cgd 8c996398fc clean up, break script handling out of check_exec(), and comment a bit. 1994-01-16 03:09:59 +00:00
cgd 8ca18c3fa8 use exec_map 1994-01-13 06:23:57 +00:00
cgd 7422e2a40c trim debugging code, for now, and kill dead code (unused options) 1994-01-13 02:33:57 +00:00
cgd 4c8ff3970f try until error != ENOEXEC, so that formats can report errros reasonably 1994-01-09 17:11:42 +00:00
cgd 34ea9285e9 de-macroify kill_vmcmds() 1994-01-08 18:05:29 +00:00
cgd 957ce06f24 far reaching but relatively minor cleanup and slight reorg of exec code 1994-01-08 07:14:24 +00:00
mycroft 8955aeedd5 #include vm_user.h. 1994-01-08 04:15:41 +00:00
cgd 914aac9116 field name change 1994-01-04 11:29:55 +00:00
cgd a67d24d94b add support for p_vnode, from jsp 1993-12-22 13:39:27 +00:00
deraadt c38503af4d sparc must flush register windows before vm_deallocate or else fireworks
must deallocate shm's
set/reset emulation environment at the right times
keep arg buffer around for later use
canonicalize all #includes.
support STACKGAP for COMPAT_SUNOS code
support OMAGIC/NMAGIC-style memory loading
don't assume VM_MIN_ADDRESS is 0.
(changes come from magnum branch)
1993-12-12 19:38:37 +00:00
mycroft 620a222f9f If EXEC_DEBUG, display name of file we're trying to exec. 1993-12-06 14:18:58 +00:00
cgd dde22728d4 drag changes down from magnum 1993-11-15 10:21:08 +00:00
cgd 13ca4d98c7 it's correct to return EACCES if FS is mounted MNT_NOEXEC. 1993-10-26 01:42:56 +00:00
cgd c7582cbd4f use copyinstr rather than strcpy to copy in the saved shell-script
name from userland.  From Markus Wild, mw@lamp
1993-10-26 00:32:29 +00:00
cgd a84055b552 use the ALIGN macro to align the stack, rather than rounding up
by a (char *).  the former is safe, even on strange machines
(read: sparc).
1993-10-06 07:27:58 +00:00
cgd 83aeee1bc0 there now exists an "exec switch". break the a.out code into another
module, and tidy up the interface so that other object formats are
more easily supportable.
1993-09-05 01:33:35 +00:00
cgd 491d6b4b9d fix problem where exec would lose on shell scripts with symlinks in
their names.  fix from "James W. Dolter" <jdolter@sawtooth.eecs.umich.edu>.
test script:

#!/bin/csh
mkdir /tmp/foodir
cat > /tmp/foodir/testscript <<EOF
#!/bin/sh
echo "Executing script \$1"
EOF
chmod 755 /tmp/foodir/testscript
(cd /tmp ; ln -s foodir foosym)
echo "Trying full path (w/o symlink) to /tmp/foodir/testscript"
/tmp/foodir/testscript "with out symlink"
echo "Trying full path (w/ symlink) to /tmp/foosym/testscript"
/tmp/foosym/testscript "with symlink"
echo "End of Test"
1993-09-01 21:43:50 +00:00
cgd d365662684 ok, initialize that errno, to make theo and gcc2 happy... 1993-08-31 01:52:34 +00:00
cgd 518f7c78d6 a program being exec'd *must* cause *some* exec commands to be invoked;
if it doesn't there's a problem in the kernel, because a program
with no exec commands run will have no address space except the stack,
and i don't think it's valid to have a "run from stack only" exec type,
so panic.  if need for that case comes up later, it can be changed...
1993-08-31 01:46:36 +00:00
cgd 2680a043c7 general cleanup (get close to KNF), and remove a few fuzzies
in preparation for The Grand Re-rewriting.
1993-07-28 04:08:27 +00:00
cgd c0334ef92c break args structs out, into syscallname_args structs, so gcc2 doesn't
whine so much.
1993-07-13 22:13:15 +00:00
brezak b5236e7d0f Roundup stack len to naturally aligned address. This fixes emacs aborting due to an odd address in alloca'ed memory. 1993-07-10 02:07:48 +00:00
brezak 31d24dc82e Ignore the flags field in midmag. 1993-07-08 16:48:18 +00:00
cgd b274bb4126 add support for checking entry against max user address 1993-07-05 01:53:56 +00:00
cgd 955ae6a915 change exit() to kexit(), so prototypes are "safe" with stdio.h, etc. 1993-07-04 23:30:33 +00:00
cgd b21025e4f3 call setregs with a retval, too, so the hp300 & mac, and more works. 1993-07-04 09:48:29 +00:00
andrew 0e6cb953ea ANSIfications - removed all implicit function return types and argument
definitions.  Ensured that all files include "systm.h" to gain access to
general prototypes.  Casts where necessary.
1993-06-27 06:01:27 +00:00
glass ee8d969be4 ansi-style function definitions 1993-06-22 01:31:53 +00:00
cgd c8bdad0560 convert magic numbers to network byte order, and attendent changes 1993-06-18 06:49:30 +00:00
cgd 24fe3e4563 fixed bug where extra spaces at the end of a shell name would
cause shell scripts to be executed incorrectly.  shells would
receive an *empty* arg for name of script, open it, the kernel
would say "oh, that's ." or something similar, and the results
would be interesting...  found, diagnosed, and killed by me.
1993-06-07 03:09:29 +00:00
cgd 7489eff03c fix stoopid location to label problem 1993-06-06 02:36:22 +00:00
cgd 165b917efe add fixes supplied by markus wild 1993-06-05 19:38:13 +00:00
cgd 23f01c5982 call a cpu-dependent function to check executable's a_mid type. 1993-06-03 01:31:43 +00:00
cgd 654e213804 when copying out signal trampoline code, make sure that
the copyout actually succeeds.
1993-06-02 04:43:54 +00:00
cgd d2bf51450c fixed minor typo in sigcode copying code 1993-06-02 03:15:36 +00:00
cgd af4017c23f general cleanup including, but not limited to:
better-integreate vmcmd building and exec hdr interpretation,
	get stack sigcode copying right
	etc.
1993-06-02 02:49:40 +00:00
cgd 956c046db5 do address mapping in a new way...
it works, but the code needs to be cleaned some...
1993-06-02 00:20:07 +00:00
cgd 4206d7f100 break before letting child run, if tracing, and do the right
thing with stack limits
1993-06-01 04:52:40 +00:00
cgd 0656a4bbbe final patchups, also add support for finding argv/env via PS_STRINGS 1993-06-01 01:31:39 +00:00
cgd eb4c4de385 replace exec.
new one based on one by Wolfgang Solfrank, but majorly hacked
(as it: it didn't have a chance in hell of working, before; didn't
even bother copying out argc, for one...)
1993-05-31 01:44:55 +00:00