Rights are associated with handles and convey privileges to perform actions on either the associated handle or the object associated with the handle.

The <zircon/rights.h> header defines default rights for each object type, which can be reduced via zx_handle_replace() or zx_handle_duplicate().

RightConferred Privileges
ZX_RIGHT_DUPLICATEAllows handle duplication via zx_handle_duplicate
ZX_RIGHT_TRANSFERAllows handle transfer via zx_channel_write
ZX_RIGHT_READAllows inspection of object state
Allows reading of data from containers (channels, sockets, VM objects, etc)
ZX_RIGHT_WRITEAllows modification of object state
Allows writing of data to containers (channels, sockets, VM objects, etc)
ZX_RIGHT_DEBUGPlaceholder for debugger use, pending audit of all rights usage

See also

Objects, Zircon Handles