class AddSecureHeapPhysicalRange

Defined at line 2686 of file fidling/gen/sdk/fidl/fuchsia.sysmem2/fuchsia.sysmem2/cpp/fidl/fuchsia.sysmem2/cpp/markers.h

This request from sysmem to the securemem driver conveys a physical

range to add, for a heap whose physical range(s) are set up via

sysmem.

Only sysmem can call this because only sysmem is handed the client end

of a FIDL channel serving this protocol, via RegisterSecureMem(). The

securemem driver is the server end of this protocol.

The securemem driver must configure all the covered offsets as protected

before responding to this message with success.

On failure, the securemem driver must ensure the protected range was not

created.

Sysmem must only call this up to once if dynamic_protection_ranges

false.

If dynamic_protection_ranges is true, sysmem can call this multiple

times as long as the current number of ranges never exceeds

max_protected_range_count.

The caller must not attempt to add a range that matches an

already-existing range. Added ranges can overlap each other as long as

no two ranges match exactly.

Errors:

* PROTOCOL_DEVIATION - called more than once when

!dynamic_protection_ranges. Adding a heap that would cause overall

heap count to exceed max_protected_range_count. Unexpected heap, or

range that doesn't conform to protected_range_granularity. See log.

* UNSPECIFIED - generic internal error (such as in communication

with TEE which doesn't generate zx_status_t errors).

* other errors are possible, such as from communication failures or

server propagation of failures.

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