FUSE list

Tag 2: the client lists a directory of the served subtree, by the path of the entry within the subtree, in the form the FUSE mount ask of the same tag has on a mount scope; the server answers with exactly one channel response, the entries, the absence of the directory, or an error, from the filesystem of the container.

The client opens this channel to perform on the served subtree what a program in a container performs on a FUSE mount: it is the last hop of the FUSE list channel of a container FUSE serve. The ask names the entry by its path within the subtree, and names no subtree: the scope is the subtree. It is, byte for byte, the ask of tag 2 the server opens on a mount scope, going the other way, and the server answers it from the filesystem of the container.

  • The request. The tag byte 2 followed by the ask. Request states its form.
  • The response. Exactly one channel response and the channel response finish. Response states the sequence.
  • The meaning. What the ask means, and what its answer means, FUSE list states for the mount; the same holds here, the filesystem of the container standing where the client’s storage stands there.
  • The filesystem answers. The server answers from the filesystem of the container as it is at the time of the answer, and changes the container as the ask asks before it answers ok. A symbolic link is the link itself, a file. The server buffers nothing on the client’s behalf.
  • Left out. Under /proc, /sys and /dev nothing is answered: a path there, or a path with a component . or .., is answered as nothing at the path.