# 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.

Canonical: https://protocol.diverge.network/2.3.0/container-proxy-endpoints/filesystem-fuse-serve/client/list/
Specification revision: 2.3.0

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](/2.3.0/endpoints/containers-fuse-serve/client/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](/2.3.0/container-proxy-endpoints/fuse-mount/), 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](/2.3.0/container-proxy-endpoints/filesystem-fuse-serve/client/list/request/) states its form.
- **The response.** Exactly one channel response and the channel
  response finish. [Response](/2.3.0/container-proxy-endpoints/filesystem-fuse-serve/client/list/response/) states the
  sequence.
- **The meaning.** What the ask means, and what its answer means,
  [FUSE list](/2.3.0/container-proxy-endpoints/fuse-mount/server/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.
