class OpenSessionWithOptions

Defined at line 316 of file fidling/gen/sdk/fidl/fuchsia.storage.block/fuchsia.storage.block/cpp/fidl/fuchsia.storage.block/cpp/markers.h

Opens a new FIFO-based session on the block device, with additional options.

# Mappings

The `mappings` argument is a list of logical -> physical block mappings, which the server

will transparently apply to device offsets in block FIFO requests within this session.

The mappings are logically contiguous starting from logical offset 0.

This interface is intended to be used internally between nested Block implementations, in

order to provide passthrough I/O. For example, a fixed partition map (e.g. GPT) will serve

a Block protocol for each partition, and will respond to OpenSession requests by calling

OpenSessionWithOptions on the underlying block device, providing mappings which translate

block offsets which are relative to (and bounded by) the partition to absolute offsets on

the device.

Mappings can only ever restrict the visible range of a device; servers will reject mappings

which exceed the range of the device.

If `mappings` is empty, the session channel will be closed with epitaph

`ZX_ERR_INVALID_ARGS`.

Public Members

static const bool kHasClientToServer
static const bool kHasClientToServerBody
static const bool kHasServerToClient
static const bool kHasServerToClientBody
static const bool kHasNonEmptyUserFacingResponse
static const bool kHasDomainError
static const bool kHasFrameworkError
static const uint64_t kOrdinal