summaryrefslogtreecommitdiff
path: root/libtrivfs
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-07-17 22:55:08 +0000
committerRoland McGrath <roland@gnu.org>1996-07-17 22:55:08 +0000
commit5b9e5e24f883db76aa783678b77698c47caecc30 (patch)
tree199fc2010d664be83723e838f8217dbb4c3eab82 /libtrivfs
parentb3657b27182f2c707cb940795cb982e4bb0f5660 (diff)
Initial revision
Diffstat (limited to 'libtrivfs')
-rw-r--r--libtrivfs/ChangeLog659
1 files changed, 659 insertions, 0 deletions
diff --git a/libtrivfs/ChangeLog b/libtrivfs/ChangeLog
new file mode 100644
index 00000000..d3b68006
--- /dev/null
+++ b/libtrivfs/ChangeLog
@@ -0,0 +1,659 @@
+Sat Jul 13 20:15:56 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Repeat
+ ports_create_port, auth_server_authenticate, io_restrict_auth, and
+ *trivfs_protid_create_hook for as long as we get EINTR. Deal with
+ other errors without crashing.
+
+Sun Jul 7 16:06:37 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Don't use
+ MACH_MSG_TYPE_MOVE_SEND; it's unreliable.
+
+Thu Jun 20 22:54:01 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * file-get-fs-options.c (trivfs_S_file_get_fs_options):
+ Call trivfs_get_options, and package up the results.
+ * fsys-get-options.c (trivfs_S_fsys_get_options): Likewise.
+ * fsys-set-options.c (trivfs_S_fsys_set_options): Call
+ trivfs_set_options.
+ * set-options.c, get-options.c: New files.
+ * trivfs.h: Add trivfs_set_options & trivfs_get_options.
+ * Makefile (OTHERSRCS): Add set-options.c & get-options.c.
+
+Wed Jun 19 21:29:45 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * trivfs.h (trivfs_runtime_argp): New declaration.
+ * fsys-set-options.c (trivfs_S_fsys_set_options): Use
+ trivfs_runtime_argp to parse options.
+ * runtime-argp.c: New file.
+ * Makefile (OTHERSRCS): Add runtime-argp.c.
+
+Sat Jun 15 19:50:37 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * fsys-stubs.c (trivfs_S_fsys_set_options, trivfs_S_fsys_get_options,
+ trivfs_S_file_get_fs_options): Functions removed.
+ * fsys-set-options.c, fsys-get-options.c, file-get-fs-options.c:
+ New files.
+ * Makefile (FSSRCS): Add file-get-fs-options.c
+ (FSYSSRCS): Add fsys-set-options.c & fsys-get-options.c.
+
+Thu May 9 20:03:28 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * io-identity.c: New file.
+ * Makefile (IOSRCS): Add io-identity.c.
+ * cntl-clean.c (trivfs_clean_cntl): Destroy filesys_id and file_id
+ members.
+ * cntl-create.c (trivfs_create_control): Initialize filesys_id and
+ file_id members of new control.
+ * trivfs.h (trivfs_control): New members `filesys_id' and
+ `file_id'.
+
+Thu May 9 16:58:31 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * file-get-storage-info.c (trivfs_S_file_get_storage_info): Change
+ to new interface.
+
+Thu May 9 15:32:38 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Don't send
+ right for CRED to auth_server_authenticate.
+
+ * fsys-stubs.c (trivfs_S_fsys_get_options): Expect (and ignore)
+ reply port args.
+
+ * file-syncfs.c (trivfs_S_file_syncfs): Provide new third arg to
+ file_sync.
+ * fsys-syncfs.c (trivfs_S_fsys_syncfs): Likewise.
+ * file-sync.c (trivfs_S_file_sync): Accept and pass through new
+ omitmeta parm.
+
+ * file-statfs.c (trivfs_S_file_statfs): Use new struct statfs
+ format.
+
+ * dir-rename.c (trivfs_S_dir_rename): Accept new excl parm.
+ * dir-link.c (trivfs_S_dir_link): Likewise.
+
+ * Makefile (OTHERSRCS): Delete handle-port.c.
+ * trivfs.h (trivfs_handle_port): Delete declaration.
+ * handle-port.c: Delete file.
+
+Thu May 9 12:16:38 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * io-select.c (trivfs_S_io_select): Remove TAG arg.
+
+Tue May 7 16:14:10 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * file-get-storage-info.c (trivfs_S_file_get_storage_info): Swap
+ PORTS_TYPE and NUM_PORTS args.
+
+Mon May 6 20:16:20 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * file-get-storage-info.c (trivfs_S_file_get_storage_info):
+ Rewrite for new interface.
+
+Mon Apr 29 15:19:26 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * handle-port.c: Comment out warning addition.
+
+Sun Apr 28 15:22:16 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
+
+ * handle-port.c: Add obsolescence link warning.
+
+Thu Apr 11 18:03:31 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * Makefile (MIGSFLAGS): Reference fsmutations.h in $(srcdir).
+
+Thu Jan 25 16:19:29 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * cntl-create.c (trivfs_create_control): New function.
+ * trivfs.h (trivfs_create_control): New declaration.
+ * startup.c (trivfs_startup): Use trivfs_create_control.
+ * handle-port.c (trivfs_handle_port): Likewise.
+ * Makefile (OTHERSRCS): Add cntl-create.c.
+
+ * open.c (trivfs_open): Use ports_create_port instead of
+ ports_allocate_port, and return any error.
+ * protid-dup.c (trivfs_protid_dup): Likewise.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Likewise.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Likewise.
+
+Mon Jan 15 12:02:49 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * protid-clean.c (trivfs_clean_protid): Don't hold
+ CRED->po->cntl->lock while calling TRIVFS_PEROPEN_DESTROY_HOOK.
+
+SUN Nov 5 00:01:53 1995 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * fsys-stubs.c (trivfs_S_fsys_get_options,
+ trivfs_S_file_get_fs_options): New functions.
+
+ * file-get-storage-info.c (trivfs_S_file_get_storage_info): Add
+ FLAGS arg.
+
+ * dir-chg.c (trivfs_S_dir_notice_changes): Waste some time adding
+ reply port args that no one will use.
+ * dir-link.c (trivfs_S_dir_link): Ditto.
+ * dir-lookup.c (trivfs_S_dir_lookup): Ditto.
+ * file-utimes.c (trivfs_S_file_utimes): Ditto.
+ * file-statfs.c (trivfs_S_file_statfs)Ditto.
+ * file-set-trans.c (trivfs_S_file_set_translator): Ditto.
+ * file-lock.c (trivfs_S_file_lock, trivfs_S_file_lock_stat): Ditto.
+ * file-getlinknode.c (trivfs_S_file_getlinknode): Ditto.
+ * file-getfh.c (trivfs_S_file_getfh): Ditto.
+ * file-get-transcntl.c (trivfs_S_file_get_translator_cntl): Ditto.
+ * file-get-trans.c (trivfs_S_file_get_translator): Ditto.
+ * file-get-storage-info.c (trivfs_S_file_get_storage_info): Ditto.
+ * file-chown.c (trivfs_S_file_chown): Ditto.
+ * file-chflags.c (trivfs_S_file_chflags): Ditto.
+ * file-chg.c (trivfs_S_file_notice_changes): Ditto.
+ * dir-unlink.c (trivfs_S_dir_unlink): Ditto.
+ * dir-rmdir.c (trivfs_S_dir_rmdir): Ditto.
+ * dir-rename.c (trivfs_S_dir_rename): Ditto.
+ * dir-readdir.c (trivfs_S_dir_readdir): Ditto.
+ * dir-mkfile.c (trivfs_S_dir_mkfile): Ditto.
+ * dir-mkdir.c (trivfs_S_dir_mkdir): Ditto.
+ * file-chmod.c (trivfs_S_file_chmod): Ditto.
+ * file-chauthor.c (trivfs_S_file_chauthor): Ditto.
+
+Wed Nov 1 15:53:38 1995 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * startup.c (trivfs_startup): Add FLAGS arg, passed to fsys_startup.
+ * trivfs.h (trivfs_startup): Add FLAGS arg.
+ * fsys-stubs.c (trivfs_S_fsys_startup): Ditto.
+
+Sat Oct 7 05:04:02 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+
+ * fsys-stubs.c (trivfs_S_fsys_getpriv): Add poly args.
+
+ * Makefile (libtrivfs.so): Depend on ../libports/libports.so.
+
+Fri Oct 6 17:44:08 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+
+ * migsupport.c: Remove leading _ from function names.
+ * fsmutations.h: Likewise.
+ * trivfs.h (trivfs_{begin,end}_using_{protid,control}): Declare them.
+
+Fri Oct 6 17:28:07 1995 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * dir-link.c (trivfs_S_dir_link): Swap first two arguments.
+
+ * file-get-storage-info.c (trivfs_S_file_get_storage_info): Change
+ type of RUNS to off_t **, and add the BLOCK_SIZE parameter.
+
+Thu Oct 5 00:41:33 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+
+ * Makefile (FSSRCS): Add file-get-storage-info.c.
+ * file-get-storage-info.c: New file.
+
+Mon Sep 18 14:29:37 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * file-set-size.c (trivfs_S_file_set_size): Renamed from
+ file-truncate.c:trivfs_s_file_truncate.
+ * io-pathconf.c (trivfs_S_io_pathconf): Renamed from
+ file-pathconf.c:trivfs_S_file_pathconf.
+ (trivfs_S_io_pathconf): Add reply port to args.
+ * Makefile (FSSRCS): Remove file-pathconf.c.
+ (IOSRCS): Add io-pathconf.c.
+ (FSSRCS): Rename file-truncate.c to file-set-size.c.
+
+Wed Sep 6 10:33:03 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * demuxer.c (trivfs_demuxer): Use ports_notify_server and
+ ports_interrupt_server instead of our own versions.
+ * Makefile (SRCS): Removed $(NOTIFYSRCS) and $(INTSRCS).
+ (NOTIFYSRCS, INTSRCS): Removed.
+ (MIGSTUBS): Removed notifyServer.o and interruptServer.o.
+ * interrupt.c: File deleted.
+
+Fri Aug 25 12:11:26 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * interrupt.c (trivfs_S_interrupt_operation): Use ports_interrupt_rpc.
+
+Thu Aug 24 11:46:19 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * fsys-forward.c (trivfs_S_fsys_forward): New file.
+
+Wed Aug 23 15:09:31 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * Makefile (REMHDRS): Removed.
+ (FSYSSRCS): Added fsys-forward.c.
+
+Mon Aug 21 15:25:36 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * handle-port.c (trivfs_handle_port): Initialize the hook field.
+ * io-stat.c (trivfs_S_io_stat): Pass CRED to trivfs_modify_stat.
+ * fsys-goaway.c (trivfs_S_fsys_goaway): Use new args for trivfs_goaway.
+ * trivfs.h (struct trivfs_control): Add the hook field.
+ (trivfs_goaway): Pass the control structure directly instead of
+ random fields from it.
+ (trivfs_modify_stat): Pass in the node as well.
+
+Mon Aug 21 10:51:24 1995 Michael I. Bushnell, p/BSG <mib@duality.gnu.ai.mit.edu>
+
+ * protid-dup.c: Doc fix.
+
+Fri Aug 11 14:01:41 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * open.c (trivfs_open): Actually set the PO field to what we create.
+ * Makefile (OTHERSRCS): Add protid-dup.c and open.c.
+
+Tue Aug 8 14:07:04 1995 Miles Bader <miles@geech.gnu.ai.mit.edu>
+
+ * open.c: New file, containing trivfs_open.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Guts (except for
+ protection check) moved into trivfs_open.
+ * protid-dup.c: New file, containing trivfs_protid_dup.
+ * io-duplicate.c (trivfs_S_io_duplicate): Guts moved into
+ trivfs_protid_dup.
+
+ * trivfs.h (trivfs_protid_create_hook, trivfs_peropen_create_hook):
+ Change the declarations now that these return an error code.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Allow
+ trivfs_protid_create_hook and trivfs_peropen_create_hook to return
+ an error code, and abort if either does.
+ * protid-clean.c (trivfs_clean_protid): Only call
+ trivfs_protid_destroy_hook hook on CRED if it was fully initialized.
+ * io-duplicate.c (trivfs_S_io_duplicate): Allow
+ trivfs_protid_create_hook to return an error code.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Ditto.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Ditto.
+
+Fri Jul 21 17:01:12 1995 Michael I Bushnell <mib@geech.gnu.ai.mit.edu>
+
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Free initial reference
+ created by ports_allocate_port.
+ * handle-port.c (trivfs_handle_port): Likewise.
+ * io-duplicate.c (trivfs_S_io_duplicate): Likewise.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Likewise.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Likewise.
+
+Sun Jul 16 13:00:44 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * trivfs.h: Protect against including twice, and add includes that
+ we depend on.
+
+Thu Jul 6 15:38:48 1995 Michael I Bushnell <mib@duality.gnu.ai.mit.edu>
+
+ * Makefile: Removed dependencies that are now automatically
+ generated.
+
+Tue Jun 27 10:55:16 1995 Michael I Bushnell <mib@duality.gnu.ai.mit.edu>
+
+ * fsys-goaway.c (trivfs_S_fsys_goaway): Call trivfs_goaway the new
+ way.
+ * startup.c (trivfs_startup): New parms CONTROL_BUCKET and
+ PROTID_BUCKET; pass them to trivfs_handle_port. Use new ports
+ interface.
+ * protid-clean.c (trivfs_clean_protid): Use new ports interface.
+ Use PREdecrement in reference counting check.
+ * nosenders.c (trivfs_do_mach_notify_no_senders): Use new ports
+ interface.
+ * migsupport.c (_trivfs_begin_using_protid,
+ _trivfs_end_using_protid, _trivfs_begin_using_oontrol,
+ _trivfs_end_using_control): Use new ports interface.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Use new ports
+ interface.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Use new ports
+ interface.
+ * io-duplicate.c (trivfs_S_io_duplicate): Use new ports interface.
+ * handle-port.c (trivfs_handle_port): Take new parms; use new
+ ports interface; initialize CNTL->protid_bucket.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Use new form of
+ ports_allocate_port call.
+ * trivfs.h (trivfs_protid_portclasses): Renamed from
+ trivfs_protid_porttypes. Change type to `struct port_class *'.
+ (trivfs_protid_nportclasses): Renamed from trivfs_protid_nporttypes.
+ (trivfs_cntl_portclasses): Renamed from trivfs_cntl_porttypes. Change
+ type to `struct port_class *'.
+ (trivfs_cntl_nportclasses): Renamed from trivfs_cntl_nporttypes.
+ (trivfs_startup): Pass port classes instead of integer types. New
+ parms CONTROL_BUCKET and PROTID_BUCKET.
+ (trivfs_handle_port): Pass port classes instead of integer types.
+ New parms CONTROL_BUCKET and PROTID_BUCKET.
+ (trivfs_goaway): Pass port classes instead of integer types.
+ (struct trivfs_control): Renamed member `protid_types' to be
+ `protid_class' and changed type to be `stroct port_class *'.
+ New member `protid_bucket'.
+
+Fri May 12 19:05:46 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * fsys-stubs.c (trivfs_S_fsys_set_options,
+ trivfs_S_fsys_mod_readonly): Change from mod_readonly to set_options.
+
+Sun Apr 9 00:36:36 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * io-stat.c (trivfs_S_io_stat): Before calling trivfs_modify_stat,
+ set the st_fstype & st_fsid fields to trivfs_fstype & trivfs_fsid.
+ But first, if trivfs_fsid is zero, set it to our process id, which
+ should be a nice unique value.
+ * file-statfs.c (trivfs_S_file_statfs): Ditto about the PID.
+
+ * startup.c (trivfs_startup): New function, which implements a
+ common sequence of steps when starting up a new trivfs.
+ * trivfs.h: Declare trivfs_startup.
+ * Makefile (OTHERSRCS): Add startup.c.
+
+Thu Mar 30 12:27:59 1995 Michael I Bushnell <mib@geech.gnu.ai.mit.edu>
+
+ * trivfs.h (trivfs_check_open_hook): Doc fix.
+ (trivfs_complete_open): Delete declaration.
+ (struct trivfs_control): Delete members `openshead' and
+ `openstail'.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Strip out old
+ hack for blocking.
+ (struct pending_open): Delete type.
+ (trivfs_complete_open): Delete function.
+
+ * trivfs.h (struct trivfs_control): New member `lock'.
+ * handle-port.c (trivfs_handle_port): Initialize CNTL->lock.
+ * io-duplicate.c (trivfs_S_io_duplicate): Lock
+ CRED->po->cntl->lock around relevant code.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Likewise.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Likewise.
+ * protid-clean.c (trivfs_clean_protid): Likewise.
+
+Tue Jan 17 19:00:28 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+
+ * io-select.c: Updated for new io_select interface.
+
+Fri Dec 9 01:35:54 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+
+ * io-write.c: Use mach_msg_type_number_t in place of unsigned int
+ and int.
+ * io-read.c: Likewise.
+ * io-readable.c: Likewise.
+
+Tue Oct 25 10:54:06 1994 Michael I Bushnell <mib@churchy.gnu.ai.mit.edu>
+
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Don't clear O_NONBLOCK.
+
+Tue Aug 30 13:23:55 1994 Michael I Bushnell <mib@geech.gnu.ai.mit.edu>
+
+ * fsys-syncfs.c: New file.
+ * Makefile (FSYSSRCS): Added fsys-syncfs.c.
+ * fsys-stubs.c (trivfs_S_fsys_mod_readonly): New function.
+
+ * Makefile (FSSRCS): Remove dir-pathtrans.c; add dir-lookup.c.
+ * dir-lookup.c: Renamed from dir-pathtrans.c
+ * dir-pathtrans.c (trivfs_S_dir_lookup): Renamed from
+ trivfs_S_dir_pathtrans.
+
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Use FS_RETRY_NORMAL
+ instead of FS_RETRY_NONE.
+ (trivfs_complete_open): Likewise.
+
+ * file-set-trans.c (trivfs_S_file_set_translator): Change to args
+ as for new file_set_translator procotol.
+
+Mon Aug 29 12:52:43 1994 Michael I Bushnell <mib@geech.gnu.ai.mit.edu>
+
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Use new
+ authentication protocol.
+
+Wed Aug 17 20:11:29 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+
+ * io-select.c (trivfs_S_io_select): Take poly arg for notify port.
+
+Thu Aug 11 11:58:48 1994 Michael I Bushnell <mib@geech.gnu.ai.mit.edu>
+
+ * io-version.c (trivfs_S_io_server_version): Fix typo in name.
+
+Fri Jul 22 12:41:55 1994 Michael I Bushnell <mib@geech.gnu.ai.mit.edu>
+
+ * fsys-goaway.c: Include fsys_S.h with " not with <>.
+ * handle-port.c: Include priv.h with " not with <>.
+
+ * Makefile: Converted to use new scheme.
+ * fsmutations.h (SERVERPREFIX): Deleted macro.
+ * fsys-getroot.c: Include "fsys_reply_U.h" instead of "fsys_reply.h".
+
+Wed Jul 20 15:59:36 1994 Michael I Bushnell <mib@geech.gnu.ai.mit.edu>
+
+ * file-inv.c: New file.
+ * Makefile (FSSRCS): Added file-inv.c.
+
+Tue Jul 19 19:23:33 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * fsys-stubs.c (trivfs_S_fsys_startup): Deleted dotdot args.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): New arg `dotdot';
+ don't do anything with it.
+
+Mon Jul 11 14:49:03 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * trivfs.h (trivfs_set_atime, trivfs_set_mtime): New functions.
+ * times.c: New file.
+ * Makefile (OTHERSRCS): Added `times.c'.
+
+Thu Jul 7 10:39:04 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * Makefile (DIST_FILES): Add priv.h.
+
+Tue Jul 5 13:24:59 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * Makefile (DIST_FILES): Added fsmutations.h.
+ (TAGSHDRS): New variable.
+
+ * fsys-getroot.c: Include "fsys_reply.h".
+ (trivfs_S_fsys_getroot, trivfs_complete_open):
+ Uncomment code now that we have reply ports.
+ (struct pending_open): Delete USERS_PORT, add CRED.
+ (trivfs_S_fsys_getroot): When creating PENDO, don't call
+ ports_get_right, call ports_port_ref; store CRED in PENDO.
+ (trivfs_complete_open): Deal with errors properly. When sending
+ port to user, call ports_get_right. Always call
+ ports_done_with_port when freeing pending open struct.
+ * Makefile (MIGSTUBS): Added fsys_replyUser.o.
+ (fsys_reply.h fsys_replyUser.c): New rule.
+ (fsys-getroot.c): Add dependency on fsys_reply.h.
+
+ * fsmutations.h (REPLY_PORTS): New macro, affecting io and fsys
+ interfaces.
+ * io-async-icky.c (trivfs_S_io_get_icky_async_id): Added new
+ REPLY and REPLYTYPE args.
+ * io-async.c (trivfs_S_io_async): Likewise.
+ * io-duplicate.c (trivfs_S_io_duplicate): Likewise.
+ * io-map.c (trivfs_S_io_map): Likewise.
+ * io-modes-get.c (trivfs_S_io_get_openmodes): Likewise.
+ * io-modes-off.c (trivfs_S_io_clear_some_openmodes): Likewise.
+ * io-modes-on.c (trivfs_S_io_set_some_openmodes): Likewise.
+ * io-modes-set.c (trivfs_S_io_set_all_openmodes): Likewise.
+ * io-owner-get.c (trivfs_S_io_get_owner): Likewise.
+ * io-owner-mod.c (trivfs_S_io_mod_owner): Likewise.
+ * io-read.c (trivfs_S_io_read): Likewise.
+ * io-readable.c (trivfs_S_io_readable): Likewise.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Likewise.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Likewise.
+ * io-seek.c (trivfs_S_io_seek): Likewise.
+ * io-select.c (trivfs_S_io_select): Likewise.
+ * io-stat.c (trivfs_S_io_stat): Likewise.
+ * io-stubs.c (trivfs_S_io_map_cntl): Likewise.
+ (trivfs_S_io_get_conch): Likewise.
+ (trivfs_S_io_release_conch): Likewise.
+ (trivfs_S_io_eofnotify): Likewise.
+ (trivfs_S_io_prenotify): Likewise.
+ (trivfs_S_io_postnotify): Likewise.
+ (trivfs_S_io_readsleep): Likewise.
+ (trivfs_S_io_sigio): Likewise.
+ (trivfs_S_io_readnotify): Likewise.
+ * io-write.c (trivfs_S_io_write): Likewise.
+ * io-version.c (trivfs_S_trivfs_io_server_version): Likewise.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Likewise.
+ * fsys-goaway.c (trivfs_S_fsys_goaway): Likewise.
+ * fsys-stubs.c (trivfs_S_fsys_startup): Likewise.
+ (trivfs_S_fsys_getpriv): Likewise.
+ (trivfs_S_fsys_init): Likewise.
+ (trivfs_S_fsys_getfile): Likewise.
+
+Wed Jun 29 13:02:17 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
+
+ * io-read.c (trivfs_S_io_read): Always return EOPNOTSUPP.
+ * io-write.c (trivfs_S_io_write): Likewise.
+ * file-truncate.c (trivfs_S_file_truncate): Likewise.
+ * io-readable.c (trivfs_S_io_readable): Likewise.
+ * io-select.c (trivfs_S_io_select): Likewise.
+
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Use trivfs_allow_open
+ instead of trivfs_support_* vars.
+
+ * trivfs.h (trivfs_allow_open): New variable.
+
+ * dir-pathtrans.c (trivfs_S_dir_pathtrans): Delete unused var
+ `newcred'.
+
+Mon Jun 27 15:05:06 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * fsys-getroot.c: Comment out code for blocking opens; don't
+ permit trivfs_check_open_hook to return EWOULDBLOCK.
+
+Thu Jun 23 12:28:49 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Don't call
+ ports_done_with_port for CNTL; the MiG destructor function does
+ that for us.
+
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Call trivfs_check_open_hook
+ to allow trivfs users to block or restrict opens.
+ * trivfs.h (trivfs_check_open_hook, trivfs_complete_open): New
+ declarations.
+ (struct trivfs_control): New members `openshead' and `openstail'.
+
+Wed Jun 22 14:49:00 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Initialize both hook
+ members to 0.
+ * io-duplicate.c (trivfs_S_io_duplicate): Copy NEWCRED->hook
+ from CRED->hook.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Likewise.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Likewise.
+
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Don't force read/write
+ systems to redefine this function. If O_foo is set, but
+ trivfs_support_foo isn't, then return EACCES. Call
+ io_restrict_auth at the front so we can check open permission
+ using the result. Initialise CRED->po->openmodes.
+
+ * trivfs.h (trivfs_peropen): New member `openmodes'.
+ * io-modes-get.c (trivfs_S_io_get_openmodes): Set bits from
+ CRED->po->openmodes, but only if we are not a read/write
+ server; otherwise the server might be hiding bits elsewhere.
+
+ * dir-pathtrans.c (trivfs_S_dir_pathtrans): Strip out code; always
+ return ENOTDIR.
+
+Tue Jun 21 13:21:07 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * file-access.c: New file.
+ * dir-chg.c: New file.
+ * file-chg.c: New file.
+ * Makefile (FSSRCS): Added file-access.c, dir-chg.c, and file-chg.c.
+
+Mon Jun 20 14:42:12 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * dir-readdir.c (trivfs_S_dir_readdir): Declare args in accord
+ with fs.defs interface change.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Likewise. Set
+ DO_RETRY and RETRY_NAME appropriately.
+ * file-get-transcntl.c (trivfs_S_file_get_translator_cntl):
+ CNTL_TYPE is a pointer.
+
+Fri Jun 17 11:23:47 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu)
+
+ * file-get-transcntl.c (trivfs_S_file_get_translator_cntl): Add
+ missing poly arg.
+
+Wed Jun 15 21:27:20 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
+
+ * dir-pathtrans.c: Include <string.h> for bcopy.
+ * fsys-getroot.c: Likewise.
+ * io-duplicate.c: Likewise.
+ * io-reauthenticate.c: Likewise.
+ * io-restrict-auth.c: Likewise.
+
+Wed Jun 15 16:58:02 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
+
+ * trivfs.h (trivfs_goaway): New args REALNODE, CNTLTYPE,
+ PROTIDTYPE. All callers changed.
+
+ * fsmutations.h (FSYS_DESTRUCTOR, FSYS_INTRAN): New macros.
+ * priv.h (trivfs_control_t): New type.
+ (_trivfs_begin_using_control, _trivfs_end_using_control): New
+ declarations.
+ * migsupport.c (_trivfs_begin_using_control,
+ _trivfs_end_using_control): New functions.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): First arg is now
+ `struct trivfs_control *'; don't call ports_check_port_type
+ ourselves or ports_done_with_port.
+ * fsys-goaway.c (trivfs_S_fsys_goaway): Likewise.
+ * fsys-stubs.c (trivfs_S_fsys_startup, trivfs_S_fsys_getpriv,
+ trivfs_S_fsys_init, trivfs_S_fsys_getfile): Declare first
+ arg as `struct trivfs_control *'.
+
+ * trivfs.h (trivfs_protid_porttype, trivfs_cntl_porttype):
+ Deleted vars.
+ (trivfs_protid_porttypes, trivfs_cntl_porttypes,
+ trivfs_protid_nporttypes, trivfs_cntl_nporttypes): New vars.
+ (trivfs_control): New member protidtypes.
+ (trivfs_handle_port): New args PROTIDTYPE and CNTLTYPE.
+ * migsupport.h (_trivfs_begin_using_protid): Check
+ against all the members of trivfs_protid_porttypes.
+ * dir-pathtrans.c (trivfs_S_dir_pathtrans): Copy type of new port
+ from existing port.
+ * io-duplicate.c (trivfs_S_io_duplicate): Likewise.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Likewise.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Likewise.
+ * handle-port.c (trivfs_handle_port): Allocate port of type
+ from new arg CNTLTYPE. Initialize CNTL->protidtypes from new arg
+ PROTIDTYPE.
+ * fsys-getroot (trivfs_S_fsys_getroot): Allocate port of type
+ from CNTL->protidtypes.
+
+ * trivfs.h (struct trivfs_protid) [hook]: New member.
+ (trivfs_protid_create_hook, trivfs_peropen_create_hook,
+ trivfs_protid_destroy_hook, trivfs_peropen_destroy_hook): New
+ hook functions.
+ * dir-pathtrans.c (trivfs_S_dir_pathtrans): Call
+ trivfs_peropen_create_hook.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Likewise.
+ * dir-pathtrans.c (trivfs_S_dir_pathtrans): Call
+ trivfs_protid_create_hook.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Likewise.
+ * io-duplicate.c (trivfs_S_io_duplicate): Likewise.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Likewise.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Likewise.
+ * protid-clean.c (trivfs_clean_protid): Call
+ trivfs_protid_destroy_hook and trivfs_peropen_destroy_hook.
+
+ * trivfs.h (struct trivfs_protid) [po]: New member.
+ (struct trivfs_protid) [cntl]: Deleted member.
+ (struct trivfs_peropen): New type.
+ * file-getcontrol.c (trivfs_S_file_getcontrol): Fetch control
+ port through peropen structure.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Likewise.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Likewise.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Reference
+ peropen, not cntl.
+ * io-restrict-auth.c (trivfs_S_io_restrict_auth): Likewise.
+ * io-duplicate.c (trivfs_S_io_duplicate): Likewise.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Create new peropen
+ and reference it.
+ * dir-pathtrans (trivfs_S_dir_pathtrans): Actually create new
+ peropen and cred.
+ * protid-clean.c (trivfs_clean_protid): Drop reference on peropen,
+ deallocating it if necessary.
+
+ * trivfs.h (struct trivfs_protid) [uids, gids, nuids, ngids]: New
+ members.
+ * io-reauthenticate.c (trivfs_S_io_reauthenticate): Save received
+ ids in newly created protid.
+ * io-restrict-auth.c (listmember): New function.
+ (trivfs_S_io_restrict_auth): Save uids and gids in newly created
+ protid.
+ * io-duplicate.c (trivfs_S_io_duplicate): Copy uids and gids.
+ * protid-clean.c (trivfs_clean_protid): Free CRED->uids and
+ CRED->gids.
+ * fsys-getroot.c (trivfs_S_fsys_getroot): Initialize uids
+ and gids.
+
+
+