summaryrefslogtreecommitdiff
path: root/libtrivfs
diff options
context:
space:
mode:
authorMichael I. Bushnell <mib@gnu.org>1994-05-10 19:38:50 +0000
committerMichael I. Bushnell <mib@gnu.org>1994-05-10 19:38:50 +0000
commit8dbc912abef8c395a92e52433318203741df1a78 (patch)
tree3eecec4cd5e4805d7bcee53bfe969d379ef4c433 /libtrivfs
parente35ca099d7b178d4a14788f253d5e5e9c62c77dd (diff)
Formerly io-reauthenticate.c.~3~
Diffstat (limited to 'libtrivfs')
-rw-r--r--libtrivfs/io-reauthenticate.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libtrivfs/io-reauthenticate.c b/libtrivfs/io-reauthenticate.c
index e0388c01..2818662b 100644
--- a/libtrivfs/io-reauthenticate.c
+++ b/libtrivfs/io-reauthenticate.c
@@ -40,7 +40,8 @@ trivfs_S_io_reauthenticate (struct protid *cred,
gubuf = gen_uids; ggbuf = gen_gids;
aubuf = aux_uids; agbuf = aux_gids;
- newcred = ports_allocate_port (sizeof (struct protid), PT_PROTID);
+ newcred = ports_allocate_port (sizeof (struct protid),
+ trivfs_protid_porttype);
err = auth_server_authenticate (diskfs_auth_server_port,
ports_get_right (cred),
MACH_MSG_TYPE_MAKE_SEND,
@@ -57,7 +58,9 @@ trivfs_S_io_reauthenticate (struct protid *cred,
for (i = 0; i < genuidlen; i++)
if (gen_uids[i] == 0)
newcred->isroot = 1;
- err = io_restrict_auth (trivfs_underlying_node, &newcred->realnode,
+ newcred->cntl = cred->cntl;
+ ports_port_ref (newcred->cntl);
+ err = io_restrict_auth (newcred->cntl->underlying, &newcred->realnode,
gen_uids, genuidlen, gen_gids, gengidlen);
if (err)
newcred->realnode = MACH_PORT_NULL;