Module fuse_backend_rs::transport

source ·
Expand description

FUSE/Virtiofs transport drivers to receive requests from/send reply to Fuse/Virtiofs clients.

Originally a FUSE server communicates with the FUSE driver through the device /dev/fuse, and the communication protocol is called as FUSE protocol. Later the FUSE protocol is extended to support Virtio-fs device. So there are two transport layers supported:

  • fusedev: communicate with the FUSE driver through /dev/fuse
  • virtiofs: communicate with the virtiofsd on host side by using virtio descriptors.

Structs§

  • A buffer reference wrapper for fuse requests.
  • A fuse channel abstraction.
  • Writer to send FUSE reply to the FUSE driver.
  • A fuse session manager to manage the connection with the in kernel fuse driver.
  • Reader to access FUSE requests from the transport layer data buffers.

Enums§

  • Transport layer specific error codes.
  • Writer to send reply message to ’/dev/fuse` or virtiofs queue.

Traits§

  • Fake trait to simplify implementation when vhost-user-fs is not used.

Functions§

  • Safe wrapper for sysconf(_SC_PAGESIZE).

Type Aliases§