Google is committed to advancing racial equity for Black communities. See how.

fuchsia.posix.socket

PROTOCOLS

BaseSocket

Defined in fuchsia.posix.socket/socket.fidl

A network socket.

Once a socket has been retrieved from a Provider, this interface is then used to further configure and use the socket. This interface is essentially POSIX. Its implementation must support Linux-specific arguments to {Get,Set}SockOpt.

All methods on this type are nonblocking; their exact behaviors match their Linux counterparts.

Warning: This protocol is not yet ready for direct use by clients. Instead, clients should use the BSD sockets API to interact with sockets. We plan to change this protocol substantially and clients that couple directly to this protocol will make those changes more difficult.

AddIpMembership

Set SOL_IP -> IP_ADD_MEMBERSHIP

Request

NameType
membership IpMulticastMembership

Response

NameType
result BaseSocket_AddIpMembership_Result

AddIpv6Membership

Set SOL_IPV6 -> IPV6_ADD_MEMBERSHIP.

Request

NameType
membership Ipv6MulticastMembership

Response

NameType
result BaseSocket_AddIpv6Membership_Result

Bind

Sets the local address used for the socket.

Request

NameType
addr fuchsia.net/SocketAddress

Response

NameType
result BaseSocket_Bind_Result

Clone

Create another connection to the same remote object.

flags may be any of:

  • OPEN_RIGHT_*
  • OPEN_FLAG_APPEND
  • OPEN_FLAG_NO_REMOTE
  • OPEN_FLAG_DESCRIBE
  • CLONE_FLAG_SAME_RIGHTS

All other flags are ignored.

The OPEN_RIGHT_* bits in flags request corresponding rights over the resulting cloned object. The cloned object must have rights less than or equal to the original object, otherwise returns ZX_ERR_ACCESS_DENIED. Alternatively, pass CLONE_FLAG_SAME_RIGHTS to inherit the rights on the source connection. It is invalid to pass any of the OPEN_RIGHT_* flags together with CLONE_FLAG_SAME_RIGHTS.

Request

NameType
flags uint32
object request<fuchsia.io/Node>

Close

Terminates connection with object.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status

Connect

Initiates a connection to a remote address.

Request

NameType
addr fuchsia.net/SocketAddress

Response

NameType
result BaseSocket_Connect_Result

Describe

Returns extra information about the type of the object. If the Describe operation fails, the connection is closed.

This method does not require any rights.

Request

NameType

Response

NameType
info fuchsia.io/NodeInfo

Disconnect

Clears connection information from this socket.

Request

NameType

Response

NameType
result BaseSocket_Disconnect_Result

DropIpMembership

Set SOL_IP -> IP_DROP_MEMBERSHIP

Request

NameType
membership IpMulticastMembership

Response

NameType
result BaseSocket_DropIpMembership_Result

DropIpv6Membership

Set SOL_IPV6 -> IPV6_DROP_MEMBERSHIP.

Request

NameType
membership Ipv6MulticastMembership

Response

NameType
result BaseSocket_DropIpv6Membership_Result

GetAcceptConn

Get SOL_SOCKET -> SO_ACCEPTCONN.

Request

NameType

Response

NameType
result BaseSocket_GetAcceptConn_Result

GetAttr

Acquires information about the node.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status
attributes fuchsia.io/NodeAttributes

GetBindToDevice

Get SOL_SOCKET -> SO_BINDTODEVICE.

Request

NameType

Response

NameType
result BaseSocket_GetBindToDevice_Result

GetBroadcast

Get SOL_SOCKET -> SO_BROADCAST.

Request

NameType

Response

NameType
result BaseSocket_GetBroadcast_Result

GetError

Get SOL_SOCKET -> SO_ERROR. Returns the last error if there is an error set on the socket.

Request

NameType

Response

NameType
result BaseSocket_GetError_Result

GetIpMulticastInterface

Get SOL_IP -> IP_MULTICAST_IF.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastInterface_Result

GetIpMulticastLoopback

Get SOL_IP -> IP_MULTICAST_LOOP.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastLoopback_Result

GetIpMulticastTtl

Get SOL_IP -> IP_MULTICAST_TTL.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastTtl_Result

GetIpPacketInfo

Get SOL_IP -> IP_PKTINFO.

Request

NameType

Response

NameType
result BaseSocket_GetIpPacketInfo_Result

GetIpReceiveTypeOfService

Get SOL_IP -> IP_RECVTOS.

Request

NameType

Response

NameType
result BaseSocket_GetIpReceiveTypeOfService_Result

GetIpTtl

Get SOL_IP -> IP_TTL.

Request

NameType

Response

NameType
result BaseSocket_GetIpTtl_Result

GetIpTypeOfService

Get SOL_IP -> IP_TOS.

Request

NameType

Response

NameType
result BaseSocket_GetIpTypeOfService_Result

GetIpv6MulticastHops

Get SOL_IPV6 -> IPV6_MULTICAST_HOPS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastHops_Result

GetIpv6MulticastInterface

Get SOL_IPV6 -> IPV6_MULTICAST_IF.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastInterface_Result

GetIpv6MulticastLoopback

Get SOL_IPV6 -> IPV6_MULTICAST_LOOP.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastLoopback_Result

GetIpv6Only

Get SOL_IPV6 -> IPV6_V6ONLY.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6Only_Result

GetIpv6ReceiveTrafficClass

Get SOL_IPV6 -> IPV6_RECVTCLASS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6ReceiveTrafficClass_Result

GetIpv6TrafficClass

Get SOL_IPV6 -> IPV6_TCLASS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6TrafficClass_Result

GetKeepAlive

Get SOL_SOCKET -> SO_KEEPALIVE.

Request

NameType

Response

NameType
result BaseSocket_GetKeepAlive_Result

GetLinger

Get SOL_SOCKET -> SO_LINGER.

Request

NameType

Response

NameType
result BaseSocket_GetLinger_Result

GetNoCheck

Get SOL_SOCKET -> SO_NO_CHECK.

Request

NameType

Response

NameType
result BaseSocket_GetNoCheck_Result

GetOutOfBandInline

Get SOL_SOCKET -> SO_OOBINLINE.

Request

NameType

Response

NameType
result BaseSocket_GetOutOfBandInline_Result

GetPeerName

Retrieves the remote socket address.

Request

NameType

Response

NameType
result BaseSocket_GetPeerName_Result

GetReceiveBuffer

Get SOL_SOCKET -> SO_RCVBUF.

Request

NameType

Response

NameType
result BaseSocket_GetReceiveBuffer_Result

GetReuseAddress

Get SOL_SOCKET -> SO_REUSEADDR.

Request

NameType

Response

NameType
result BaseSocket_GetReuseAddress_Result

GetReusePort

Get SOL_SOCKET -> SO_REUSEPORT.

Request

NameType

Response

NameType
result BaseSocket_GetReusePort_Result

GetSendBuffer

Get SOL_SOCKET -> SO_SNDBUF.

Request

NameType

Response

NameType
result BaseSocket_GetSendBuffer_Result

GetSockName

Retrieves the local socket address.

Request

NameType

Response

NameType
result BaseSocket_GetSockName_Result

GetSockOpt

Retrieves the value of a socket option.

Request

NameType
level int16
optname int16

Response

NameType
result BaseSocket_GetSockOpt_Result

GetTimestamp

Get SOL_SOCKET -> SO_TIMESTAMP.

Request

NameType

Response

NameType
result BaseSocket_GetTimestamp_Result

NodeGetFlags

Acquires the Directory.Open rights and flags used to access this file.

This method does not require any rights. This method has the same functionality as GetFlags for File and is meant as an in-progress replacement.

Request

NameType

Response

NameType
s zx/status
flags uint32

NodeSetFlags

Changes the Directory.Open flags used to access the file. Supported flags which can be turned on / off:

  • OPEN_FLAG_APPEND

This method does not require any rights. This method has the same functionality as SetFlags for File and is meant as an in-progress replacement.

Request

NameType
flags uint32

Response

NameType
s zx/status

OnOpen

An event produced eagerly by a FIDL server if requested by OPEN_FLAG_DESCRIBE.

Indicates the success or failure of the open operation, and optionally describes the object. If the status is ZX_OK, info contains descriptive information about the object (the same as would be returned by Describe).

Response

NameType
s zx/status
info fuchsia.io/NodeInfo?

SetAttr

Updates information about the node. flags may be any of NODE_ATTRIBUTE_FLAG_*.

This method requires following rights: OPEN_RIGHT_WRITABLE, otherwise returns ZX_ERR_BAD_HANDLE.

Request

NameType
flags uint32
attributes fuchsia.io/NodeAttributes

Response

NameType
s zx/status

SetBindToDevice

Set SOL_SOCKET -> SO_BINDTODEVICE.

Request

NameType
value interface_name

Response

NameType
result BaseSocket_SetBindToDevice_Result

SetBroadcast

Set SOL_SOCKET -> SO_BROADCAST.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetBroadcast_Result

SetIpMulticastInterface

Set SOL_IP -> IP_MULTICAST_IF.

Request

NameType
iface fuchsia.net/interface_id
address fuchsia.net/Ipv4Address

Response

NameType
result BaseSocket_SetIpMulticastInterface_Result

SetIpMulticastLoopback

Set SOL_IP -> IP_MULTICAST_LOOP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpMulticastLoopback_Result

SetIpMulticastTtl

Set SOL_IP -> IP_MULTICAST_TTL.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpMulticastTtl_Result

SetIpPacketInfo

Set SOL_IP -> IP_PKTINFO.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpPacketInfo_Result

SetIpReceiveTypeOfService

Set SOL_IP -> IP_RECVTOS.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpReceiveTypeOfService_Result

SetIpTtl

Set SOL_IP -> IP_TTL.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpTtl_Result

SetIpTypeOfService

Set SOL_IP -> IP_TOS.

Request

NameType
value uint8

Response

NameType
result BaseSocket_SetIpTypeOfService_Result

SetIpv6MulticastHops

Set SOL_IPV6 -> IPV6_MULTICAST_HOPS.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpv6MulticastHops_Result

SetIpv6MulticastInterface

Set SOL_IPV6 -> IPV6_MULTICAST_IF.

Request

NameType
value fuchsia.net/interface_id

Response

NameType
result BaseSocket_SetIpv6MulticastInterface_Result

SetIpv6MulticastLoopback

Set SOL_IPV6 -> IPV6_MULTICAST_LOOP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6MulticastLoopback_Result

SetIpv6Only

Set SOL_IPV6 -> IPV6_V6ONLY.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6Only_Result

SetIpv6ReceiveTrafficClass

Set SOL_IPV6 -> IPV6_RECVTCLASS.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6ReceiveTrafficClass_Result

SetIpv6TrafficClass

Set SOL_IPV6 -> IPV6_TCLASS

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpv6TrafficClass_Result

SetKeepAlive

Set SOL_SOCKET -> SO_KEEPALIVE.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetKeepAlive_Result

SetLinger

Set SOL_SOCKET -> SO_LINGER.

Request

NameType
linger bool
length_secs uint32

Response

NameType
result BaseSocket_SetLinger_Result

SetNoCheck

Set SOL_SOCKET -> SO_NO_CHECK.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetNoCheck_Result

SetOutOfBandInline

Set SOL_SOCKET -> SO_OOBINLINE.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetOutOfBandInline_Result

SetReceiveBuffer

Set SOL_SOCKET -> SO_RCVBUF.

Request

NameType
value_bytes uint64

Response

NameType
result BaseSocket_SetReceiveBuffer_Result

SetReuseAddress

Set SOL_SOCKET -> SO_REUSEADDR.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetReuseAddress_Result

SetReusePort

Set SOL_SOCKET -> SO_REUSEPORT.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetReusePort_Result

SetSendBuffer

Set SOL_SOCKET -> SO_SNDBUF.

Request

NameType
value_bytes uint64

Response

NameType
result BaseSocket_SetSendBuffer_Result

SetSockOpt

Sets the value of a socket option.

Request

NameType
level int16
optname int16
optval sockopt

Response

NameType
result BaseSocket_SetSockOpt_Result

SetTimestamp

Set SOL_SOCKET -> SO_TIMESTAMP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetTimestamp_Result

Sync

Synchronizes updates to the node to the underlying media, if it exists.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status

DatagramSocket

Defined in fuchsia.posix.socket/socket.fidl

A datagram socket.

This type's fuchsia.io.Node/Describe method returns an eventpair which is used to signal additional information about the state of the socket such as readiness or shutdown-ness.

All methods on this type are nonblocking; their exact behaviors match their Linux counterparts.

AddIpMembership

Set SOL_IP -> IP_ADD_MEMBERSHIP

Request

NameType
membership IpMulticastMembership

Response

NameType
result BaseSocket_AddIpMembership_Result

AddIpv6Membership

Set SOL_IPV6 -> IPV6_ADD_MEMBERSHIP.

Request

NameType
membership Ipv6MulticastMembership

Response

NameType
result BaseSocket_AddIpv6Membership_Result

Bind

Sets the local address used for the socket.

Request

NameType
addr fuchsia.net/SocketAddress

Response

NameType
result BaseSocket_Bind_Result

Clone

Create another connection to the same remote object.

flags may be any of:

  • OPEN_RIGHT_*
  • OPEN_FLAG_APPEND
  • OPEN_FLAG_NO_REMOTE
  • OPEN_FLAG_DESCRIBE
  • CLONE_FLAG_SAME_RIGHTS

All other flags are ignored.

The OPEN_RIGHT_* bits in flags request corresponding rights over the resulting cloned object. The cloned object must have rights less than or equal to the original object, otherwise returns ZX_ERR_ACCESS_DENIED. Alternatively, pass CLONE_FLAG_SAME_RIGHTS to inherit the rights on the source connection. It is invalid to pass any of the OPEN_RIGHT_* flags together with CLONE_FLAG_SAME_RIGHTS.

Request

NameType
flags uint32
object request<fuchsia.io/Node>

Close

Terminates connection with object.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status

Connect

Initiates a connection to a remote address.

Request

NameType
addr fuchsia.net/SocketAddress

Response

NameType
result BaseSocket_Connect_Result

Describe

Returns extra information about the type of the object. If the Describe operation fails, the connection is closed.

This method does not require any rights.

Request

NameType

Response

NameType
info fuchsia.io/NodeInfo

Disconnect

Clears connection information from this socket.

Request

NameType

Response

NameType
result BaseSocket_Disconnect_Result

DropIpMembership

Set SOL_IP -> IP_DROP_MEMBERSHIP

Request

NameType
membership IpMulticastMembership

Response

NameType
result BaseSocket_DropIpMembership_Result

DropIpv6Membership

Set SOL_IPV6 -> IPV6_DROP_MEMBERSHIP.

Request

NameType
membership Ipv6MulticastMembership

Response

NameType
result BaseSocket_DropIpv6Membership_Result

GetAcceptConn

Get SOL_SOCKET -> SO_ACCEPTCONN.

Request

NameType

Response

NameType
result BaseSocket_GetAcceptConn_Result

GetAttr

Acquires information about the node.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status
attributes fuchsia.io/NodeAttributes

GetBindToDevice

Get SOL_SOCKET -> SO_BINDTODEVICE.

Request

NameType

Response

NameType
result BaseSocket_GetBindToDevice_Result

GetBroadcast

Get SOL_SOCKET -> SO_BROADCAST.

Request

NameType

Response

NameType
result BaseSocket_GetBroadcast_Result

GetError

Get SOL_SOCKET -> SO_ERROR. Returns the last error if there is an error set on the socket.

Request

NameType

Response

NameType
result BaseSocket_GetError_Result

GetInfo

Retrieves creation information from the socket.

Request

NameType

Response

NameType
result DatagramSocket_GetInfo_Result

GetIpMulticastInterface

Get SOL_IP -> IP_MULTICAST_IF.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastInterface_Result

GetIpMulticastLoopback

Get SOL_IP -> IP_MULTICAST_LOOP.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastLoopback_Result

GetIpMulticastTtl

Get SOL_IP -> IP_MULTICAST_TTL.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastTtl_Result

GetIpPacketInfo

Get SOL_IP -> IP_PKTINFO.

Request

NameType

Response

NameType
result BaseSocket_GetIpPacketInfo_Result

GetIpReceiveTypeOfService

Get SOL_IP -> IP_RECVTOS.

Request

NameType

Response

NameType
result BaseSocket_GetIpReceiveTypeOfService_Result

GetIpTtl

Get SOL_IP -> IP_TTL.

Request

NameType

Response

NameType
result BaseSocket_GetIpTtl_Result

GetIpTypeOfService

Get SOL_IP -> IP_TOS.

Request

NameType

Response

NameType
result BaseSocket_GetIpTypeOfService_Result

GetIpv6MulticastHops

Get SOL_IPV6 -> IPV6_MULTICAST_HOPS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastHops_Result

GetIpv6MulticastInterface

Get SOL_IPV6 -> IPV6_MULTICAST_IF.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastInterface_Result

GetIpv6MulticastLoopback

Get SOL_IPV6 -> IPV6_MULTICAST_LOOP.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastLoopback_Result

GetIpv6Only

Get SOL_IPV6 -> IPV6_V6ONLY.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6Only_Result

GetIpv6ReceiveTrafficClass

Get SOL_IPV6 -> IPV6_RECVTCLASS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6ReceiveTrafficClass_Result

GetIpv6TrafficClass

Get SOL_IPV6 -> IPV6_TCLASS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6TrafficClass_Result

GetKeepAlive

Get SOL_SOCKET -> SO_KEEPALIVE.

Request

NameType

Response

NameType
result BaseSocket_GetKeepAlive_Result

GetLinger

Get SOL_SOCKET -> SO_LINGER.

Request

NameType

Response

NameType
result BaseSocket_GetLinger_Result

GetNoCheck

Get SOL_SOCKET -> SO_NO_CHECK.

Request

NameType

Response

NameType
result BaseSocket_GetNoCheck_Result

GetOutOfBandInline

Get SOL_SOCKET -> SO_OOBINLINE.

Request

NameType

Response

NameType
result BaseSocket_GetOutOfBandInline_Result

GetPeerName

Retrieves the remote socket address.

Request

NameType

Response

NameType
result BaseSocket_GetPeerName_Result

GetReceiveBuffer

Get SOL_SOCKET -> SO_RCVBUF.

Request

NameType

Response

NameType
result BaseSocket_GetReceiveBuffer_Result

GetReuseAddress

Get SOL_SOCKET -> SO_REUSEADDR.

Request

NameType

Response

NameType
result BaseSocket_GetReuseAddress_Result

GetReusePort

Get SOL_SOCKET -> SO_REUSEPORT.

Request

NameType

Response

NameType
result BaseSocket_GetReusePort_Result

GetSendBuffer

Get SOL_SOCKET -> SO_SNDBUF.

Request

NameType

Response

NameType
result BaseSocket_GetSendBuffer_Result

GetSockName

Retrieves the local socket address.

Request

NameType

Response

NameType
result BaseSocket_GetSockName_Result

GetSockOpt

Retrieves the value of a socket option.

Request

NameType
level int16
optname int16

Response

NameType
result BaseSocket_GetSockOpt_Result

GetTimestamp

Get SOL_SOCKET -> SO_TIMESTAMP.

Request

NameType

Response

NameType
result BaseSocket_GetTimestamp_Result

NodeGetFlags

Acquires the Directory.Open rights and flags used to access this file.

This method does not require any rights. This method has the same functionality as GetFlags for File and is meant as an in-progress replacement.

Request

NameType

Response

NameType
s zx/status
flags uint32

NodeSetFlags

Changes the Directory.Open flags used to access the file. Supported flags which can be turned on / off:

  • OPEN_FLAG_APPEND

This method does not require any rights. This method has the same functionality as SetFlags for File and is meant as an in-progress replacement.

Request

NameType
flags uint32

Response

NameType
s zx/status

OnOpen

An event produced eagerly by a FIDL server if requested by OPEN_FLAG_DESCRIBE.

Indicates the success or failure of the open operation, and optionally describes the object. If the status is ZX_OK, info contains descriptive information about the object (the same as would be returned by Describe).

Response

NameType
s zx/status
info fuchsia.io/NodeInfo?

RecvMsg

Receives a message from the socket.

Request

NameType
want_addr bool
data_len uint32
want_control bool
flags RecvMsgFlags

Response

NameType
result DatagramSocket_RecvMsg_Result

SendMsg

Sends a message on the socket.

Request

NameType
addr fuchsia.net/SocketAddress?
data vector<uint8>
control SendControlData
flags SendMsgFlags

Response

NameType
result DatagramSocket_SendMsg_Result

SetAttr

Updates information about the node. flags may be any of NODE_ATTRIBUTE_FLAG_*.

This method requires following rights: OPEN_RIGHT_WRITABLE, otherwise returns ZX_ERR_BAD_HANDLE.

Request

NameType
flags uint32
attributes fuchsia.io/NodeAttributes

Response

NameType
s zx/status

SetBindToDevice

Set SOL_SOCKET -> SO_BINDTODEVICE.

Request

NameType
value interface_name

Response

NameType
result BaseSocket_SetBindToDevice_Result

SetBroadcast

Set SOL_SOCKET -> SO_BROADCAST.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetBroadcast_Result

SetIpMulticastInterface

Set SOL_IP -> IP_MULTICAST_IF.

Request

NameType
iface fuchsia.net/interface_id
address fuchsia.net/Ipv4Address

Response

NameType
result BaseSocket_SetIpMulticastInterface_Result

SetIpMulticastLoopback

Set SOL_IP -> IP_MULTICAST_LOOP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpMulticastLoopback_Result

SetIpMulticastTtl

Set SOL_IP -> IP_MULTICAST_TTL.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpMulticastTtl_Result

SetIpPacketInfo

Set SOL_IP -> IP_PKTINFO.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpPacketInfo_Result

SetIpReceiveTypeOfService

Set SOL_IP -> IP_RECVTOS.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpReceiveTypeOfService_Result

SetIpTtl

Set SOL_IP -> IP_TTL.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpTtl_Result

SetIpTypeOfService

Set SOL_IP -> IP_TOS.

Request

NameType
value uint8

Response

NameType
result BaseSocket_SetIpTypeOfService_Result

SetIpv6MulticastHops

Set SOL_IPV6 -> IPV6_MULTICAST_HOPS.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpv6MulticastHops_Result

SetIpv6MulticastInterface

Set SOL_IPV6 -> IPV6_MULTICAST_IF.

Request

NameType
value fuchsia.net/interface_id

Response

NameType
result BaseSocket_SetIpv6MulticastInterface_Result

SetIpv6MulticastLoopback

Set SOL_IPV6 -> IPV6_MULTICAST_LOOP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6MulticastLoopback_Result

SetIpv6Only

Set SOL_IPV6 -> IPV6_V6ONLY.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6Only_Result

SetIpv6ReceiveTrafficClass

Set SOL_IPV6 -> IPV6_RECVTCLASS.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6ReceiveTrafficClass_Result

SetIpv6TrafficClass

Set SOL_IPV6 -> IPV6_TCLASS

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpv6TrafficClass_Result

SetKeepAlive

Set SOL_SOCKET -> SO_KEEPALIVE.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetKeepAlive_Result

SetLinger

Set SOL_SOCKET -> SO_LINGER.

Request

NameType
linger bool
length_secs uint32

Response

NameType
result BaseSocket_SetLinger_Result

SetNoCheck

Set SOL_SOCKET -> SO_NO_CHECK.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetNoCheck_Result

SetOutOfBandInline

Set SOL_SOCKET -> SO_OOBINLINE.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetOutOfBandInline_Result

SetReceiveBuffer

Set SOL_SOCKET -> SO_RCVBUF.

Request

NameType
value_bytes uint64

Response

NameType
result BaseSocket_SetReceiveBuffer_Result

SetReuseAddress

Set SOL_SOCKET -> SO_REUSEADDR.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetReuseAddress_Result

SetReusePort

Set SOL_SOCKET -> SO_REUSEPORT.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetReusePort_Result

SetSendBuffer

Set SOL_SOCKET -> SO_SNDBUF.

Request

NameType
value_bytes uint64

Response

NameType
result BaseSocket_SetSendBuffer_Result

SetSockOpt

Sets the value of a socket option.

Request

NameType
level int16
optname int16
optval sockopt

Response

NameType
result BaseSocket_SetSockOpt_Result

SetTimestamp

Set SOL_SOCKET -> SO_TIMESTAMP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetTimestamp_Result

Shutdown

Shuts down part of the socket.

Request

NameType
mode ShutdownMode

Response

NameType
result DatagramSocket_Shutdown_Result

Sync

Synchronizes updates to the node to the underlying media, if it exists.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status

Provider

Defined in fuchsia.posix.socket/socket.fidl

Provider implements the POSIX sockets API.

DatagramSocket

Requests a datagram socket with the specified parameters.

Request

NameType
domain Domain
proto DatagramSocketProtocol

Response

NameType
result Provider_DatagramSocket_Result

GetInterfaceAddresses

Requests a list of fuchsia.posix.socket.InterfaceAddresses describing the network interfaces on the system.

Request

NameType

Response

NameType
interfaces vector<InterfaceAddresses>

InterfaceIndexToName

Looks up an interface by its index and returns its name. Returns ZX_ERR_NOT_FOUND if the specified index doesn't exist.

Request

NameType
index uint64

Response

NameType
result Provider_InterfaceIndexToName_Result

InterfaceNameToFlags

Looks up an interface by its name and returns its flags. Returns ZX_ERR_NOT_FOUND if the specified name doesn't exist.

Request

NameType
name interface_name

Response

NameType
result Provider_InterfaceNameToFlags_Result

InterfaceNameToIndex

Looks up an interface by its name and returns its index. Returns ZX_ERR_NOT_FOUND if the specified name doesn't exist.

Request

NameType
name interface_name

Response

NameType
result Provider_InterfaceNameToIndex_Result

StreamSocket

Requests a stream socket with the specified parameters.

Request

NameType
domain Domain
proto StreamSocketProtocol

Response

NameType
result Provider_StreamSocket_Result

StreamSocket

Defined in fuchsia.posix.socket/socket.fidl

A stream socket.

This type's fuchsia.io.Node/Describe method returns a socket which is used to transfer data to and from the caller. Signals are used to communicate additional information about the state of the socket such as connectedness and the presence of incoming connections in the case of a listening socket.

All methods on this type are nonblocking; their exact behaviors match their Linux counterparts.

Accept

Accepts a buffered incoming connection.

Request

NameType
want_addr bool

Response

NameType
result StreamSocket_Accept_Result

AddIpMembership

Set SOL_IP -> IP_ADD_MEMBERSHIP

Request

NameType
membership IpMulticastMembership

Response

NameType
result BaseSocket_AddIpMembership_Result

AddIpv6Membership

Set SOL_IPV6 -> IPV6_ADD_MEMBERSHIP.

Request

NameType
membership Ipv6MulticastMembership

Response

NameType
result BaseSocket_AddIpv6Membership_Result

Bind

Sets the local address used for the socket.

Request

NameType
addr fuchsia.net/SocketAddress

Response

NameType
result BaseSocket_Bind_Result

Clone

Create another connection to the same remote object.

flags may be any of:

  • OPEN_RIGHT_*
  • OPEN_FLAG_APPEND
  • OPEN_FLAG_NO_REMOTE
  • OPEN_FLAG_DESCRIBE
  • CLONE_FLAG_SAME_RIGHTS

All other flags are ignored.

The OPEN_RIGHT_* bits in flags request corresponding rights over the resulting cloned object. The cloned object must have rights less than or equal to the original object, otherwise returns ZX_ERR_ACCESS_DENIED. Alternatively, pass CLONE_FLAG_SAME_RIGHTS to inherit the rights on the source connection. It is invalid to pass any of the OPEN_RIGHT_* flags together with CLONE_FLAG_SAME_RIGHTS.

Request

NameType
flags uint32
object request<fuchsia.io/Node>

Close

Terminates connection with object.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status

Connect

Initiates a connection to a remote address.

Request

NameType
addr fuchsia.net/SocketAddress

Response

NameType
result BaseSocket_Connect_Result

Describe

Returns extra information about the type of the object. If the Describe operation fails, the connection is closed.

This method does not require any rights.

Request

NameType

Response

NameType
info fuchsia.io/NodeInfo

Disconnect

Clears connection information from this socket.

Request

NameType

Response

NameType
result BaseSocket_Disconnect_Result

DropIpMembership

Set SOL_IP -> IP_DROP_MEMBERSHIP

Request

NameType
membership IpMulticastMembership

Response

NameType
result BaseSocket_DropIpMembership_Result

DropIpv6Membership

Set SOL_IPV6 -> IPV6_DROP_MEMBERSHIP.

Request

NameType
membership Ipv6MulticastMembership

Response

NameType
result BaseSocket_DropIpv6Membership_Result

GetAcceptConn

Get SOL_SOCKET -> SO_ACCEPTCONN.

Request

NameType

Response

NameType
result BaseSocket_GetAcceptConn_Result

GetAttr

Acquires information about the node.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status
attributes fuchsia.io/NodeAttributes

GetBindToDevice

Get SOL_SOCKET -> SO_BINDTODEVICE.

Request

NameType

Response

NameType
result BaseSocket_GetBindToDevice_Result

GetBroadcast

Get SOL_SOCKET -> SO_BROADCAST.

Request

NameType

Response

NameType
result BaseSocket_GetBroadcast_Result

GetError

Get SOL_SOCKET -> SO_ERROR. Returns the last error if there is an error set on the socket.

Request

NameType

Response

NameType
result BaseSocket_GetError_Result

GetInfo

Retrieves creation information from the socket.

Request

NameType

Response

NameType
result StreamSocket_GetInfo_Result

GetIpMulticastInterface

Get SOL_IP -> IP_MULTICAST_IF.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastInterface_Result

GetIpMulticastLoopback

Get SOL_IP -> IP_MULTICAST_LOOP.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastLoopback_Result

GetIpMulticastTtl

Get SOL_IP -> IP_MULTICAST_TTL.

Request

NameType

Response

NameType
result BaseSocket_GetIpMulticastTtl_Result

GetIpPacketInfo

Get SOL_IP -> IP_PKTINFO.

Request

NameType

Response

NameType
result BaseSocket_GetIpPacketInfo_Result

GetIpReceiveTypeOfService

Get SOL_IP -> IP_RECVTOS.

Request

NameType

Response

NameType
result BaseSocket_GetIpReceiveTypeOfService_Result

GetIpTtl

Get SOL_IP -> IP_TTL.

Request

NameType

Response

NameType
result BaseSocket_GetIpTtl_Result

GetIpTypeOfService

Get SOL_IP -> IP_TOS.

Request

NameType

Response

NameType
result BaseSocket_GetIpTypeOfService_Result

GetIpv6MulticastHops

Get SOL_IPV6 -> IPV6_MULTICAST_HOPS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastHops_Result

GetIpv6MulticastInterface

Get SOL_IPV6 -> IPV6_MULTICAST_IF.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastInterface_Result

GetIpv6MulticastLoopback

Get SOL_IPV6 -> IPV6_MULTICAST_LOOP.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6MulticastLoopback_Result

GetIpv6Only

Get SOL_IPV6 -> IPV6_V6ONLY.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6Only_Result

GetIpv6ReceiveTrafficClass

Get SOL_IPV6 -> IPV6_RECVTCLASS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6ReceiveTrafficClass_Result

GetIpv6TrafficClass

Get SOL_IPV6 -> IPV6_TCLASS.

Request

NameType

Response

NameType
result BaseSocket_GetIpv6TrafficClass_Result

GetKeepAlive

Get SOL_SOCKET -> SO_KEEPALIVE.

Request

NameType

Response

NameType
result BaseSocket_GetKeepAlive_Result

GetLinger

Get SOL_SOCKET -> SO_LINGER.

Request

NameType

Response

NameType
result BaseSocket_GetLinger_Result

GetNoCheck

Get SOL_SOCKET -> SO_NO_CHECK.

Request

NameType

Response

NameType
result BaseSocket_GetNoCheck_Result

GetOutOfBandInline

Get SOL_SOCKET -> SO_OOBINLINE.

Request

NameType

Response

NameType
result BaseSocket_GetOutOfBandInline_Result

GetPeerName

Retrieves the remote socket address.

Request

NameType

Response

NameType
result BaseSocket_GetPeerName_Result

GetReceiveBuffer

Get SOL_SOCKET -> SO_RCVBUF.

Request

NameType

Response

NameType
result BaseSocket_GetReceiveBuffer_Result

GetReuseAddress

Get SOL_SOCKET -> SO_REUSEADDR.

Request

NameType

Response

NameType
result BaseSocket_GetReuseAddress_Result

GetReusePort

Get SOL_SOCKET -> SO_REUSEPORT.

Request

NameType

Response

NameType
result BaseSocket_GetReusePort_Result

GetSendBuffer

Get SOL_SOCKET -> SO_SNDBUF.

Request

NameType

Response

NameType
result BaseSocket_GetSendBuffer_Result

GetSockName

Retrieves the local socket address.

Request

NameType

Response

NameType
result BaseSocket_GetSockName_Result

GetSockOpt

Retrieves the value of a socket option.

Request

NameType
level int16
optname int16

Response

NameType
result BaseSocket_GetSockOpt_Result

GetTcpCongestion

Get SOL_TCP -> TCP_CONGESTION.

Request

NameType

Response

NameType
result StreamSocket_GetTcpCongestion_Result

GetTcpCork

Get SOL_TCP -> TCP_CORK.

Request

NameType

Response

NameType
result StreamSocket_GetTcpCork_Result

GetTcpDeferAccept

Get SOL_TCP -> TCP_DEFER_ACCEPT.

Request

NameType

Response

NameType
result StreamSocket_GetTcpDeferAccept_Result

GetTcpInfo

Get SOL_TCP -> TCP_INFO.

Request

NameType

Response

NameType
result StreamSocket_GetTcpInfo_Result

GetTcpKeepAliveCount

Get SOL_TCP -> TCP_KEEPCNT.

Request

NameType

Response

NameType
result StreamSocket_GetTcpKeepAliveCount_Result

GetTcpKeepAliveIdle

Get SOL_TCP -> TCP_KEEPIDLE.

Request

NameType

Response

NameType
result StreamSocket_GetTcpKeepAliveIdle_Result

GetTcpKeepAliveInterval

Get SOL_TCP -> TCP_KEEPINTVL.

Request

NameType

Response

NameType
result StreamSocket_GetTcpKeepAliveInterval_Result

GetTcpLinger

Get SOL_TCP -> TCP_LINGER2.

Request

NameType

Response

NameType
result StreamSocket_GetTcpLinger_Result

GetTcpMaxSegment

Get SOL_TCP -> TCP_MAXSEG.

Request

NameType

Response

NameType
result StreamSocket_GetTcpMaxSegment_Result

GetTcpNoDelay

Get SOL_TCP -> TCP_NODELAY.

Request

NameType

Response

NameType
result StreamSocket_GetTcpNoDelay_Result

GetTcpQuickAck

Get SOL_TCP -> TCP_QUICKACK.

Request

NameType

Response

NameType
result StreamSocket_GetTcpQuickAck_Result

GetTcpSynCount

Get SOL_TCP -> TCP_SYNCNT.

Request

NameType

Response

NameType
result StreamSocket_GetTcpSynCount_Result

GetTcpUserTimeout

Get SOL_TCP -> TCP_USER_TIMEOUT.

Request

NameType

Response

NameType
result StreamSocket_GetTcpUserTimeout_Result

GetTcpWindowClamp

Get SOL_TCP -> TCP_WINDOW_CLAMP.

Request

NameType

Response

NameType
result StreamSocket_GetTcpWindowClamp_Result

GetTimestamp

Get SOL_SOCKET -> SO_TIMESTAMP.

Request

NameType

Response

NameType
result BaseSocket_GetTimestamp_Result

Listen

Begins listening for new incoming connections. At most backlog connections will be buffered.

Request

NameType
backlog int16

Response

NameType
result StreamSocket_Listen_Result

NodeGetFlags

Acquires the Directory.Open rights and flags used to access this file.

This method does not require any rights. This method has the same functionality as GetFlags for File and is meant as an in-progress replacement.

Request

NameType

Response

NameType
s zx/status
flags uint32

NodeSetFlags

Changes the Directory.Open flags used to access the file. Supported flags which can be turned on / off:

  • OPEN_FLAG_APPEND

This method does not require any rights. This method has the same functionality as SetFlags for File and is meant as an in-progress replacement.

Request

NameType
flags uint32

Response

NameType
s zx/status

OnOpen

An event produced eagerly by a FIDL server if requested by OPEN_FLAG_DESCRIBE.

Indicates the success or failure of the open operation, and optionally describes the object. If the status is ZX_OK, info contains descriptive information about the object (the same as would be returned by Describe).

Response

NameType
s zx/status
info fuchsia.io/NodeInfo?

SetAttr

Updates information about the node. flags may be any of NODE_ATTRIBUTE_FLAG_*.

This method requires following rights: OPEN_RIGHT_WRITABLE, otherwise returns ZX_ERR_BAD_HANDLE.

Request

NameType
flags uint32
attributes fuchsia.io/NodeAttributes

Response

NameType
s zx/status

SetBindToDevice

Set SOL_SOCKET -> SO_BINDTODEVICE.

Request

NameType
value interface_name

Response

NameType
result BaseSocket_SetBindToDevice_Result

SetBroadcast

Set SOL_SOCKET -> SO_BROADCAST.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetBroadcast_Result

SetIpMulticastInterface

Set SOL_IP -> IP_MULTICAST_IF.

Request

NameType
iface fuchsia.net/interface_id
address fuchsia.net/Ipv4Address

Response

NameType
result BaseSocket_SetIpMulticastInterface_Result

SetIpMulticastLoopback

Set SOL_IP -> IP_MULTICAST_LOOP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpMulticastLoopback_Result

SetIpMulticastTtl

Set SOL_IP -> IP_MULTICAST_TTL.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpMulticastTtl_Result

SetIpPacketInfo

Set SOL_IP -> IP_PKTINFO.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpPacketInfo_Result

SetIpReceiveTypeOfService

Set SOL_IP -> IP_RECVTOS.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpReceiveTypeOfService_Result

SetIpTtl

Set SOL_IP -> IP_TTL.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpTtl_Result

SetIpTypeOfService

Set SOL_IP -> IP_TOS.

Request

NameType
value uint8

Response

NameType
result BaseSocket_SetIpTypeOfService_Result

SetIpv6MulticastHops

Set SOL_IPV6 -> IPV6_MULTICAST_HOPS.

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpv6MulticastHops_Result

SetIpv6MulticastInterface

Set SOL_IPV6 -> IPV6_MULTICAST_IF.

Request

NameType
value fuchsia.net/interface_id

Response

NameType
result BaseSocket_SetIpv6MulticastInterface_Result

SetIpv6MulticastLoopback

Set SOL_IPV6 -> IPV6_MULTICAST_LOOP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6MulticastLoopback_Result

SetIpv6Only

Set SOL_IPV6 -> IPV6_V6ONLY.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6Only_Result

SetIpv6ReceiveTrafficClass

Set SOL_IPV6 -> IPV6_RECVTCLASS.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetIpv6ReceiveTrafficClass_Result

SetIpv6TrafficClass

Set SOL_IPV6 -> IPV6_TCLASS

Request

NameType
value OptionalUint8

Response

NameType
result BaseSocket_SetIpv6TrafficClass_Result

SetKeepAlive

Set SOL_SOCKET -> SO_KEEPALIVE.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetKeepAlive_Result

SetLinger

Set SOL_SOCKET -> SO_LINGER.

Request

NameType
linger bool
length_secs uint32

Response

NameType
result BaseSocket_SetLinger_Result

SetNoCheck

Set SOL_SOCKET -> SO_NO_CHECK.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetNoCheck_Result

SetOutOfBandInline

Set SOL_SOCKET -> SO_OOBINLINE.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetOutOfBandInline_Result

SetReceiveBuffer

Set SOL_SOCKET -> SO_RCVBUF.

Request

NameType
value_bytes uint64

Response

NameType
result BaseSocket_SetReceiveBuffer_Result

SetReuseAddress

Set SOL_SOCKET -> SO_REUSEADDR.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetReuseAddress_Result

SetReusePort

Set SOL_SOCKET -> SO_REUSEPORT.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetReusePort_Result

SetSendBuffer

Set SOL_SOCKET -> SO_SNDBUF.

Request

NameType
value_bytes uint64

Response

NameType
result BaseSocket_SetSendBuffer_Result

SetSockOpt

Sets the value of a socket option.

Request

NameType
level int16
optname int16
optval sockopt

Response

NameType
result BaseSocket_SetSockOpt_Result

SetTcpCongestion

Set SOL_TCP -> TCP_CONGESTION.

Request

NameType
value TcpCongestionControl

Response

NameType
result StreamSocket_SetTcpCongestion_Result

SetTcpCork

Set SOL_TCP -> TCP_CORK.

Request

NameType
value bool

Response

NameType
result StreamSocket_SetTcpCork_Result

SetTcpDeferAccept

Set SOL_TCP -> TCP_DEFER_ACCEPT.

Request

NameType
value_secs uint32

Response

NameType
result StreamSocket_SetTcpDeferAccept_Result

SetTcpKeepAliveCount

Set SOL_TCP -> TCP_KEEPCNT.

Request

NameType
value uint32

Response

NameType
result StreamSocket_SetTcpKeepAliveCount_Result

SetTcpKeepAliveIdle

Set SOL_TCP -> TCP_KEEPIDLE.

Request

NameType
value_secs uint32

Response

NameType
result StreamSocket_SetTcpKeepAliveIdle_Result

SetTcpKeepAliveInterval

Set SOL_TCP -> TCP_KEEPINTVL.

Request

NameType
value_secs uint32

Response

NameType
result StreamSocket_SetTcpKeepAliveInterval_Result

SetTcpLinger

Set SOL_TCP -> TCP_LINGER2.

Request

NameType
value_secs OptionalUint32

Response

NameType
result StreamSocket_SetTcpLinger_Result

SetTcpMaxSegment

Set SOL_TCP -> TCP_MAXSEG.

Request

NameType
value_bytes uint32

Response

NameType
result StreamSocket_SetTcpMaxSegment_Result

SetTcpNoDelay

Set SOL_TCP -> TCP_NODELAY.

Request

NameType
value bool

Response

NameType
result StreamSocket_SetTcpNoDelay_Result

SetTcpQuickAck

Set SOL_TCP -> TCP_QUICKACK.

Request

NameType
value bool

Response

NameType
result StreamSocket_SetTcpQuickAck_Result

SetTcpSynCount

Set SOL_TCP -> TCP_SYNCNT.

Request

NameType
value uint32

Response

NameType
result StreamSocket_SetTcpSynCount_Result

SetTcpUserTimeout

Set SOL_TCP -> TCP_USER_TIMEOUT.

Request

NameType
value_millis uint32

Response

NameType
result StreamSocket_SetTcpUserTimeout_Result

SetTcpWindowClamp

Set SOL_TCP -> TCP_WINDOW_CLAMP.

Request

NameType
value uint32

Response

NameType
result StreamSocket_SetTcpWindowClamp_Result

SetTimestamp

Set SOL_SOCKET -> SO_TIMESTAMP.

Request

NameType
value bool

Response

NameType
result BaseSocket_SetTimestamp_Result

Sync

Synchronizes updates to the node to the underlying media, if it exists.

This method does not require any rights.

Request

NameType

Response

NameType
s zx/status

STRUCTS

BaseSocket_AddIpMembership_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_AddIpv6Membership_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_Bind_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_Connect_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_Disconnect_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_DropIpMembership_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_DropIpv6Membership_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_GetAcceptConn_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetBindToDevice_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value interface_name No default

BaseSocket_GetBroadcast_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetError_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_GetIpMulticastInterface_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value fuchsia.net/Ipv4Address No default

BaseSocket_GetIpMulticastLoopback_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetIpMulticastTtl_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value uint8 No default

BaseSocket_GetIpPacketInfo_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetIpReceiveTypeOfService_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetIpTtl_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value uint8 No default

BaseSocket_GetIpTypeOfService_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value uint8 No default

BaseSocket_GetIpv6MulticastHops_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value uint8 No default

BaseSocket_GetIpv6MulticastInterface_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value fuchsia.net/interface_id No default

BaseSocket_GetIpv6MulticastLoopback_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetIpv6Only_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetIpv6ReceiveTrafficClass_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetIpv6TrafficClass_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value uint8 No default

BaseSocket_GetKeepAlive_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetLinger_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
linger bool No default
length_secs uint32 No default

BaseSocket_GetNoCheck_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetOutOfBandInline_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetPeerName_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
addr fuchsia.net/SocketAddress No default

BaseSocket_GetReceiveBuffer_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value_bytes uint64 No default

BaseSocket_GetReuseAddress_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetReusePort_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_GetSendBuffer_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value_bytes uint64 No default

BaseSocket_GetSockName_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
addr fuchsia.net/SocketAddress No default

BaseSocket_GetSockOpt_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
optval sockopt No default

BaseSocket_GetTimestamp_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

BaseSocket_SetBindToDevice_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetBroadcast_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpMulticastInterface_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpMulticastLoopback_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpMulticastTtl_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpPacketInfo_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpReceiveTypeOfService_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpTtl_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpTypeOfService_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpv6MulticastHops_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpv6MulticastInterface_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpv6MulticastLoopback_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpv6Only_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpv6ReceiveTrafficClass_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetIpv6TrafficClass_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetKeepAlive_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetLinger_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetNoCheck_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetOutOfBandInline_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetReceiveBuffer_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetReuseAddress_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetReusePort_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetSendBuffer_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetSockOpt_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

BaseSocket_SetTimestamp_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

DatagramSocket_GetInfo_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
domain Domain No default
proto DatagramSocketProtocol No default

DatagramSocket_RecvMsg_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
addr fuchsia.net/SocketAddress? No default
data vector<uint8> No default
control RecvControlData No default
truncated uint32 No default

DatagramSocket_SendMsg_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
len int64 No default

DatagramSocket_Shutdown_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

Empty

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

IpMulticastMembership

Defined in fuchsia.posix.socket/socket.fidl

IPv4 multicast membership options.

NameTypeDescriptionDefault
iface fuchsia.net/interface_id

Interface index for membership.

No default
local_addr fuchsia.net/Ipv4Address

Local interface address requesting or relinquishing ownership.

No default
mcast_addr fuchsia.net/Ipv4Address

Address of the multicast group the membership refers to.

No default

Ipv6MulticastMembership

Defined in fuchsia.posix.socket/socket.fidl

IPv6 multicast membership options.

NameTypeDescriptionDefault
iface fuchsia.net/interface_id

Interface index for membership.

No default
mcast_addr fuchsia.net/Ipv6Address

Address of the multicast group the membership refers to.

No default

Provider_DatagramSocket_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
s DatagramSocket No default

Provider_InterfaceIndexToName_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
name interface_name No default

Provider_InterfaceNameToFlags_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
flags InterfaceFlags No default

Provider_InterfaceNameToIndex_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
index uint64 No default

Provider_StreamSocket_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
s StreamSocket No default

StreamSocket_Accept_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
addr fuchsia.net/SocketAddress? No default
s StreamSocket No default

StreamSocket_GetInfo_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
domain Domain No default
proto StreamSocketProtocol No default

StreamSocket_GetTcpCongestion_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value TcpCongestionControl No default

StreamSocket_GetTcpCork_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

StreamSocket_GetTcpDeferAccept_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value_secs uint32 No default

StreamSocket_GetTcpInfo_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
info TcpInfo No default

StreamSocket_GetTcpKeepAliveCount_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value uint32 No default

StreamSocket_GetTcpKeepAliveIdle_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value_secs uint32 No default

StreamSocket_GetTcpKeepAliveInterval_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value_secs uint32 No default

StreamSocket_GetTcpLinger_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value_secs OptionalUint32 No default

StreamSocket_GetTcpMaxSegment_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value_bytes uint32 No default

StreamSocket_GetTcpNoDelay_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

StreamSocket_GetTcpQuickAck_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value bool No default

StreamSocket_GetTcpSynCount_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value uint32 No default

StreamSocket_GetTcpUserTimeout_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value_millis uint32 No default

StreamSocket_GetTcpWindowClamp_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault
value uint32 No default

StreamSocket_Listen_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpCongestion_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpCork_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpDeferAccept_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpKeepAliveCount_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpKeepAliveIdle_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpKeepAliveInterval_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpLinger_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpMaxSegment_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpNoDelay_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpQuickAck_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpSynCount_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpUserTimeout_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

StreamSocket_SetTcpWindowClamp_Response

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescriptionDefault

ENUMS

DatagramSocketProtocol

Type: uint32

Defined in fuchsia.posix.socket/socket.fidl

Protocols supported by DatagramSocket.

DatagramSocketProtocol enumerates the protocols supported by the network stack over datagram sockets.

NameValueDescription
UDP 1

UDP (User Datagram Protocol).

A UDP socket is equivalent to the POSIX API of SOCK_DGRAM with a protocol of 0 or IPPROTO_UDP.

ICMP_ECHO 2

ICMP (Internet Control Message Protocol) echo.

An ICMP echo socket is equivalent to the POSIX API of SOCK_DGRAM with a protocol of IPPROTO_ICMP IPPROTO_ICMPV6 (depending on provided domain).

Datagrams sent over an ICMP echo socket must have a valid ICMP or ICMPv6 echo header.

Domain

Type: int16

Defined in fuchsia.posix.socket/socket.fidl

A socket's domain.

Determines the addressing domain for a socket.

NameValueDescription
IPV4 0

An IPv4 socket. Equivalent to AF_INET.

IPV6 1

An IPv6 socket. Equivalent to AF_INET6.

StreamSocketProtocol

Type: uint32

Defined in fuchsia.posix.socket/socket.fidl

Protocols supported by StreamSocket.

StreamSocketProtocol enumerates the protocols supported by the network stack over stream sockets.

NameValueDescription
TCP 0

TCP (Transmission Control Protocol).

A TCP socket is equivalent to the POSIX API of SOCK_STREAM with a protocol of 0 or IPPROTO_TCP.

TcpCongestionControl

Type: uint32

Defined in fuchsia.posix.socket/socket.fidl

TCP congestion control modes.

NameValueDescription
RENO 1
CUBIC 2

TcpCongestionControlState

Type: uint32

Defined in fuchsia.posix.socket/socket.fidl

TCP congestion control state machine state.

NameValueDescription
OPEN 0
DISORDER 1
CONGESTION_WINDOW_REDUCED 2
RECOVERY 3
LOSS 4

TABLES

InterfaceAddresses

Defined in fuchsia.posix.socket/socket.fidl

Holds information about an interface and its addresses.

OrdinalNameTypeDescription
1 id uint64

ID of the interface.

2 name interface_name

Name of the interface.

3 flags uint32

Contains the interface flags, as returned by the SIOCGIFFLAGS ioctl operation.

TODO(fxbug.dev/64758): remove this once all clients are transitioned to use more strongly-typed interface_flags.

4 addresses vector<fuchsia.net/Subnet>

All addresses currently assigned to the interface.

5 interface_flags InterfaceFlags

Contains the interface flags, as returned by the SIOCGIFFLAGS ioctl operation.

RecvControlData

Defined in fuchsia.posix.socket/socket.fidl

Ancillary data for received datagram sockets.

OrdinalNameTypeDescription

SendControlData

Defined in fuchsia.posix.socket/socket.fidl

Ancillary data for sending datagram sockets.

OrdinalNameTypeDescription

TcpInfo

Defined in fuchsia.posix.socket/socket.fidl

TCP protocol state.

OrdinalNameTypeDescription
1
2 ca_state TcpCongestionControlState
3
4
5
6
7
8
9
10
11 rto_usec uint32
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 rtt_usec uint32
27 rtt_var_usec uint32
28 snd_ssthresh uint32
29 snd_cwnd uint32
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 reorder_seen bool
55
56

UNIONS

BaseSocket_AddIpMembership_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_AddIpMembership_Response
err fuchsia.posix/Errno

BaseSocket_AddIpv6Membership_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_AddIpv6Membership_Response
err fuchsia.posix/Errno

BaseSocket_Bind_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_Bind_Response
err fuchsia.posix/Errno

BaseSocket_Connect_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_Connect_Response
err fuchsia.posix/Errno

BaseSocket_Disconnect_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_Disconnect_Response
err fuchsia.posix/Errno

BaseSocket_DropIpMembership_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_DropIpMembership_Response
err fuchsia.posix/Errno

BaseSocket_DropIpv6Membership_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_DropIpv6Membership_Response
err fuchsia.posix/Errno

BaseSocket_GetAcceptConn_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetAcceptConn_Response
err fuchsia.posix/Errno

BaseSocket_GetBindToDevice_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetBindToDevice_Response
err fuchsia.posix/Errno

BaseSocket_GetBroadcast_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetBroadcast_Response
err fuchsia.posix/Errno

BaseSocket_GetError_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetError_Response
err fuchsia.posix/Errno

BaseSocket_GetIpMulticastInterface_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpMulticastInterface_Response
err fuchsia.posix/Errno

BaseSocket_GetIpMulticastLoopback_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpMulticastLoopback_Response
err fuchsia.posix/Errno

BaseSocket_GetIpMulticastTtl_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpMulticastTtl_Response
err fuchsia.posix/Errno

BaseSocket_GetIpPacketInfo_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpPacketInfo_Response
err fuchsia.posix/Errno

BaseSocket_GetIpReceiveTypeOfService_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpReceiveTypeOfService_Response
err fuchsia.posix/Errno

BaseSocket_GetIpTtl_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpTtl_Response
err fuchsia.posix/Errno

BaseSocket_GetIpTypeOfService_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpTypeOfService_Response
err fuchsia.posix/Errno

BaseSocket_GetIpv6MulticastHops_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpv6MulticastHops_Response
err fuchsia.posix/Errno

BaseSocket_GetIpv6MulticastInterface_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpv6MulticastInterface_Response
err fuchsia.posix/Errno

BaseSocket_GetIpv6MulticastLoopback_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpv6MulticastLoopback_Response
err fuchsia.posix/Errno

BaseSocket_GetIpv6Only_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpv6Only_Response
err fuchsia.posix/Errno

BaseSocket_GetIpv6ReceiveTrafficClass_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpv6ReceiveTrafficClass_Response
err fuchsia.posix/Errno

BaseSocket_GetIpv6TrafficClass_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetIpv6TrafficClass_Response
err fuchsia.posix/Errno

BaseSocket_GetKeepAlive_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetKeepAlive_Response
err fuchsia.posix/Errno

BaseSocket_GetLinger_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetLinger_Response
err fuchsia.posix/Errno

BaseSocket_GetNoCheck_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetNoCheck_Response
err fuchsia.posix/Errno

BaseSocket_GetOutOfBandInline_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetOutOfBandInline_Response
err fuchsia.posix/Errno

BaseSocket_GetPeerName_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetPeerName_Response
err fuchsia.posix/Errno

BaseSocket_GetReceiveBuffer_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetReceiveBuffer_Response
err fuchsia.posix/Errno

BaseSocket_GetReuseAddress_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetReuseAddress_Response
err fuchsia.posix/Errno

BaseSocket_GetReusePort_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetReusePort_Response
err fuchsia.posix/Errno

BaseSocket_GetSendBuffer_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetSendBuffer_Response
err fuchsia.posix/Errno

BaseSocket_GetSockName_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetSockName_Response
err fuchsia.posix/Errno

BaseSocket_GetSockOpt_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetSockOpt_Response
err fuchsia.posix/Errno

BaseSocket_GetTimestamp_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_GetTimestamp_Response
err fuchsia.posix/Errno

BaseSocket_SetBindToDevice_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetBindToDevice_Response
err fuchsia.posix/Errno

BaseSocket_SetBroadcast_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetBroadcast_Response
err fuchsia.posix/Errno

BaseSocket_SetIpMulticastInterface_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpMulticastInterface_Response
err fuchsia.posix/Errno

BaseSocket_SetIpMulticastLoopback_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpMulticastLoopback_Response
err fuchsia.posix/Errno

BaseSocket_SetIpMulticastTtl_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpMulticastTtl_Response
err fuchsia.posix/Errno

BaseSocket_SetIpPacketInfo_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpPacketInfo_Response
err fuchsia.posix/Errno

BaseSocket_SetIpReceiveTypeOfService_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpReceiveTypeOfService_Response
err fuchsia.posix/Errno

BaseSocket_SetIpTtl_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpTtl_Response
err fuchsia.posix/Errno

BaseSocket_SetIpTypeOfService_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpTypeOfService_Response
err fuchsia.posix/Errno

BaseSocket_SetIpv6MulticastHops_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpv6MulticastHops_Response
err fuchsia.posix/Errno

BaseSocket_SetIpv6MulticastInterface_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpv6MulticastInterface_Response
err fuchsia.posix/Errno

BaseSocket_SetIpv6MulticastLoopback_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpv6MulticastLoopback_Response
err fuchsia.posix/Errno

BaseSocket_SetIpv6Only_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpv6Only_Response
err fuchsia.posix/Errno

BaseSocket_SetIpv6ReceiveTrafficClass_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpv6ReceiveTrafficClass_Response
err fuchsia.posix/Errno

BaseSocket_SetIpv6TrafficClass_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetIpv6TrafficClass_Response
err fuchsia.posix/Errno

BaseSocket_SetKeepAlive_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetKeepAlive_Response
err fuchsia.posix/Errno

BaseSocket_SetLinger_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetLinger_Response
err fuchsia.posix/Errno

BaseSocket_SetNoCheck_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetNoCheck_Response
err fuchsia.posix/Errno

BaseSocket_SetOutOfBandInline_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetOutOfBandInline_Response
err fuchsia.posix/Errno

BaseSocket_SetReceiveBuffer_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetReceiveBuffer_Response
err fuchsia.posix/Errno

BaseSocket_SetReuseAddress_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetReuseAddress_Response
err fuchsia.posix/Errno

BaseSocket_SetReusePort_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetReusePort_Response
err fuchsia.posix/Errno

BaseSocket_SetSendBuffer_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetSendBuffer_Response
err fuchsia.posix/Errno

BaseSocket_SetSockOpt_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetSockOpt_Response
err fuchsia.posix/Errno

BaseSocket_SetTimestamp_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response BaseSocket_SetTimestamp_Response
err fuchsia.posix/Errno

DatagramSocket_GetInfo_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response DatagramSocket_GetInfo_Response
err fuchsia.posix/Errno

DatagramSocket_RecvMsg_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response DatagramSocket_RecvMsg_Response
err fuchsia.posix/Errno

DatagramSocket_SendMsg_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response DatagramSocket_SendMsg_Response
err fuchsia.posix/Errno

DatagramSocket_Shutdown_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response DatagramSocket_Shutdown_Response
err fuchsia.posix/Errno

OptionalUint32

Defined in fuchsia.posix.socket/socket.fidl

An optional uint32 value.

NameTypeDescription
value uint32
unset Empty

OptionalUint8

Defined in fuchsia.posix.socket/socket.fidl

An optional byte value.

NameTypeDescription
value uint8
unset Empty

Provider_DatagramSocket_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response Provider_DatagramSocket_Response
err fuchsia.posix/Errno

Provider_InterfaceIndexToName_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response Provider_InterfaceIndexToName_Response
err zx/status

Provider_InterfaceNameToFlags_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response Provider_InterfaceNameToFlags_Response
err zx/status

Provider_InterfaceNameToIndex_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response Provider_InterfaceNameToIndex_Response
err zx/status

Provider_StreamSocket_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response Provider_StreamSocket_Response
err fuchsia.posix/Errno

StreamSocket_Accept_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_Accept_Response
err fuchsia.posix/Errno

StreamSocket_GetInfo_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetInfo_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpCongestion_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpCongestion_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpCork_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpCork_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpDeferAccept_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpDeferAccept_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpInfo_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpInfo_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpKeepAliveCount_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpKeepAliveCount_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpKeepAliveIdle_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpKeepAliveIdle_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpKeepAliveInterval_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpKeepAliveInterval_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpLinger_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpLinger_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpMaxSegment_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpMaxSegment_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpNoDelay_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpNoDelay_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpQuickAck_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpQuickAck_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpSynCount_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpSynCount_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpUserTimeout_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpUserTimeout_Response
err fuchsia.posix/Errno

StreamSocket_GetTcpWindowClamp_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_GetTcpWindowClamp_Response
err fuchsia.posix/Errno

StreamSocket_Listen_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_Listen_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpCongestion_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpCongestion_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpCork_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpCork_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpDeferAccept_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpDeferAccept_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpKeepAliveCount_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpKeepAliveCount_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpKeepAliveIdle_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpKeepAliveIdle_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpKeepAliveInterval_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpKeepAliveInterval_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpLinger_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpLinger_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpMaxSegment_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpMaxSegment_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpNoDelay_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpNoDelay_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpQuickAck_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpQuickAck_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpSynCount_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpSynCount_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpUserTimeout_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpUserTimeout_Response
err fuchsia.posix/Errno

StreamSocket_SetTcpWindowClamp_Result

Defined in fuchsia.posix.socket/socket.fidl

NameTypeDescription
response StreamSocket_SetTcpWindowClamp_Response
err fuchsia.posix/Errno

BITS

InterfaceFlags

Type: uint16

Defined in fuchsia.posix.socket/socket.fidl

Bits representing the interface flags as returned by the SIOCGIFFLAGS ioctl operation. These bitmasks are intended to track the C API definition. For example, InterfaceFlags.UP corresponds to IFF_UP, etc.

NameValueDescription
UP 1
BROADCAST 2
DEBUG 4
LOOPBACK 8
POINTTOPOINT 16
NOTRAILERS 32
RUNNING 64
NOARP 128
PROMISC 256
ALLMULTI 512
LEADER 1024
FOLLOWER 2048
MULTICAST 4096
PORTSEL 8192
AUTOMEDIA 16384
DYNAMIC 32768

RecvMsgFlags

Type: uint16

Defined in fuchsia.posix.socket/socket.fidl

Flags controlling RecvMsg behavior.

NameValueDescription
PEEK 2

Returns data from the receive queue without removing from it.

Equivalent to MSG_PEEK.

SendMsgFlags

Type: uint16

Defined in fuchsia.posix.socket/socket.fidl

NameValueDescription
RESERVED 32768

ShutdownMode

Type: uint16

Defined in fuchsia.posix.socket/socket.fidl

Socket shutdown mode.

NameValueDescription
READ 1

Shutdown socket read endpoint.

WRITE 2

Shutdown socket write endpoint.

CONSTANTS

NameValueTypeDescription
INTERFACE_NAME_LENGTH 15 uint8

The maximum length of an interface name.

TYPE ALIASES

NameValueDescription
interface_name string[INTERFACE_NAME_LENGTH]

An interface name as a sequence of bytes.

sockopt vector[900]

Chosen to be large enough to hold whatever we might want to cram in it. So long as we support socket options, we don't have a good sense of what we might want to send as payload.