summaryrefslogtreecommitdiff
path: root/libfshelp/fetch-root.c
diff options
context:
space:
mode:
Diffstat (limited to 'libfshelp/fetch-root.c')
-rw-r--r--libfshelp/fetch-root.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/libfshelp/fetch-root.c b/libfshelp/fetch-root.c
index 682197a4..ffac383e 100644
--- a/libfshelp/fetch-root.c
+++ b/libfshelp/fetch-root.c
@@ -63,14 +63,14 @@ fshelp_fetch_root (struct transbox *box, void *cookie,
if (port == MACH_PORT_NULL)
return port;
+ if (port_type == MACH_MSG_TYPE_MAKE_SEND)
+ mach_port_insert_right (mach_task_self (), port, port,port_type);
+
rend = mach_reply_port ();
err = io_reauthenticate (port, rend,
MACH_MSG_TYPE_MAKE_SEND);
assert_perror (err);
- if (port_type == MACH_MSG_TYPE_MAKE_SEND)
- mach_port_insert_right (mach_task_self (), port, port,port_type);
-
err = auth_user_authenticate (newauth, port, rend,
MACH_MSG_TYPE_MAKE_SEND,
&ret);
@@ -86,15 +86,9 @@ fshelp_fetch_root (struct transbox *box, void *cookie,
error_t fetch_underlying (int flags, mach_port_t *underlying,
mach_msg_type_name_t *underlying_type)
{
- error_t err =
+ return
(*callback2) (box->cookie, cookie, flags,
underlying, underlying_type);
- if (!err)
- {
- *underlying = reauth (*underlying, *underlying_type);
- *underlying_type = MACH_MSG_TYPE_MOVE_SEND;
- }
- return err;
}
if (box->flags & TRANSBOX_STARTING)