## Summary

Creates a shared region that can be used with multiple IOBuffer objects.

## Declaration

    #include <zircon/syscalls-next.h>

    zx_status_t zx_iob_create_shared_region(uint64_t options,
                                            uint64_t size,
                                            zx_handle_t* out);

## Description

Creates a shared region that can be used with multiple IOBuffer objects.

`options` must be zero. `size` must be a multiple of the page size.

## Return value

On success, `ZX_OK` is returned and `out` will be populated with a new handle.

## Errors

`ZX_ERR_ACCESS_DENIED` The proess does not have permissions to create shared IOBuffer
regions.

`ZX_ERR_INVALID_ARGS` `options` was nonzero (there are no non-default options supported at
this time), or `size` was zero or not a multiple of the page size.

`ZX_ERR_OUT_OF_RANGE` Requested size is too large.

`ZX_ERR_NO_MEMORY` Failure due to lack of memory to allocate the shared region.