Rian Hunter <[EMAIL PROTECTED]> writes: > I'm writing a Hurd server that uses its own custom interface (ie does > not implement io_write, io_read rpcs etc). Is this correct? Should all > Hurd servers be required to handle the standard Hurd rpcs since the > nameserver for ports is basically the filesystem? I tried a test client > and server program but the client froze upon execution (at the > file_name_lookup call) and ls would freeze too in the folder where the > active translator was located. I figured this is because ls (or > file_name_lookup()) is calling some io_ call or fsys_ rpc that my server > doesn't implement and it gets stuck waiting forever.
If you want to be part of the filesystem, you must implement the fsys_* calls. You must also implement the file_* and io_* calls for the node you are inserting into the filesystem. The trivfs library exists to do all this for you so that you don't have to think about it. > Also, for Mach IPC, is a nameserver of some sort is always necessary? Depends on the value of "of some sort". In the Hurd, the filesystem serves as a nameserver. > Would a mach_port_t value of 59 mean the same actual port for two > different running programs? (i'm guessing no) No. Mach port IDs are task-specific exactly the same way Unix file descriptors. Thomas _______________________________________________ Bug-hurd mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-hurd