Add the exec builtin
Problem:
The exec
builtin does not exist
Solution:
Implement the exec
builtin as a simple wrapper around theexecve
syscall.
Changes introduced by this pull request:
- Add the necessary functions to builtin
- Add the necessary interfaces for the execve syscall
- Add sys::unix::execve
- Add sys::redox::execve
TODOs:
-
exec
hits an assertion here when run from the original shell on redox. For example:
# Works
echo -e "#!/usr/bin/ion\nexec ion" > ./test.ion
ion ./test.ion
# Hits assertion
exec ion
Resolution: This occurred due to the context history not being prepped for exit.
Fixes: