aboutsummaryrefslogtreecommitdiff
path: root/exec
diff options
context:
space:
mode:
authorSergey Bugaev <bugaevc@gmail.com>2021-06-09 15:41:58 +0300
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2022-08-10 22:17:08 +0200
commit5710aaa670a14cbbe4da0e8fe64314a55f14a015 (patch)
tree5a76113134f56b3e481c8019684fc1300d9e5d3f /exec
parentb6c6e41a0d94740f4ecce9afdafa0c17348ce4c0 (diff)
downloadhurd-5710aaa670a14cbbe4da0e8fe64314a55f14a015.tar.gz
hurd-5710aaa670a14cbbe4da0e8fe64314a55f14a015.tar.bz2
hurd-5710aaa670a14cbbe4da0e8fe64314a55f14a015.zip
Make proc_reauthenticate () recreate proc port
And add proc_complete_reauthentication ()
Diffstat (limited to 'exec')
-rw-r--r--exec/exec.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/exec/exec.c b/exec/exec.c
index 43760321..27d8abdf 100644
--- a/exec/exec.c
+++ b/exec/exec.c
@@ -1400,6 +1400,13 @@ do_exec (file_t file,
if (e.error)
goto out;
+ e.error = proc_complete_reauthentication (newproc);
+ if (e.error)
+ {
+ mach_port_deallocate (mach_task_self (), newproc);
+ goto out;
+ }
+
assert_backtrace (ports_replaced[INIT_PORT_PROC]);
mach_port_deallocate (mach_task_self (),
boot->portarray[INIT_PORT_PROC]);