class DuplicateSync
Defined at line 963 of file fidling/gen/sdk/fidl/fuchsia.sysmem/fuchsia.sysmem/cpp/fidl/fuchsia.sysmem/cpp/markers.h
This method can be used to add more participants prior to creating a
shared BufferCollection. A new token will be returned for each entry in
the `rights_attenuation_masks` array. The return value is the client
ends of each new participant token.
If the calling token may not actually be a valid token at all due to
a potentially hostile/untrusted provider of the token, consider using
ValidateBufferCollectionToken() first instead of potentially getting
stuck indefinitely if DuplicateSync() never responds due to the calling
token not being a real token.
In contrast to Duplicate(), no Sync() (see "protocol Node") is needed
after calling this method.
All tokens must be turned in via BindSharedCollection() or Close() for a
BufferCollection to be successfully created.
In each entry of `rights_attenuation_masks`, rights bits that are zero
will be absent in the buffer VMO rights obtainable via the corresponding
returned token. This allows an initiator or intermediary participant to
attenuate the rights available to a participant. This does not allow a
participant to gain rights that the participant doesn't already have.
The value ZX_RIGHT_SAME_RIGHTS can be used to specify that no
attenuation should be applied.
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