Skip to content

Add the exec builtin

Dan Robertson requested to merge dlrobertson:add_exec into master

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:

Merge request reports