summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libdiskfs/boot-start.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libdiskfs/boot-start.c b/libdiskfs/boot-start.c
index c252be2b..ce154ba0 100644
--- a/libdiskfs/boot-start.c
+++ b/libdiskfs/boot-start.c
@@ -318,11 +318,14 @@ diskfs_S_fsys_init (mach_port_t port,
assert (exectask);
err = proc_task2proc (procserver, exectask, &execprocess);
assert (!err);
- exec_init (diskfs_exec, authhandle, execprocess, MACH_MSG_TYPE_MOVE_SEND);
/* Declare that the exec server is our child. */
proc_child (procserver, exectask);
+ /* Don't start this until now so that exec is fully authenticated
+ with proc. */
+ exec_init (diskfs_exec, authhandle, execprocess, MACH_MSG_TYPE_MOVE_SEND);
+
/* We don't need this anymore. */
mach_port_deallocate (mach_task_self (), exectask);
exectask = MACH_PORT_NULL;