aboutsummaryrefslogtreecommitdiff
path: root/common/uapi/proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/uapi/proc.c')
-rw-r--r--common/uapi/proc.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/common/uapi/proc.c b/common/uapi/proc.c
index d1d2bd7..a668246 100644
--- a/common/uapi/proc.c
+++ b/common/uapi/proc.c
@@ -91,7 +91,11 @@ SYSCALL_DEFINE2(exec)(sys_arg_t bin, sys_arg_t interp){
*/
SYSCALL_DEFINE2(spawn)(sys_arg_t bin, sys_arg_t interp)
{
- /* @todo implement */
+ struct tcb *t = create_proc(NULL);
+ if (!t)
+ return (struct sys_ret){ERR_OOMEM, 0, 0, 0, 0, 0};
+
+ return (struct sys_ret){prepare_proc(t, bin, interp), t->pid, 0, 0, 0, 0};
}
/**