FUSE write

Tag 12: the server relays an ask of the container’s proxy that writes a piece of a file of a mount in place the client serves live, by the mount’s id and the entry’s path; the client answers with exactly one channel response, which the server relays to the proxy.

The server opens this channel when a FUSE mount’s scope on the container’s proxy carries the ask that writes a piece of a file of a mount in place the client serves live. The ask is relayed with the mount’s id put in front of it — the mount’s scope is the mount, and its asks carry no id — and otherwise verbatim; the client’s one answer is relayed back.

  • The request. The tag byte 12 followed by the ask in the form the Container Proxy Endpoints layer defines for it, the mount’s id added. Request states its form.
  • The response. Exactly one channel response and the channel response finish. Response states the sequence.
  • The conduit. The server relays the one channel response onto the mount’s channel as one channel response and finishes it. The server does not read the ask or the answer, and does not send the ask twice.
  • Refusal is the client’s. A client that answers this ask with an error refuses the change, and the proxy reports the operation to the program as failed. A client whose volume is read only answers with the read-only byte, and the proxy reports the operation to the program as a read-only filesystem. The server relays the answer and decides nothing.
  • A file mount. For a mount of fuse_file_mounts, the path of the ask is empty.