Performs capability transfer with the specified list of access rights.
In this case, the capability holder (master
) will not be able to revoke the transferred capability from the recipient
. Only an entity that is a parent of the master
and recipient
in the capability derivation tree (CDT) will be able to revoke the capability.
The list of access rights is passed in the policy arguments.
Type: call
policy
Syntax
transfer <configuration> (in SID master,
in SID recipient,
in SID resource,
in Rights rights)
Parameters
|
Holder transferring the capability. |
|
Recipient of the capability. |
|
Resource SID associated with the capability. |
|
Mask of access rights. |
Policy configuration
<configuration> ::= "{" <type> "}"
<type> ::= "type" ":" <resource-type>
Configuration elements
|
Resource type assigned during initialization of the capability. It must match one of the types in the family instance configuration. |
Returned value
KSS_GRANT
in the following cases:
INVALID_HANDLE
is passed as the resource SID.KSS_DENY
in the following cases:
<type>
) does not match the type assigned during capability initialization.master
is not a capability holder for the specified resource.master
does not have all the specified access rights to the resource.master
does not have Transfer
permissions for the resource.master
is the resource driver and capability owner (in this case, only the derive
policy can be used).ocap
family instance configuration, at least one of the transferred access rights is missing.All specified restrictions apply only within the ocap
family instance.