协议
BaseDatagramSocket
在 fuchsia.posix.socket/socket.fidl 中定义
所有数据报套接字共享的基本协议。
数据报套接字的完整实现应构成此协议。
AddIpMembership
设置 SOL_IP
-> IP_ADD_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpMembership_Result
|
AddIpv6Membership
设置 SOL_IPV6
-> IPV6_ADD_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpv6Membership_Result
|
装订
设置用于套接字的本地地址。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Bind_Result
|
Clone2
请求
名称 | 类型 |
---|---|
request |
server_end<fuchsia.unknown/Cloneable>
|
关闭
终止连接。
调用 Close
后,客户端不得发送任何其他请求。
服务器在发送状态响应后,无论处于何种状态,都应关闭连接,且不发送简介。
在语义上关闭渠道的客户端应等同于调用 Close
,而不知道关闭操作何时完成或其状态。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
fuchsia.unknown/Closeable_Close_Result
|
连接
启动与远程地址的连接。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Connect_Result
|
断开连接
清除此套接字中的连接信息。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Disconnect_Result
|
DropIpMembership
设置 SOL_IP
-> IP_DROP_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpMembership_Result
|
DropIpv6Membership
设置 SOL_IPV6
-> IPV6_DROP_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpv6Membership_Result
|
GetAcceptConn
获取 SOL_SOCKET
-> SO_ACCEPTCONN
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetAcceptConn_Result
|
GetBindToDevice
获取 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToDevice_Result
|
GetBindToInterfaceIndex
获取 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToInterfaceIndex_Result
|
GetBroadcast
获取 SOL_SOCKET
-> SO_BROADCAST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBroadcast_Result
|
GetError
获取 SOL_SOCKET
-> SO_ERROR
。
如果套接字设置了错误,则返回最后一个错误。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetError_Result
|
GetInfo
从套接字中检索创建信息。
- 响应
domain
套接字的关联域。 - 响应
proto
套接字的关联协议。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseDatagramSocket_GetInfo_Result
|
GetIpMulticastInterface
获取 SOL_IP
-> IP_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastInterface_Result
|
GetIpMulticastLoopback
获取 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastLoopback_Result
|
GetIpMulticastTtl
获取 SOL_IP
-> IP_MULTICAST_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastTtl_Result
|
GetIpPacketInfo
获取 SOL_IP
-> IP_PKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpPacketInfo_Result
|
GetIpReceiveOriginalDestinationAddress
获取 SOL_IP
-> IP_RECVORIGDSTADDR
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveOriginalDestinationAddress_Result
|
GetIpReceiveTtl
获取 SOL_IP
-> IP_RECVTTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTtl_Result
|
GetIpReceiveTypeOfService
获取 SOL_IP
-> IP_RECVTOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTypeOfService_Result
|
GetIpTransparent
获取 SOL_IP
-> IP_TRANSPARENT
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTransparent_Result
|
GetIpTtl
获取 SOL_IP
-> IP_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTtl_Result
|
GetIpTypeOfService
获取 SOL_IP
-> IP_TOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTypeOfService_Result
|
GetIpv6MulticastHops
获取 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastHops_Result
|
GetIpv6MulticastInterface
获取 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastInterface_Result
|
GetIpv6MulticastLoopback
获取 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastLoopback_Result
|
GetIpv6Only
获取 SOL_IPV6
-> IPV6_V6ONLY
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6Only_Result
|
GetIpv6ReceiveHopLimit
获取 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveHopLimit_Result
|
GetIpv6ReceivePacketInfo
获取 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceivePacketInfo_Result
|
GetIpv6ReceiveTrafficClass
获取 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveTrafficClass_Result
|
GetIpv6TrafficClass
获取 SOL_IPV6
-> IPV6_TCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6TrafficClass_Result
|
GetIpv6UnicastHops
获取 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6UnicastHops_Result
|
GetKeepAlive
获取 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetKeepAlive_Result
|
GetLinger
获取 SOL_SOCKET
-> SO_LINGER
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetLinger_Result
|
GetMark
例如获得 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,该 API 具有多个标记域,每个标记可以在每个域中独立检索。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetMark_Result
|
GetNoCheck
获取 SOL_SOCKET
-> SO_NO_CHECK
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetNoCheck_Result
|
GetOriginalDestination
获取 SOL_IP
-> SO_ORIGINAL_DST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetOriginalDestination_Result
|
GetOutOfBandInline
获取 SOL_SOCKET
-> SO_OOBINLINE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetOutOfBandInline_Result
|
GetPeerName
检索远程套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetPeerName_Result
|
GetReceiveBuffer
获取 SOL_SOCKET
-> SO_RCVBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReceiveBuffer_Result
|
GetReuseAddress
获取 SOL_SOCKET
-> SO_REUSEADDR
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReuseAddress_Result
|
GetReusePort
获取 SOL_SOCKET
-> SO_REUSEPORT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReusePort_Result
|
GetSendBuffer
获取 SOL_SOCKET
-> SO_SNDBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetSendBuffer_Result
|
GetSockName
检索本地套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetSockName_Result
|
GetTimestamp
获取 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetTimestamp_Result
|
查询
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
protocol |
vector<uint8>
|
SetBindToDevice
设置 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net.interfaces/Name
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToDevice_Result
|
SetBindToInterfaceIndex
设置 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
如果 value
为 0,则会清除绑定的接口。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToInterfaceIndex_Result
|
SetBroadcast
设置 SOL_SOCKET
-> SO_BROADCAST
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBroadcast_Result
|
SetIpMulticastInterface
设置 SOL_IP
-> IP_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
iface |
fuchsia.net/InterfaceId
|
address |
fuchsia.net/Ipv4Address
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastInterface_Result
|
SetIpMulticastLoopback
设置 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastLoopback_Result
|
SetIpMulticastTtl
设置 SOL_IP
-> IP_MULTICAST_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastTtl_Result
|
SetIpPacketInfo
设置 SOL_IP
-> IP_PKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpPacketInfo_Result
|
SetIpReceiveOriginalDestinationAddress
设置 SOL_IP
-> IP_RECVORIGDSTADDR
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveOriginalDestinationAddress_Result
|
SetIpReceiveTtl
设置 SOL_IP
-> IP_RECVTTL
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTtl_Result
|
SetIpReceiveTypeOfService
设置 SOL_IP
-> IP_RECVTOS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTypeOfService_Result
|
SetIpTransparent
设置 SOL_IP
-> IP_TRANSPARENT
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTransparent_Result
|
SetIpTtl
设置 SOL_IP
-> IP_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTtl_Result
|
SetIpTypeOfService
设置 SOL_IP
-> IP_TOS
。
请求
名称 | 类型 |
---|---|
value |
uint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTypeOfService_Result
|
SetIpv6MulticastHops
设置 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastHops_Result
|
SetIpv6MulticastInterface
设置 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastInterface_Result
|
SetIpv6MulticastLoopback
设置 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastLoopback_Result
|
SetIpv6Only
设置 SOL_IPV6
-> IPV6_V6ONLY
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6Only_Result
|
SetIpv6ReceiveHopLimit
设置 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveHopLimit_Result
|
SetIpv6ReceivePacketInfo
设置 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceivePacketInfo_Result
|
SetIpv6ReceiveTrafficClass
设置 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveTrafficClass_Result
|
SetIpv6TrafficClass
设置 SOL_IPV6
-> IPV6_TCLASS
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6TrafficClass_Result
|
SetIpv6UnicastHops
设置 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6UnicastHops_Result
|
SetKeepAlive
设置 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetKeepAlive_Result
|
SetLinger
设置 SOL_SOCKET
-> SO_LINGER
。
请求
名称 | 类型 |
---|---|
linger |
bool
|
length_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetLinger_Result
|
SetMark
例如,设置 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,此 API 具有多个标记域,每个标记可以在每个域内单独设置。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
mark |
OptionalUint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetMark_Result
|
SetNoCheck
设置 SOL_SOCKET
-> SO_NO_CHECK
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetNoCheck_Result
|
SetOutOfBandInline
设置 SOL_SOCKET
-> SO_OOBINLINE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetOutOfBandInline_Result
|
SetReceiveBuffer
设置 SOL_SOCKET
-> SO_RCVBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReceiveBuffer_Result
|
SetReuseAddress
设置 SOL_SOCKET
-> SO_REUSEADDR
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReuseAddress_Result
|
SetReusePort
设置 SOL_SOCKET
-> SO_REUSEPORT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReusePort_Result
|
SetSendBuffer
设置 SOL_SOCKET
-> SO_SNDBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetSendBuffer_Result
|
SetTimestamp
设置 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
名称 | 类型 |
---|---|
value |
TimestampOption
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetTimestamp_Result
|
关闭
关闭套接字的一部分。
请求
名称 | 类型 |
---|---|
mode |
ShutdownMode
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Shutdown_Result
|
BaseNetworkSocket
在 fuchsia.posix.socket/socket.fidl 中定义
网络套接字。
AddIpMembership
设置 SOL_IP
-> IP_ADD_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpMembership_Result
|
AddIpv6Membership
设置 SOL_IPV6
-> IPV6_ADD_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpv6Membership_Result
|
装订
设置用于套接字的本地地址。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Bind_Result
|
Clone2
请求
名称 | 类型 |
---|---|
request |
server_end<fuchsia.unknown/Cloneable>
|
关闭
终止连接。
调用 Close
后,客户端不得发送任何其他请求。
服务器在发送状态响应后,无论处于何种状态,都应关闭连接,且不发送简介。
在语义上关闭渠道的客户端应等同于调用 Close
,而不知道关闭操作何时完成或其状态。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
fuchsia.unknown/Closeable_Close_Result
|
连接
启动与远程地址的连接。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Connect_Result
|
断开连接
清除此套接字中的连接信息。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Disconnect_Result
|
DropIpMembership
设置 SOL_IP
-> IP_DROP_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpMembership_Result
|
DropIpv6Membership
设置 SOL_IPV6
-> IPV6_DROP_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpv6Membership_Result
|
GetAcceptConn
获取 SOL_SOCKET
-> SO_ACCEPTCONN
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetAcceptConn_Result
|
GetBindToDevice
获取 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToDevice_Result
|
GetBindToInterfaceIndex
获取 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToInterfaceIndex_Result
|
GetBroadcast
获取 SOL_SOCKET
-> SO_BROADCAST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBroadcast_Result
|
GetError
获取 SOL_SOCKET
-> SO_ERROR
。
如果套接字设置了错误,则返回最后一个错误。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetError_Result
|
GetIpMulticastInterface
获取 SOL_IP
-> IP_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastInterface_Result
|
GetIpMulticastLoopback
获取 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastLoopback_Result
|
GetIpMulticastTtl
获取 SOL_IP
-> IP_MULTICAST_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastTtl_Result
|
GetIpPacketInfo
获取 SOL_IP
-> IP_PKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpPacketInfo_Result
|
GetIpReceiveOriginalDestinationAddress
获取 SOL_IP
-> IP_RECVORIGDSTADDR
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveOriginalDestinationAddress_Result
|
GetIpReceiveTtl
获取 SOL_IP
-> IP_RECVTTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTtl_Result
|
GetIpReceiveTypeOfService
获取 SOL_IP
-> IP_RECVTOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTypeOfService_Result
|
GetIpTransparent
获取 SOL_IP
-> IP_TRANSPARENT
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTransparent_Result
|
GetIpTtl
获取 SOL_IP
-> IP_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTtl_Result
|
GetIpTypeOfService
获取 SOL_IP
-> IP_TOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTypeOfService_Result
|
GetIpv6MulticastHops
获取 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastHops_Result
|
GetIpv6MulticastInterface
获取 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastInterface_Result
|
GetIpv6MulticastLoopback
获取 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastLoopback_Result
|
GetIpv6Only
获取 SOL_IPV6
-> IPV6_V6ONLY
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6Only_Result
|
GetIpv6ReceiveHopLimit
获取 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveHopLimit_Result
|
GetIpv6ReceivePacketInfo
获取 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceivePacketInfo_Result
|
GetIpv6ReceiveTrafficClass
获取 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveTrafficClass_Result
|
GetIpv6TrafficClass
获取 SOL_IPV6
-> IPV6_TCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6TrafficClass_Result
|
GetIpv6UnicastHops
获取 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6UnicastHops_Result
|
GetKeepAlive
获取 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetKeepAlive_Result
|
GetLinger
获取 SOL_SOCKET
-> SO_LINGER
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetLinger_Result
|
GetMark
例如获得 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,该 API 具有多个标记域,每个标记可以在每个域中独立检索。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetMark_Result
|
GetNoCheck
获取 SOL_SOCKET
-> SO_NO_CHECK
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetNoCheck_Result
|
GetOriginalDestination
获取 SOL_IP
-> SO_ORIGINAL_DST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetOriginalDestination_Result
|
GetOutOfBandInline
获取 SOL_SOCKET
-> SO_OOBINLINE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetOutOfBandInline_Result
|
GetPeerName
检索远程套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetPeerName_Result
|
GetReceiveBuffer
获取 SOL_SOCKET
-> SO_RCVBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReceiveBuffer_Result
|
GetReuseAddress
获取 SOL_SOCKET
-> SO_REUSEADDR
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReuseAddress_Result
|
GetReusePort
获取 SOL_SOCKET
-> SO_REUSEPORT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReusePort_Result
|
GetSendBuffer
获取 SOL_SOCKET
-> SO_SNDBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetSendBuffer_Result
|
GetSockName
检索本地套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetSockName_Result
|
GetTimestamp
获取 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetTimestamp_Result
|
查询
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
protocol |
vector<uint8>
|
SetBindToDevice
设置 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net.interfaces/Name
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToDevice_Result
|
SetBindToInterfaceIndex
设置 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
如果 value
为 0,则会清除绑定的接口。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToInterfaceIndex_Result
|
SetBroadcast
设置 SOL_SOCKET
-> SO_BROADCAST
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBroadcast_Result
|
SetIpMulticastInterface
设置 SOL_IP
-> IP_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
iface |
fuchsia.net/InterfaceId
|
address |
fuchsia.net/Ipv4Address
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastInterface_Result
|
SetIpMulticastLoopback
设置 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastLoopback_Result
|
SetIpMulticastTtl
设置 SOL_IP
-> IP_MULTICAST_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastTtl_Result
|
SetIpPacketInfo
设置 SOL_IP
-> IP_PKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpPacketInfo_Result
|
SetIpReceiveOriginalDestinationAddress
设置 SOL_IP
-> IP_RECVORIGDSTADDR
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveOriginalDestinationAddress_Result
|
SetIpReceiveTtl
设置 SOL_IP
-> IP_RECVTTL
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTtl_Result
|
SetIpReceiveTypeOfService
设置 SOL_IP
-> IP_RECVTOS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTypeOfService_Result
|
SetIpTransparent
设置 SOL_IP
-> IP_TRANSPARENT
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTransparent_Result
|
SetIpTtl
设置 SOL_IP
-> IP_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTtl_Result
|
SetIpTypeOfService
设置 SOL_IP
-> IP_TOS
。
请求
名称 | 类型 |
---|---|
value |
uint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTypeOfService_Result
|
SetIpv6MulticastHops
设置 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastHops_Result
|
SetIpv6MulticastInterface
设置 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastInterface_Result
|
SetIpv6MulticastLoopback
设置 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastLoopback_Result
|
SetIpv6Only
设置 SOL_IPV6
-> IPV6_V6ONLY
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6Only_Result
|
SetIpv6ReceiveHopLimit
设置 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveHopLimit_Result
|
SetIpv6ReceivePacketInfo
设置 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceivePacketInfo_Result
|
SetIpv6ReceiveTrafficClass
设置 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveTrafficClass_Result
|
SetIpv6TrafficClass
设置 SOL_IPV6
-> IPV6_TCLASS
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6TrafficClass_Result
|
SetIpv6UnicastHops
设置 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6UnicastHops_Result
|
SetKeepAlive
设置 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetKeepAlive_Result
|
SetLinger
设置 SOL_SOCKET
-> SO_LINGER
。
请求
名称 | 类型 |
---|---|
linger |
bool
|
length_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetLinger_Result
|
SetMark
例如,设置 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,此 API 具有多个标记域,每个标记可以在每个域内单独设置。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
mark |
OptionalUint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetMark_Result
|
SetNoCheck
设置 SOL_SOCKET
-> SO_NO_CHECK
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetNoCheck_Result
|
SetOutOfBandInline
设置 SOL_SOCKET
-> SO_OOBINLINE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetOutOfBandInline_Result
|
SetReceiveBuffer
设置 SOL_SOCKET
-> SO_RCVBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReceiveBuffer_Result
|
SetReuseAddress
设置 SOL_SOCKET
-> SO_REUSEADDR
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReuseAddress_Result
|
SetReusePort
设置 SOL_SOCKET
-> SO_REUSEPORT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReusePort_Result
|
SetSendBuffer
设置 SOL_SOCKET
-> SO_SNDBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetSendBuffer_Result
|
SetTimestamp
设置 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
名称 | 类型 |
---|---|
value |
TimestampOption
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetTimestamp_Result
|
关闭
关闭套接字的一部分。
请求
名称 | 类型 |
---|---|
mode |
ShutdownMode
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Shutdown_Result
|
BaseSocket
在 fuchsia.posix.socket/socket.fidl 中定义
套接字。
Clone2
请求
名称 | 类型 |
---|---|
request |
server_end<fuchsia.unknown/Cloneable>
|
关闭
终止连接。
调用 Close
后,客户端不得发送任何其他请求。
服务器在发送状态响应后,无论处于何种状态,都应关闭连接,且不发送简介。
在语义上关闭渠道的客户端应等同于调用 Close
,而不知道关闭操作何时完成或其状态。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
fuchsia.unknown/Closeable_Close_Result
|
GetAcceptConn
获取 SOL_SOCKET
-> SO_ACCEPTCONN
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetAcceptConn_Result
|
GetBindToDevice
获取 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToDevice_Result
|
GetBindToInterfaceIndex
获取 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToInterfaceIndex_Result
|
GetBroadcast
获取 SOL_SOCKET
-> SO_BROADCAST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBroadcast_Result
|
GetError
获取 SOL_SOCKET
-> SO_ERROR
。
如果套接字设置了错误,则返回最后一个错误。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetError_Result
|
GetKeepAlive
获取 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetKeepAlive_Result
|
GetLinger
获取 SOL_SOCKET
-> SO_LINGER
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetLinger_Result
|
GetMark
例如获得 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,该 API 具有多个标记域,每个标记可以在每个域中独立检索。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetMark_Result
|
GetNoCheck
获取 SOL_SOCKET
-> SO_NO_CHECK
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetNoCheck_Result
|
GetOutOfBandInline
获取 SOL_SOCKET
-> SO_OOBINLINE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetOutOfBandInline_Result
|
GetReceiveBuffer
获取 SOL_SOCKET
-> SO_RCVBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReceiveBuffer_Result
|
GetReuseAddress
获取 SOL_SOCKET
-> SO_REUSEADDR
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReuseAddress_Result
|
GetReusePort
获取 SOL_SOCKET
-> SO_REUSEPORT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReusePort_Result
|
GetSendBuffer
获取 SOL_SOCKET
-> SO_SNDBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetSendBuffer_Result
|
GetTimestamp
获取 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetTimestamp_Result
|
查询
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
protocol |
vector<uint8>
|
SetBindToDevice
设置 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net.interfaces/Name
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToDevice_Result
|
SetBindToInterfaceIndex
设置 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
如果 value
为 0,则会清除绑定的接口。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToInterfaceIndex_Result
|
SetBroadcast
设置 SOL_SOCKET
-> SO_BROADCAST
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBroadcast_Result
|
SetKeepAlive
设置 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetKeepAlive_Result
|
SetLinger
设置 SOL_SOCKET
-> SO_LINGER
。
请求
名称 | 类型 |
---|---|
linger |
bool
|
length_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetLinger_Result
|
SetMark
例如,设置 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,此 API 具有多个标记域,每个标记可以在每个域内单独设置。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
mark |
OptionalUint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetMark_Result
|
SetNoCheck
设置 SOL_SOCKET
-> SO_NO_CHECK
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetNoCheck_Result
|
SetOutOfBandInline
设置 SOL_SOCKET
-> SO_OOBINLINE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetOutOfBandInline_Result
|
SetReceiveBuffer
设置 SOL_SOCKET
-> SO_RCVBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReceiveBuffer_Result
|
SetReuseAddress
设置 SOL_SOCKET
-> SO_REUSEADDR
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReuseAddress_Result
|
SetReusePort
设置 SOL_SOCKET
-> SO_REUSEPORT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReusePort_Result
|
SetSendBuffer
设置 SOL_SOCKET
-> SO_SNDBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetSendBuffer_Result
|
SetTimestamp
设置 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
名称 | 类型 |
---|---|
value |
TimestampOption
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetTimestamp_Result
|
DatagramSocket
在 fuchsia.posix.socket/socket.fidl 中定义
数据报套接字。
AddIpMembership
设置 SOL_IP
-> IP_ADD_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpMembership_Result
|
AddIpv6Membership
设置 SOL_IPV6
-> IPV6_ADD_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpv6Membership_Result
|
装订
设置用于套接字的本地地址。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Bind_Result
|
Clone2
请求
名称 | 类型 |
---|---|
request |
server_end<fuchsia.unknown/Cloneable>
|
关闭
终止连接。
调用 Close
后,客户端不得发送任何其他请求。
服务器在发送状态响应后,无论处于何种状态,都应关闭连接,且不发送简介。
在语义上关闭渠道的客户端应等同于调用 Close
,而不知道关闭操作何时完成或其状态。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
fuchsia.unknown/Closeable_Close_Result
|
连接
启动与远程地址的连接。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Connect_Result
|
描述
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
DatagramSocketDescribeResponse
|
断开连接
清除此套接字中的连接信息。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Disconnect_Result
|
DropIpMembership
设置 SOL_IP
-> IP_DROP_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpMembership_Result
|
DropIpv6Membership
设置 SOL_IPV6
-> IPV6_DROP_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpv6Membership_Result
|
GetAcceptConn
获取 SOL_SOCKET
-> SO_ACCEPTCONN
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetAcceptConn_Result
|
GetBindToDevice
获取 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToDevice_Result
|
GetBindToInterfaceIndex
获取 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToInterfaceIndex_Result
|
GetBroadcast
获取 SOL_SOCKET
-> SO_BROADCAST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBroadcast_Result
|
GetError
获取 SOL_SOCKET
-> SO_ERROR
。
如果套接字设置了错误,则返回最后一个错误。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetError_Result
|
GetInfo
从套接字中检索创建信息。
- 响应
domain
套接字的关联域。 - 响应
proto
套接字的关联协议。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseDatagramSocket_GetInfo_Result
|
GetIpMulticastInterface
获取 SOL_IP
-> IP_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastInterface_Result
|
GetIpMulticastLoopback
获取 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastLoopback_Result
|
GetIpMulticastTtl
获取 SOL_IP
-> IP_MULTICAST_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastTtl_Result
|
GetIpPacketInfo
获取 SOL_IP
-> IP_PKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpPacketInfo_Result
|
GetIpReceiveOriginalDestinationAddress
获取 SOL_IP
-> IP_RECVORIGDSTADDR
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveOriginalDestinationAddress_Result
|
GetIpReceiveTtl
获取 SOL_IP
-> IP_RECVTTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTtl_Result
|
GetIpReceiveTypeOfService
获取 SOL_IP
-> IP_RECVTOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTypeOfService_Result
|
GetIpTransparent
获取 SOL_IP
-> IP_TRANSPARENT
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTransparent_Result
|
GetIpTtl
获取 SOL_IP
-> IP_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTtl_Result
|
GetIpTypeOfService
获取 SOL_IP
-> IP_TOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTypeOfService_Result
|
GetIpv6MulticastHops
获取 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastHops_Result
|
GetIpv6MulticastInterface
获取 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastInterface_Result
|
GetIpv6MulticastLoopback
获取 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastLoopback_Result
|
GetIpv6Only
获取 SOL_IPV6
-> IPV6_V6ONLY
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6Only_Result
|
GetIpv6ReceiveHopLimit
获取 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveHopLimit_Result
|
GetIpv6ReceivePacketInfo
获取 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceivePacketInfo_Result
|
GetIpv6ReceiveTrafficClass
获取 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveTrafficClass_Result
|
GetIpv6TrafficClass
获取 SOL_IPV6
-> IPV6_TCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6TrafficClass_Result
|
GetIpv6UnicastHops
获取 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6UnicastHops_Result
|
GetKeepAlive
获取 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetKeepAlive_Result
|
GetLinger
获取 SOL_SOCKET
-> SO_LINGER
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetLinger_Result
|
GetMark
例如获得 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,该 API 具有多个标记域,每个标记可以在每个域中独立检索。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetMark_Result
|
GetNoCheck
获取 SOL_SOCKET
-> SO_NO_CHECK
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetNoCheck_Result
|
GetOriginalDestination
获取 SOL_IP
-> SO_ORIGINAL_DST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetOriginalDestination_Result
|
GetOutOfBandInline
获取 SOL_SOCKET
-> SO_OOBINLINE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetOutOfBandInline_Result
|
GetPeerName
检索远程套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetPeerName_Result
|
GetReceiveBuffer
获取 SOL_SOCKET
-> SO_RCVBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReceiveBuffer_Result
|
GetReuseAddress
获取 SOL_SOCKET
-> SO_REUSEADDR
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReuseAddress_Result
|
GetReusePort
获取 SOL_SOCKET
-> SO_REUSEPORT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReusePort_Result
|
GetSendBuffer
获取 SOL_SOCKET
-> SO_SNDBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetSendBuffer_Result
|
GetSockName
检索本地套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetSockName_Result
|
GetTimestamp
获取 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetTimestamp_Result
|
查询
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
protocol |
vector<uint8>
|
RecvMsgPostflight
返回一组请求的控制消息。
- 响应当前请求的控制消息集。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
DatagramSocket_RecvMsgPostflight_Result
|
SendMsgPreflight
验证数据可以发送。
- 向
args
请求对要发送的数据的处置。
- 发送的数据必须满足的约束条件响应。
- error 错误代码,指明验证失败的原因。
请求
名称 | 类型 |
---|---|
payload |
DatagramSocketSendMsgPreflightRequest
|
响应
名称 | 类型 |
---|---|
payload |
DatagramSocket_SendMsgPreflight_Result
|
SetBindToDevice
设置 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net.interfaces/Name
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToDevice_Result
|
SetBindToInterfaceIndex
设置 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
如果 value
为 0,则会清除绑定的接口。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToInterfaceIndex_Result
|
SetBroadcast
设置 SOL_SOCKET
-> SO_BROADCAST
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBroadcast_Result
|
SetIpMulticastInterface
设置 SOL_IP
-> IP_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
iface |
fuchsia.net/InterfaceId
|
address |
fuchsia.net/Ipv4Address
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastInterface_Result
|
SetIpMulticastLoopback
设置 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastLoopback_Result
|
SetIpMulticastTtl
设置 SOL_IP
-> IP_MULTICAST_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastTtl_Result
|
SetIpPacketInfo
设置 SOL_IP
-> IP_PKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpPacketInfo_Result
|
SetIpReceiveOriginalDestinationAddress
设置 SOL_IP
-> IP_RECVORIGDSTADDR
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveOriginalDestinationAddress_Result
|
SetIpReceiveTtl
设置 SOL_IP
-> IP_RECVTTL
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTtl_Result
|
SetIpReceiveTypeOfService
设置 SOL_IP
-> IP_RECVTOS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTypeOfService_Result
|
SetIpTransparent
设置 SOL_IP
-> IP_TRANSPARENT
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTransparent_Result
|
SetIpTtl
设置 SOL_IP
-> IP_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTtl_Result
|
SetIpTypeOfService
设置 SOL_IP
-> IP_TOS
。
请求
名称 | 类型 |
---|---|
value |
uint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTypeOfService_Result
|
SetIpv6MulticastHops
设置 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastHops_Result
|
SetIpv6MulticastInterface
设置 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastInterface_Result
|
SetIpv6MulticastLoopback
设置 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastLoopback_Result
|
SetIpv6Only
设置 SOL_IPV6
-> IPV6_V6ONLY
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6Only_Result
|
SetIpv6ReceiveHopLimit
设置 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveHopLimit_Result
|
SetIpv6ReceivePacketInfo
设置 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceivePacketInfo_Result
|
SetIpv6ReceiveTrafficClass
设置 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveTrafficClass_Result
|
SetIpv6TrafficClass
设置 SOL_IPV6
-> IPV6_TCLASS
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6TrafficClass_Result
|
SetIpv6UnicastHops
设置 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6UnicastHops_Result
|
SetKeepAlive
设置 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetKeepAlive_Result
|
SetLinger
设置 SOL_SOCKET
-> SO_LINGER
。
请求
名称 | 类型 |
---|---|
linger |
bool
|
length_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetLinger_Result
|
SetMark
例如,设置 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,此 API 具有多个标记域,每个标记可以在每个域内单独设置。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
mark |
OptionalUint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetMark_Result
|
SetNoCheck
设置 SOL_SOCKET
-> SO_NO_CHECK
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetNoCheck_Result
|
SetOutOfBandInline
设置 SOL_SOCKET
-> SO_OOBINLINE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetOutOfBandInline_Result
|
SetReceiveBuffer
设置 SOL_SOCKET
-> SO_RCVBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReceiveBuffer_Result
|
SetReuseAddress
设置 SOL_SOCKET
-> SO_REUSEADDR
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReuseAddress_Result
|
SetReusePort
设置 SOL_SOCKET
-> SO_REUSEPORT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReusePort_Result
|
SetSendBuffer
设置 SOL_SOCKET
-> SO_SNDBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetSendBuffer_Result
|
SetTimestamp
设置 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
名称 | 类型 |
---|---|
value |
TimestampOption
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetTimestamp_Result
|
关闭
关闭套接字的一部分。
请求
名称 | 类型 |
---|---|
mode |
ShutdownMode
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Shutdown_Result
|
提供商
在 fuchsia.posix.socket/socket.fidl 中定义
Provider 实现了 POSIX 套接字 API。
警告:此协议尚未准备好供客户端直接使用。客户端应使用 BSD 套接字 API 与套接字进行交互。 我们计划大幅更改此协议,直接耦合至此协议的客户端将使这些更改更加困难。
DatagramSocket
使用指定参数请求数据报套接字。
请求
名称 | 类型 |
---|---|
domain |
Domain
|
proto |
DatagramSocketProtocol
|
响应
名称 | 类型 |
---|---|
payload |
Provider_DatagramSocket_Result
|
DatagramSocketDeprecated
使用指定参数请求数据报套接字。 TODO(https://fxbug.dev/42165881):如果不再有调用者依赖此方法,请将其移除。
请求
名称 | 类型 |
---|---|
domain |
Domain
|
proto |
DatagramSocketProtocol
|
响应
名称 | 类型 |
---|---|
payload |
Provider_DatagramSocketDeprecated_Result
|
GetInterfaceAddresses
请求 fuchsia.posix.socket.InterfaceAddresses 列表,用于描述系统上的网络接口。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
interfaces |
vector<InterfaceAddresses>
|
InterfaceIndexToName
按索引查找接口并返回名称。如果指定索引不存在,则返回 ZX_ERR_NOT_FOUND
。
请求
名称 | 类型 |
---|---|
index |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
Provider_InterfaceIndexToName_Result
|
InterfaceNameToFlags
按名称查找接口并返回其标志。如果指定的名称不存在,则返回 ZX_ERR_NOT_FOUND
。
请求
名称 | 类型 |
---|---|
name |
fuchsia.net.interfaces/Name
|
响应
名称 | 类型 |
---|---|
payload |
Provider_InterfaceNameToFlags_Result
|
InterfaceNameToIndex
按名称查找接口并返回其索引。如果指定的名称不存在,则返回 ZX_ERR_NOT_FOUND
。
请求
名称 | 类型 |
---|---|
name |
fuchsia.net.interfaces/Name
|
响应
名称 | 类型 |
---|---|
payload |
Provider_InterfaceNameToIndex_Result
|
StreamSocket
使用指定参数请求流套接字。
请求
名称 | 类型 |
---|---|
domain |
Domain
|
proto |
StreamSocketProtocol
|
响应
名称 | 类型 |
---|---|
payload |
Provider_StreamSocket_Result
|
StreamSocket
在 fuchsia.posix.socket/socket.fidl 中定义
流套接字。
此类型的所有方法都是非阻塞方法;其确切行为与对应的 Linux 方法一致。
警告:此协议尚未准备好供客户端直接使用。客户端应使用 BSD 套接字 API 与套接字进行交互。 我们计划大幅更改此协议,直接耦合至此协议的客户端将使这些更改更加困难。
接受
接受已缓冲的传入连接。
请求
名称 | 类型 |
---|---|
want_addr |
bool
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_Accept_Result
|
AddIpMembership
设置 SOL_IP
-> IP_ADD_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpMembership_Result
|
AddIpv6Membership
设置 SOL_IPV6
-> IPV6_ADD_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpv6Membership_Result
|
装订
设置用于套接字的本地地址。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Bind_Result
|
Clone2
请求
名称 | 类型 |
---|---|
request |
server_end<fuchsia.unknown/Cloneable>
|
关闭
终止连接。
调用 Close
后,客户端不得发送任何其他请求。
服务器在发送状态响应后,无论处于何种状态,都应关闭连接,且不发送简介。
在语义上关闭渠道的客户端应等同于调用 Close
,而不知道关闭操作何时完成或其状态。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
fuchsia.unknown/Closeable_Close_Result
|
连接
启动与远程地址的连接。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Connect_Result
|
描述
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocketDescribeResponse
|
断开连接
清除此套接字中的连接信息。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Disconnect_Result
|
DropIpMembership
设置 SOL_IP
-> IP_DROP_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpMembership_Result
|
DropIpv6Membership
设置 SOL_IPV6
-> IPV6_DROP_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpv6Membership_Result
|
GetAcceptConn
获取 SOL_SOCKET
-> SO_ACCEPTCONN
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetAcceptConn_Result
|
GetBindToDevice
获取 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToDevice_Result
|
GetBindToInterfaceIndex
获取 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToInterfaceIndex_Result
|
GetBroadcast
获取 SOL_SOCKET
-> SO_BROADCAST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBroadcast_Result
|
GetError
获取 SOL_SOCKET
-> SO_ERROR
。
如果套接字设置了错误,则返回最后一个错误。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetError_Result
|
GetInfo
从套接字中检索创建信息。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetInfo_Result
|
GetIpMulticastInterface
获取 SOL_IP
-> IP_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastInterface_Result
|
GetIpMulticastLoopback
获取 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastLoopback_Result
|
GetIpMulticastTtl
获取 SOL_IP
-> IP_MULTICAST_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastTtl_Result
|
GetIpPacketInfo
获取 SOL_IP
-> IP_PKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpPacketInfo_Result
|
GetIpReceiveOriginalDestinationAddress
获取 SOL_IP
-> IP_RECVORIGDSTADDR
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveOriginalDestinationAddress_Result
|
GetIpReceiveTtl
获取 SOL_IP
-> IP_RECVTTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTtl_Result
|
GetIpReceiveTypeOfService
获取 SOL_IP
-> IP_RECVTOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTypeOfService_Result
|
GetIpTransparent
获取 SOL_IP
-> IP_TRANSPARENT
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTransparent_Result
|
GetIpTtl
获取 SOL_IP
-> IP_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTtl_Result
|
GetIpTypeOfService
获取 SOL_IP
-> IP_TOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTypeOfService_Result
|
GetIpv6MulticastHops
获取 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastHops_Result
|
GetIpv6MulticastInterface
获取 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastInterface_Result
|
GetIpv6MulticastLoopback
获取 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastLoopback_Result
|
GetIpv6Only
获取 SOL_IPV6
-> IPV6_V6ONLY
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6Only_Result
|
GetIpv6ReceiveHopLimit
获取 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveHopLimit_Result
|
GetIpv6ReceivePacketInfo
获取 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceivePacketInfo_Result
|
GetIpv6ReceiveTrafficClass
获取 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveTrafficClass_Result
|
GetIpv6TrafficClass
获取 SOL_IPV6
-> IPV6_TCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6TrafficClass_Result
|
GetIpv6UnicastHops
获取 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6UnicastHops_Result
|
GetKeepAlive
获取 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetKeepAlive_Result
|
GetLinger
获取 SOL_SOCKET
-> SO_LINGER
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetLinger_Result
|
GetMark
例如获得 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,该 API 具有多个标记域,每个标记可以在每个域中独立检索。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetMark_Result
|
GetNoCheck
获取 SOL_SOCKET
-> SO_NO_CHECK
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetNoCheck_Result
|
GetOriginalDestination
获取 SOL_IP
-> SO_ORIGINAL_DST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetOriginalDestination_Result
|
GetOutOfBandInline
获取 SOL_SOCKET
-> SO_OOBINLINE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetOutOfBandInline_Result
|
GetPeerName
检索远程套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetPeerName_Result
|
GetReceiveBuffer
获取 SOL_SOCKET
-> SO_RCVBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReceiveBuffer_Result
|
GetReuseAddress
获取 SOL_SOCKET
-> SO_REUSEADDR
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReuseAddress_Result
|
GetReusePort
获取 SOL_SOCKET
-> SO_REUSEPORT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReusePort_Result
|
GetSendBuffer
获取 SOL_SOCKET
-> SO_SNDBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetSendBuffer_Result
|
GetSockName
检索本地套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetSockName_Result
|
GetTcpCongestion
获取 SOL_TCP
-> TCP_CONGESTION
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpCongestion_Result
|
GetTcpCork
获取 SOL_TCP
-> TCP_CORK
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpCork_Result
|
GetTcpDeferAccept
获取 SOL_TCP
-> TCP_DEFER_ACCEPT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpDeferAccept_Result
|
GetTcpInfo
获取 SOL_TCP
-> TCP_INFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpInfo_Result
|
GetTcpKeepAliveCount
获取 SOL_TCP
-> TCP_KEEPCNT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpKeepAliveCount_Result
|
GetTcpKeepAliveIdle
获取 SOL_TCP
-> TCP_KEEPIDLE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpKeepAliveIdle_Result
|
GetTcpKeepAliveInterval
获取 SOL_TCP
-> TCP_KEEPINTVL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpKeepAliveInterval_Result
|
GetTcpLinger
获取 SOL_TCP
-> TCP_LINGER2
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpLinger_Result
|
GetTcpMaxSegment
获取 SOL_TCP
-> TCP_MAXSEG
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpMaxSegment_Result
|
GetTcpNoDelay
获取 SOL_TCP
-> TCP_NODELAY
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpNoDelay_Result
|
GetTcpQuickAck
获取 SOL_TCP
-> TCP_QUICKACK
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpQuickAck_Result
|
GetTcpSynCount
获取 SOL_TCP
-> TCP_SYNCNT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpSynCount_Result
|
GetTcpUserTimeout
获取 SOL_TCP
-> TCP_USER_TIMEOUT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpUserTimeout_Result
|
GetTcpWindowClamp
获取 SOL_TCP
-> TCP_WINDOW_CLAMP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_GetTcpWindowClamp_Result
|
GetTimestamp
获取 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetTimestamp_Result
|
聆听
开始监听新的传入连接。最多会缓冲 backlog
个连接。
请求
名称 | 类型 |
---|---|
backlog |
int16
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_Listen_Result
|
查询
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
protocol |
vector<uint8>
|
SetBindToDevice
设置 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net.interfaces/Name
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToDevice_Result
|
SetBindToInterfaceIndex
设置 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
如果 value
为 0,则会清除绑定的接口。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToInterfaceIndex_Result
|
SetBroadcast
设置 SOL_SOCKET
-> SO_BROADCAST
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBroadcast_Result
|
SetIpMulticastInterface
设置 SOL_IP
-> IP_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
iface |
fuchsia.net/InterfaceId
|
address |
fuchsia.net/Ipv4Address
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastInterface_Result
|
SetIpMulticastLoopback
设置 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastLoopback_Result
|
SetIpMulticastTtl
设置 SOL_IP
-> IP_MULTICAST_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastTtl_Result
|
SetIpPacketInfo
设置 SOL_IP
-> IP_PKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpPacketInfo_Result
|
SetIpReceiveOriginalDestinationAddress
设置 SOL_IP
-> IP_RECVORIGDSTADDR
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveOriginalDestinationAddress_Result
|
SetIpReceiveTtl
设置 SOL_IP
-> IP_RECVTTL
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTtl_Result
|
SetIpReceiveTypeOfService
设置 SOL_IP
-> IP_RECVTOS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTypeOfService_Result
|
SetIpTransparent
设置 SOL_IP
-> IP_TRANSPARENT
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTransparent_Result
|
SetIpTtl
设置 SOL_IP
-> IP_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTtl_Result
|
SetIpTypeOfService
设置 SOL_IP
-> IP_TOS
。
请求
名称 | 类型 |
---|---|
value |
uint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTypeOfService_Result
|
SetIpv6MulticastHops
设置 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastHops_Result
|
SetIpv6MulticastInterface
设置 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastInterface_Result
|
SetIpv6MulticastLoopback
设置 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastLoopback_Result
|
SetIpv6Only
设置 SOL_IPV6
-> IPV6_V6ONLY
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6Only_Result
|
SetIpv6ReceiveHopLimit
设置 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveHopLimit_Result
|
SetIpv6ReceivePacketInfo
设置 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceivePacketInfo_Result
|
SetIpv6ReceiveTrafficClass
设置 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveTrafficClass_Result
|
SetIpv6TrafficClass
设置 SOL_IPV6
-> IPV6_TCLASS
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6TrafficClass_Result
|
SetIpv6UnicastHops
设置 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6UnicastHops_Result
|
SetKeepAlive
设置 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetKeepAlive_Result
|
SetLinger
设置 SOL_SOCKET
-> SO_LINGER
。
请求
名称 | 类型 |
---|---|
linger |
bool
|
length_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetLinger_Result
|
SetMark
例如,设置 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,此 API 具有多个标记域,每个标记可以在每个域内单独设置。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
mark |
OptionalUint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetMark_Result
|
SetNoCheck
设置 SOL_SOCKET
-> SO_NO_CHECK
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetNoCheck_Result
|
SetOutOfBandInline
设置 SOL_SOCKET
-> SO_OOBINLINE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetOutOfBandInline_Result
|
SetReceiveBuffer
设置 SOL_SOCKET
-> SO_RCVBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReceiveBuffer_Result
|
SetReuseAddress
设置 SOL_SOCKET
-> SO_REUSEADDR
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReuseAddress_Result
|
SetReusePort
设置 SOL_SOCKET
-> SO_REUSEPORT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReusePort_Result
|
SetSendBuffer
设置 SOL_SOCKET
-> SO_SNDBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetSendBuffer_Result
|
SetTcpCongestion
设置 SOL_TCP
-> TCP_CONGESTION
。
请求
名称 | 类型 |
---|---|
value |
TcpCongestionControl
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpCongestion_Result
|
SetTcpCork
设置 SOL_TCP
-> TCP_CORK
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpCork_Result
|
SetTcpDeferAccept
设置 SOL_TCP
-> TCP_DEFER_ACCEPT
。
请求
名称 | 类型 |
---|---|
value_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpDeferAccept_Result
|
SetTcpKeepAliveCount
设置 SOL_TCP
-> TCP_KEEPCNT
。
请求
名称 | 类型 |
---|---|
value |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpKeepAliveCount_Result
|
SetTcpKeepAliveIdle
设置 SOL_TCP
-> TCP_KEEPIDLE
。
请求
名称 | 类型 |
---|---|
value_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpKeepAliveIdle_Result
|
SetTcpKeepAliveInterval
设置 SOL_TCP
-> TCP_KEEPINTVL
。
请求
名称 | 类型 |
---|---|
value_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpKeepAliveInterval_Result
|
SetTcpLinger
设置 SOL_TCP
-> TCP_LINGER2
。
请求
名称 | 类型 |
---|---|
value_secs |
OptionalUint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpLinger_Result
|
SetTcpMaxSegment
设置 SOL_TCP
-> TCP_MAXSEG
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpMaxSegment_Result
|
SetTcpNoDelay
设置 SOL_TCP
-> TCP_NODELAY
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpNoDelay_Result
|
SetTcpQuickAck
设置 SOL_TCP
-> TCP_QUICKACK
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpQuickAck_Result
|
SetTcpSynCount
设置 SOL_TCP
-> TCP_SYNCNT
。
请求
名称 | 类型 |
---|---|
value |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpSynCount_Result
|
SetTcpUserTimeout
设置 SOL_TCP
-> TCP_USER_TIMEOUT
。
请求
名称 | 类型 |
---|---|
value_millis |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpUserTimeout_Result
|
SetTcpWindowClamp
设置 SOL_TCP
-> TCP_WINDOW_CLAMP
。
请求
名称 | 类型 |
---|---|
value |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
StreamSocket_SetTcpWindowClamp_Result
|
SetTimestamp
设置 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
名称 | 类型 |
---|---|
value |
TimestampOption
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetTimestamp_Result
|
关闭
关闭套接字的一部分。
请求
名称 | 类型 |
---|---|
mode |
ShutdownMode
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Shutdown_Result
|
SynchronousDatagramSocket
在 fuchsia.posix.socket/socket.fidl 中定义
同步数据报套接字。
此协议定义了通过通道发送和接收数据报载荷的同步方法。所有方法都是非阻塞方法;其行为与对应的 Linux 方法大致一致。
警告:此协议尚未准备好供客户端直接使用。客户端应使用 BSD 套接字 API 与套接字进行交互。 我们计划大幅更改此协议,直接耦合至此协议的客户端将使这些更改更加困难。
AddIpMembership
设置 SOL_IP
-> IP_ADD_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpMembership_Result
|
AddIpv6Membership
设置 SOL_IPV6
-> IPV6_ADD_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_AddIpv6Membership_Result
|
装订
设置用于套接字的本地地址。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Bind_Result
|
Clone2
请求
名称 | 类型 |
---|---|
request |
server_end<fuchsia.unknown/Cloneable>
|
关闭
终止连接。
调用 Close
后,客户端不得发送任何其他请求。
服务器在发送状态响应后,无论处于何种状态,都应关闭连接,且不发送简介。
在语义上关闭渠道的客户端应等同于调用 Close
,而不知道关闭操作何时完成或其状态。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
fuchsia.unknown/Closeable_Close_Result
|
连接
启动与远程地址的连接。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Connect_Result
|
描述
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
SynchronousDatagramSocketDescribeResponse
|
断开连接
清除此套接字中的连接信息。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Disconnect_Result
|
DropIpMembership
设置 SOL_IP
-> IP_DROP_MEMBERSHIP
请求
名称 | 类型 |
---|---|
membership |
IpMulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpMembership_Result
|
DropIpv6Membership
设置 SOL_IPV6
-> IPV6_DROP_MEMBERSHIP
。
请求
名称 | 类型 |
---|---|
membership |
Ipv6MulticastMembership
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_DropIpv6Membership_Result
|
GetAcceptConn
获取 SOL_SOCKET
-> SO_ACCEPTCONN
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetAcceptConn_Result
|
GetBindToDevice
获取 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToDevice_Result
|
GetBindToInterfaceIndex
获取 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBindToInterfaceIndex_Result
|
GetBroadcast
获取 SOL_SOCKET
-> SO_BROADCAST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetBroadcast_Result
|
GetError
获取 SOL_SOCKET
-> SO_ERROR
。
如果套接字设置了错误,则返回最后一个错误。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetError_Result
|
GetInfo
从套接字中检索创建信息。
- 响应
domain
套接字的关联域。 - 响应
proto
套接字的关联协议。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseDatagramSocket_GetInfo_Result
|
GetIpMulticastInterface
获取 SOL_IP
-> IP_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastInterface_Result
|
GetIpMulticastLoopback
获取 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastLoopback_Result
|
GetIpMulticastTtl
获取 SOL_IP
-> IP_MULTICAST_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpMulticastTtl_Result
|
GetIpPacketInfo
获取 SOL_IP
-> IP_PKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpPacketInfo_Result
|
GetIpReceiveOriginalDestinationAddress
获取 SOL_IP
-> IP_RECVORIGDSTADDR
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveOriginalDestinationAddress_Result
|
GetIpReceiveTtl
获取 SOL_IP
-> IP_RECVTTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTtl_Result
|
GetIpReceiveTypeOfService
获取 SOL_IP
-> IP_RECVTOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpReceiveTypeOfService_Result
|
GetIpTransparent
获取 SOL_IP
-> IP_TRANSPARENT
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTransparent_Result
|
GetIpTtl
获取 SOL_IP
-> IP_TTL
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTtl_Result
|
GetIpTypeOfService
获取 SOL_IP
-> IP_TOS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpTypeOfService_Result
|
GetIpv6MulticastHops
获取 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastHops_Result
|
GetIpv6MulticastInterface
获取 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastInterface_Result
|
GetIpv6MulticastLoopback
获取 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6MulticastLoopback_Result
|
GetIpv6Only
获取 SOL_IPV6
-> IPV6_V6ONLY
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6Only_Result
|
GetIpv6ReceiveHopLimit
获取 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveHopLimit_Result
|
GetIpv6ReceivePacketInfo
获取 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceivePacketInfo_Result
|
GetIpv6ReceiveTrafficClass
获取 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6ReceiveTrafficClass_Result
|
GetIpv6TrafficClass
获取 SOL_IPV6
-> IPV6_TCLASS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6TrafficClass_Result
|
GetIpv6UnicastHops
获取 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetIpv6UnicastHops_Result
|
GetKeepAlive
获取 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetKeepAlive_Result
|
GetLinger
获取 SOL_SOCKET
-> SO_LINGER
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetLinger_Result
|
GetMark
例如获得 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,该 API 具有多个标记域,每个标记可以在每个域中独立检索。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetMark_Result
|
GetNoCheck
获取 SOL_SOCKET
-> SO_NO_CHECK
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetNoCheck_Result
|
GetOriginalDestination
获取 SOL_IP
-> SO_ORIGINAL_DST
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetOriginalDestination_Result
|
GetOutOfBandInline
获取 SOL_SOCKET
-> SO_OOBINLINE
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetOutOfBandInline_Result
|
GetPeerName
检索远程套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetPeerName_Result
|
GetReceiveBuffer
获取 SOL_SOCKET
-> SO_RCVBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReceiveBuffer_Result
|
GetReuseAddress
获取 SOL_SOCKET
-> SO_REUSEADDR
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReuseAddress_Result
|
GetReusePort
获取 SOL_SOCKET
-> SO_REUSEPORT
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetReusePort_Result
|
GetSendBuffer
获取 SOL_SOCKET
-> SO_SNDBUF
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetSendBuffer_Result
|
GetSockName
检索本地套接字地址。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_GetSockName_Result
|
GetTimestamp
获取 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_GetTimestamp_Result
|
查询
请求
<EMPTY>
响应
名称 | 类型 |
---|---|
protocol |
vector<uint8>
|
RecvMsg
从套接字接收消息。
- 请求返回
want_addr
请求消息的源地址信息。 - 请求
data_len
是响应数据缓冲区允许的最大长度。 - 请求
want_control
请求返回的辅助数据。 - 为接收请求请求
flags
标志。
- 响应
addr
消息的来源地址信息(如果请求)。 - 响应
data
消息。 - 响应
control
控制消息(如果已请求)。 - 响应
truncated
指示返回的消息是否被截断。
请求
名称 | 类型 |
---|---|
want_addr |
bool
|
data_len |
uint32
|
want_control |
bool
|
flags |
RecvMsgFlags
|
响应
名称 | 类型 |
---|---|
payload |
SynchronousDatagramSocket_RecvMsg_Result
|
SendMsg
在套接字上发送消息。
- 请求
addr
发送消息的目标地址。如果未设置,则将消息发送到连接的对等设备。 - 请求
data
消息。 - 请求
control
辅助数据。 - 用于发送请求的请求
flags
标志。
- 响应
len
表示发送的字节数。
请求
名称 | 类型 |
---|---|
addr |
fuchsia.net/SocketAddress?
|
data |
vector<uint8>
|
control |
DatagramSocketSendControlData
|
flags |
SendMsgFlags
|
响应
名称 | 类型 |
---|---|
payload |
SynchronousDatagramSocket_SendMsg_Result
|
SetBindToDevice
设置 SOL_SOCKET
-> SO_BINDTODEVICE
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net.interfaces/Name
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToDevice_Result
|
SetBindToInterfaceIndex
设置 SOL_SOCKET
-> SO_BINDTOIFINDEX
。
如果 value
为 0,则会清除绑定的接口。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBindToInterfaceIndex_Result
|
SetBroadcast
设置 SOL_SOCKET
-> SO_BROADCAST
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetBroadcast_Result
|
SetIpMulticastInterface
设置 SOL_IP
-> IP_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
iface |
fuchsia.net/InterfaceId
|
address |
fuchsia.net/Ipv4Address
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastInterface_Result
|
SetIpMulticastLoopback
设置 SOL_IP
-> IP_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastLoopback_Result
|
SetIpMulticastTtl
设置 SOL_IP
-> IP_MULTICAST_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpMulticastTtl_Result
|
SetIpPacketInfo
设置 SOL_IP
-> IP_PKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpPacketInfo_Result
|
SetIpReceiveOriginalDestinationAddress
设置 SOL_IP
-> IP_RECVORIGDSTADDR
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveOriginalDestinationAddress_Result
|
SetIpReceiveTtl
设置 SOL_IP
-> IP_RECVTTL
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTtl_Result
|
SetIpReceiveTypeOfService
设置 SOL_IP
-> IP_RECVTOS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpReceiveTypeOfService_Result
|
SetIpTransparent
设置 SOL_IP
-> IP_TRANSPARENT
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTransparent_Result
|
SetIpTtl
设置 SOL_IP
-> IP_TTL
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTtl_Result
|
SetIpTypeOfService
设置 SOL_IP
-> IP_TOS
。
请求
名称 | 类型 |
---|---|
value |
uint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpTypeOfService_Result
|
SetIpv6MulticastHops
设置 SOL_IPV6
-> IPV6_MULTICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastHops_Result
|
SetIpv6MulticastInterface
设置 SOL_IPV6
-> IPV6_MULTICAST_IF
。
请求
名称 | 类型 |
---|---|
value |
fuchsia.net/InterfaceId
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastInterface_Result
|
SetIpv6MulticastLoopback
设置 SOL_IPV6
-> IPV6_MULTICAST_LOOP
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6MulticastLoopback_Result
|
SetIpv6Only
设置 SOL_IPV6
-> IPV6_V6ONLY
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6Only_Result
|
SetIpv6ReceiveHopLimit
设置 SOL_IPV6
-> IPV6_RECVHOPLIMIT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveHopLimit_Result
|
SetIpv6ReceivePacketInfo
设置 SOL_IPV6
-> IPV6_RECVPKTINFO
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceivePacketInfo_Result
|
SetIpv6ReceiveTrafficClass
设置 SOL_IPV6
-> IPV6_RECVTCLASS
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6ReceiveTrafficClass_Result
|
SetIpv6TrafficClass
设置 SOL_IPV6
-> IPV6_TCLASS
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6TrafficClass_Result
|
SetIpv6UnicastHops
设置 SOL_IPV6
-> IPV6_UNICAST_HOPS
。
请求
名称 | 类型 |
---|---|
value |
OptionalUint8
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_SetIpv6UnicastHops_Result
|
SetKeepAlive
设置 SOL_SOCKET
-> SO_KEEPALIVE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetKeepAlive_Result
|
SetLinger
设置 SOL_SOCKET
-> SO_LINGER
。
请求
名称 | 类型 |
---|---|
linger |
bool
|
length_secs |
uint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetLinger_Result
|
SetMark
例如,设置 SOL_SOCKET
-> SO_MARK
。主要区别在于,与标准 SO_MARK 不同,此 API 具有多个标记域,每个标记可以在每个域内单独设置。
请求
名称 | 类型 |
---|---|
domain |
MarkDomain
|
mark |
OptionalUint32
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetMark_Result
|
SetNoCheck
设置 SOL_SOCKET
-> SO_NO_CHECK
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetNoCheck_Result
|
SetOutOfBandInline
设置 SOL_SOCKET
-> SO_OOBINLINE
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetOutOfBandInline_Result
|
SetReceiveBuffer
设置 SOL_SOCKET
-> SO_RCVBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReceiveBuffer_Result
|
SetReuseAddress
设置 SOL_SOCKET
-> SO_REUSEADDR
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReuseAddress_Result
|
SetReusePort
设置 SOL_SOCKET
-> SO_REUSEPORT
。
请求
名称 | 类型 |
---|---|
value |
bool
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetReusePort_Result
|
SetSendBuffer
设置 SOL_SOCKET
-> SO_SNDBUF
。
请求
名称 | 类型 |
---|---|
value_bytes |
uint64
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetSendBuffer_Result
|
SetTimestamp
设置 SOL_SOCKET
-> SO_TIMESTAMP
或 SO_TIMESTAMPNS
。
请求
名称 | 类型 |
---|---|
value |
TimestampOption
|
响应
名称 | 类型 |
---|---|
payload |
BaseSocket_SetTimestamp_Result
|
关闭
关闭套接字的一部分。
请求
名称 | 类型 |
---|---|
mode |
ShutdownMode
|
响应
名称 | 类型 |
---|---|
payload |
BaseNetworkSocket_Shutdown_Result
|
结构
BaseDatagramSocket_GetInfo_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
domain |
Domain
|
无默认取景方式 | |
proto |
DatagramSocketProtocol
|
无默认取景方式 |
BaseNetworkSocket_AddIpMembership_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_AddIpv6Membership_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_Bind_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_Connect_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_Disconnect_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_DropIpMembership_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_DropIpv6Membership_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_GetIpMulticastInterface_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
fuchsia.net/Ipv4Address
|
无默认取景方式 |
BaseNetworkSocket_GetIpMulticastLoopback_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpMulticastTtl_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint8
|
无默认取景方式 |
BaseNetworkSocket_GetIpPacketInfo_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpReceiveOriginalDestinationAddress_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpReceiveTtl_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpReceiveTypeOfService_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpTransparent_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpTtl_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint8
|
无默认取景方式 |
BaseNetworkSocket_GetIpTypeOfService_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint8
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6MulticastHops_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint8
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6MulticastInterface_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
fuchsia.net/InterfaceId
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6MulticastLoopback_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6Only_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6ReceiveHopLimit_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6ReceivePacketInfo_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6ReceiveTrafficClass_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6TrafficClass_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint8
|
无默认取景方式 |
BaseNetworkSocket_GetIpv6UnicastHops_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint8
|
无默认取景方式 |
BaseNetworkSocket_GetOriginalDestination_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
fuchsia.net/SocketAddress
|
无默认取景方式 |
BaseNetworkSocket_GetPeerName_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
addr |
fuchsia.net/SocketAddress
|
无默认取景方式 |
BaseNetworkSocket_GetSockName_Response
在 fuchsia.posix.socket/socket.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
addr |
fuchsia.net/SocketAddress
|
无默认取景方式 |
BaseNetworkSocket_SetIpMulticastInterface_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_SetIpMulticastLoopback_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>
BaseNetworkSocket_SetIpMulticastTtl_Response
在 fuchsia.posix.socket/socket.fidl 中定义
<EMPTY>