On 6/21/07, Neal H. Walfield <[EMAIL PROTECTED]> wrote:
At Thu, 21 Jun 2007 15:37:49 +0800, > Could you please give some explanation on "PFINETSERVER=fd:3 myprog > 3</path/to/pfinet"? What does "myprog 3<" mean, the naming closure? From the bash manual: 3.6.1 Redirecting Input Redirection of input causes the file whose name results from the expansion of word to be opened for reading on file descriptor n, or the standard input (file descriptor 0) if n is not specified.
Ok, I got it. I will consider to support the file descriptor reprentation, but will not implement complex semantics as redirection first.
(1) Assume a chroot process invokes "settrans -cp /foo /hurd/firmlink /". > > (2) The fs server will associate node /*foo* (/chroot/foo) with translator * > firmlink*. Since the fs server knows the quest is from a chroot process, > it can save a chroot attribute "/chroot" (it is a string representation of > the chroot path, but not a handle or other expressions of capability), in > addition to the translator command "/hurd/firmlink /". The translator does not necessarily know a symbolic representation for the capability passed to file_reparent.
I can not understand. Sorry for keeping bothering you :-), but I expect to make it clear. Representation for which capability do you mean? The file node, parent, or target? Two ports (*node*, *parent*) and a string path (*target*_*name*) are passed to *firmlink*, and port *parent* and *target* are passed to* file_reparent*. I proposed two solutions in last mail. In solution a), the translator is started chrooted. So the file node, parent, and target are respectively: /foo, /, and / in its eyes; and /chroot/foo, /chroot, and /chroot in reality. I am not sure if this translator can still serve non-chrooted processes. Even if it can not, I do not think this is a problem, so long as it can work in the chroot domain. In solution b), the translator is started as usual, but it will find a chroot argument is passed to it, so it should initiatively check the target path argument, and add /chroot in front of / to be /chroot/. Since the translator acts in the normal way, I think it should not be unable to understand the symbolic representation. Wei
_______________________________________________ Bug-hurd mailing list Bug-hurd@gnu.org http://lists.gnu.org/mailman/listinfo/bug-hurd