Age | Commit message (Collapse) | Author |
|
|
|
Make /hurd/magic support translator delegation via /servers/magic.
* magic.c (struct magic): New structure.
(magic, directory, dirbuf, dirbufsize): Variables removed,
not members of struct magic.
(trivfs_modify_stat, magic_getroot, trivfs_S_dir_readdir): Use a
struct magic hanging off CNTL->hook rather than global variables.
(trivfs_append_args): Likewise.
(trivfs_S_dir_lookup): Likewise. Let magic string be null to indicate
prepending nothing in --directory mode.
(parse_opt): Use struct magic in STATE->input instead of globals.
If no argument, turn on --directory and leave M->magic null.
(argp): New static variable, instead of auto in main.
(main): Set both trivfs hook functions unconditionally.
Use a struct magic, pass it to argp_parse and store it in FSYS->hook.
Move directory buffer setup to ...
(parse_opt): ... here, do it on ARGP_KEY_SUCCESS.
(magic_open): Track users with a count.
(magic_protid_destroy): New function to track users.
(main): Set trivfs_protid_destroy_hook to that.
(trivfs_goaway): Call ports_destroy_right if FSYS has no users.
(all_fsys): New variable, list of all filesystems.
(trivfs_clean_cntl): New function, exit if no filesystems left.
(main): Put FSYS on that list. On timeout with no RPCs, try
trivfs_goaway on each filesystem on the list.
(trivfs_S_fsys_forward): New function.
(delegate): New variable.
(options): New option -U/--use-server to set it.
|
|
|
|
* pump.c: File removed.
|
|
* proxy-defpager.c (S_default_pager_object_pages): New function.
(proxy_defpager_demuxer): Use S_default_pager_server (ie add the
prefix).
|
|
* Makefile: Revert undocumented changes related to devpts that
were checked in unintentionally with the last change.
|
|
|
|
* proxy-defpager.c: Rename all the server functions with S_ prefix.
Include "default_pager_U.h" for client stub prototypes.
* Makefile (default_pager-MIGCOMSFLAGS): New variable, give -prefix S_.
(OBJS): Add default_pagerUser.o here.
(proxy-defpager): Depend on it.
|
|
* proxy-defpager.c (allowed): Check CRED, not PORT.
(default_pager_info): Use real_defpager, not DEFAULT_PAGER.
(proxy_defpager_demuxer): New demuxer.
(main): Use it.
|
|
|
|
* proxy-defpager.c: New file.
* Makefile (targets, SRCS): Add it.
(proxy-defpager): New target.
(OBJS): Add default_pagerServer.o here.
|
|
|
|
* streamio.c (parse_opt): Fix fencepost error in -n arg parsing.
Reported by Nicola Girardi <nicola@g-n-u.de>.
|
|
|
|
* firmlink.c (trivfs_S_io_read): Fix pointer arithmetic.
Reported by Nicola Girardi <nicola@g-n-u.de>.
|
|
|
|
* magic.c (trivfs_S_dir_readdir): u_int -> size_t
|
|
|
|
* new-fifo.c (trivfs_S_io_map): Add reply port args.
(trivfs_S_io_select): Remove bogus last arg.
|
|
* firmlink.c (trivfs_S_io_read): Fix type of DATA argument.
* streamio.c (trivfs_S_io_read): Likewise.
(trivfs_S_io_write): Likewise.
* hello.c (trivfs_S_io_read): Likewise.
* hello-mt.c (trivfs_S_io_read): Likewise.
* null.c (trivfs_S_io_read): Likewise.
(trivfs_S_io_write): Likewise.
(trivfs_S_file_set_size): Add reply port args.
* hello.c (trivfs_S_io_read): off_t -> loff_t
* hello-mt.c (trivfs_S_io_read): Likewise.
* streamio.c (trivfs_S_io_read, trivfs_S_io_write): Likewise.
(trivfs_S_file_sync): Add missing arg.
|
|
* firmlink.c (trivfs_S_io_read): Fix type of DATA argument.
* streamio.c (trivfs_S_io_read): Likewise.
(trivfs_S_io_write): Likewise.
* hello.c (trivfs_S_io_read): Likewise.
* hello-mt.c (trivfs_S_io_read): Likewise.
* null.c (trivfs_S_io_read): Likewise.
(trivfs_S_io_write): Likewise.
(trivfs_S_file_set_size): Add reply port args.
* firmlink.c (trivfs_S_io_read): off_t -> loff_t
(trivfs_S_io_select): Remove bogus last arg.
|
|
* fifo.c (trivfs_S_io_map): Add reply port args.
(trivfs_S_io_select): Remove bogus last arg.
|
|
* firmlink.c (trivfs_S_io_read): Fix type of DATA argument.
* streamio.c (trivfs_S_io_read): Likewise.
(trivfs_S_io_write): Likewise.
* hello.c (trivfs_S_io_read): Likewise.
* hello-mt.c (trivfs_S_io_read): Likewise.
* null.c (trivfs_S_io_read): Likewise.
(trivfs_S_io_write): Likewise.
(trivfs_S_file_set_size): Add reply port args.
* null.c (trivfs_S_io_map): Add reply port args.
(trivfs_S_io_read, trivfs_S_io_write): off_t -> loff_t
(trivfs_S_file_set_size): Likewise.
(trivfs_S_io_select): Remove bogus last arg.
|
|
|
|
* fakeroot.c (new_node): Use ino_t for io_identity argument.
(netfs_S_dir_lookup): Likewise.
|
|
|
|
* firmlink.c (trivfs_S_io_readable): Use intptr_t, not off_t.
(trivfs_S_io_read): Likewise.
|
|
|
|
* symlink.c (S_fsys_getroot, S_fsys_getfile): u_int -> size_t
* streamio.c (device_open_reply): size_t -> int for dev_status_t
* crash.c (S_msg_report_wait): int -> mach_msg_id_t
(S_crash_dump_task): int -> integer_t
|
|
|
|
* symlink.c (S_fsys_getroot, S_fsys_getfile): u_int -> size_t
|
|
|
|
* streamio.c (device_open_reply): size_t -> int for dev_status_t
* crash.c (S_msg_report_wait): int -> mach_msg_id_t
|
|
* magic.c (trivfs_S_dir_readdir): Increment I after comparing it
with ENTRY, to fix off-by-one error.
|
|
|
|
* fakeroot.c (netfs_report_access): Always report O_RDWR|O_EXEC.
|
|
* fakeroot.c (check_openmodes): Remove spurious if clause.
(netfs_attempt_mksymlink): Don't evaluate stat information to get
the length of the name, but use the string length of NAME and
store it in the new variable NAMELEN.
(netfs_S_dir_lookup): Don't always add O_NOLINK to FLAGS, but add
it to the mask instead.
|
|
|
|
* fakeroot.c (netfs_S_file_exec): Call check_openmodes and extract a
ref to the send right with the node locked.
|
|
|
|
* fakeroot.c (new_node): Get a reference on NP to return to the caller.
(netfs_attempt_mkfile): Unlock before new_node call.
(new_node): Take new arg LOCKED, says idport_ihash_lock already held.
(netfs_S_dir_lookup, netfs_attempt_mkfile, main): Update callers.
* fakeroot.c (fakeroot_auth_port): New variable.
(main): Initialize it.
(check_openmodes): New static function.
(netfs_check_open_permissions): Rewritten using it.
(netfs_S_dir_lookup): New function.
(netfs_attempt_lookup, netfs_attempt_create_file): Replaced with stubs.
|
|
|
|
* fakeroot.c (netfs_validate_stat): Set NP->nn_translated.
|
|
|
|
* fakeroot.c (netfs_S_file_exec): Don't lock the node (no need).
Don't use MACH_MSG_TYPE_MOVE_SEND.
|
|
|
|
* fakeroot.c (netfs_attempt_chmod): Handle a MODE argument with no
S_IFMT bits set.
|
|
2002-05-13 Marcus Brinkmann <marcus@gnu.org>
* io-version.c: New file.
* Makefile (IOSRCS): Add io-version.c.
* fsstubs.c (netfs_S_io_server_version): Function removed.
* netfs.h (netfs_server_name, netfs_server_version): New external
variables to be defined by the user.
ftpfs/
2002-05-13 Marcus Brinkmann <marcus@gnu.org>
* ftpfs.c (netfs_server_name, netfs_server_version): New
variables.
hostmux/
2002-05-13 Marcus Brinkmann <marcus@gnu.org>
* hostmux.c (netfs_server_name, netfs_server_version): New
variables.
nfs/
2002-05-13 Marcus Brinkmann <marcus@gnu.org>
* main.c: Include <version.h>.
(netfs_server_name, netfs_server_version, argp_program_version):
New variables.
trans/
2002-05-13 Marcus Brinkmann <marcus@gnu.org>
* fakeroot.c (netfs_server_name, netfs_server_version): New
variables.
usermux/
2002-05-13 Marcus Brinkmann <marcus@gnu.org>
* usermux.c (netfs_server_name, netfs_server_version): New
variables.
|
|
* symlink.c: Include <argp.h> and <version.h>.
(argp_program_version, options, args_doc, doc, argp): New
variables.
(parse_opt): New function.
(main): Replace argument count check and usage output by
argp_parse invocation.
|
|
* fakeroot.c (netfs_S_file_exec): New function.
(netfs_S_io_prenotify): Fix last change.
(netfs_S_io_postnotify): Likewise.
|