diff options
author | Michael I. Bushnell <mib@gnu.org> | 1996-07-19 03:42:43 +0000 |
---|---|---|
committer | Michael I. Bushnell <mib@gnu.org> | 1996-07-19 03:42:43 +0000 |
commit | 8ad48f6ce444648397d82b107cd196c24599d7cb (patch) | |
tree | 1dbc9e6c691521e74a48a9df2b7944366a4c0922 /libnetfs | |
parent | f030ef4e9d02fc0c88113a569773e49d629e9aa2 (diff) |
*** empty log message ***
Diffstat (limited to 'libnetfs')
-rw-r--r-- | libnetfs/ChangeLog | 7 | ||||
-rw-r--r-- | libnetfs/io-reauthenticate.c | 3 | ||||
-rw-r--r-- | libnetfs/make-protid.c | 10 |
3 files changed, 18 insertions, 2 deletions
diff --git a/libnetfs/ChangeLog b/libnetfs/ChangeLog index ccb98e49..c125bb94 100644 --- a/libnetfs/ChangeLog +++ b/libnetfs/ChangeLog @@ -1,3 +1,10 @@ +Thu Jul 18 23:09:54 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu> + + * io-reauthenticate.c (netfs_S_io_reauthenticate): After attaching + credential to NEWPI, install it in NETFS_PORT_BUCKET->portset. + * make-protid.c (netfs_make_protid): If CRED is null, use + noinstall version of ports_create_port. + Sat Jul 13 20:10:02 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu> * io-reauthenticate.c (netfs_S_io_reauthenticate): Repeat diff --git a/libnetfs/io-reauthenticate.c b/libnetfs/io-reauthenticate.c index aea60154..dff3af8f 100644 --- a/libnetfs/io-reauthenticate.c +++ b/libnetfs/io-reauthenticate.c @@ -67,6 +67,9 @@ netfs_S_io_reauthenticate (struct protid *user, mach_port_t rend_port) newpi->credential = netfs_make_credential (gen_uids, genuidlen, gen_gids, gengidlen); + mach_port_move_member (mach_task_self (), newpi->pi.port_right, + netfs_port_bucket->portset); + mutex_unlock (&user->po->np->lock); ports_port_deref (newpi); diff --git a/libnetfs/make-protid.c b/libnetfs/make-protid.c index 352698e2..7d9240a1 100644 --- a/libnetfs/make-protid.c +++ b/libnetfs/make-protid.c @@ -25,8 +25,14 @@ netfs_make_protid (struct peropen *po, struct netcred *cred) { struct protid *pi; - errno = ports_create_port (netfs_protid_class, netfs_port_bucket, - sizeof (struct protid), &pi); + if (cred) + errno = ports_create_port (netfs_protid_class, netfs_port_bucket, + sizeof (struct protid), &pi); + else + errno = ports_create_port_noinstall (netfs_protid_class, + netfs_port_bucket, + sizeof (struct protid), &pi); + if (errno) return 0; |