总结
创建一个套接字。
声明
#include <zircon/syscalls.h>
zx_status_t zx_socket_create(uint32_t options,
zx_handle_t* out0,
zx_handle_t* out1);
说明
zx_socket_create()
会创建一个套接字,这是一对已连接的双向流传输,只能移动数据,并且具有最大容量。
写入一个句柄的数据可能会从相反方向读取。
options 必须设置 ZX_SOCKET_STREAM
或 ZX_SOCKET_DATAGRAM
标志。
权限
调用方作业政策必须允许 ZX_POL_NEW_SOCKET
。
返回值
zx_socket_create()
会在成功时返回 ZX_OK
。如果失败,将返回以下值之一。
错误
ZX_ERR_INVALID_ARGS
out0 或 out1 是无效的指针,NULL 或 options 是 ZX_SOCKET_STREAM
或 ZX_SOCKET_DATAGRAM
以外的任何值。
ZX_ERR_NO_MEMORY
由于内存不足而失败。
用户空间没有什么方法来处理此(不太可能)错误。在以后的 build 中,此错误不会再发生。
限制
目前无法设置最大容量。