class OpenForVerifiedRead
Defined at line 119 of file fidling/gen/sdk/fidl/fuchsia.hardware.block.verified/fuchsia.hardware.block.verified/cpp/fidl/fuchsia.hardware.block.verified/cpp/markers.h
Requests that the device verify that the provided `config` matches the
one on disk, and that the given `seal` covers the content of the
superblock. If all match as expected, then the device will bind a child
device named `verified` which speaks the `fuchsia.hardware.block`
protocol and enter the `verified-read` mode. Reads issued to the
`verified` block device will either successfully return the same content
as the `mutable` block device would have returned at the time the volume
was authored, or return a failure. That is to say: modifying the
underlying storage will cause the `verified` device to return read
failures for any modified blocks as `ZX_ERR_IO_DATA_INTEGRITY` rather
than data other than what was present at the time `CloseAndGenerateSeal`
was called.
* Returns `ZX_ERR_BAD_STATE` if the device was not in the `closed`
state at the time of the call
* Returns `ZX_ERR_INVALID_ARGS` if `config` lacks either `hash_function` or `block_size`
* Returns `ZX_ERR_INVALID_ARGS` if `seal` is of an unrecognized variant
* Returns `ZX_ERR_IO_DATA_INTEGRITY` if the `seal` provided is inconsistent with
the superblock, or if the properties in `config` are inconsistent with the
configuration data stored in the superblock on the underlying block device.
* Returns the underlying I/O error code if the underlying block device
returns an error.
On success, the device binds a child device `verified`, enters
`verified-read` mode, and returns from this call.
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