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.
Bind
Sets the local address used for the socket.
Request
Name | Type |
---|---|
addr |
fuchsia.net/SocketAddress
|
Response
Name | Type |
---|---|
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.
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
Name | Type |
---|---|
flags |
uint32
|
object |
request<fuchsia.io/Node>
|
Close
Terminates connection with object.
This method does not require any rights.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
s |
zx/status
|
Connect
Initiates a connection to a remote address.
Request
Name | Type |
---|---|
addr |
fuchsia.net/SocketAddress
|
Response
Name | Type |
---|---|
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
Name | Type |
---|
Response
Name | Type |
---|---|
info |
fuchsia.io/NodeInfo
|
Disconnect
Clears connection information from this socket.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_Disconnect_Result
|
GetAttr
Acquires information about the node.
This method does not require any rights.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
s |
zx/status
|
attributes |
fuchsia.io/NodeAttributes
|
GetPeerName
Retrieves the remote socket address.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_GetPeerName_Result
|
GetSockName
Retrieves the local socket address.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_GetSockName_Result
|
GetSockOpt
Retrieves the value of a socket option.
Request
Name | Type |
---|---|
level |
int16
|
optname |
int16
|
Response
Name | Type |
---|---|
result |
BaseSocket_GetSockOpt_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
Name | Type |
---|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
flags |
uint32
|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
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
.
Request
Name | Type |
---|---|
flags |
uint32
|
attributes |
fuchsia.io/NodeAttributes
|
Response
Name | Type |
---|---|
s |
zx/status
|
SetSockOpt
Sets the value of a socket option.
Request
Name | Type |
---|---|
level |
int16
|
optname |
int16
|
optval |
sockopt
|
Response
Name | Type |
---|---|
result |
BaseSocket_SetSockOpt_Result
|
Sync
Synchronizes updates to the node to the underlying media, if it exists.
This method does not require any rights.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
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.
Bind
Sets the local address used for the socket.
Request
Name | Type |
---|---|
addr |
fuchsia.net/SocketAddress
|
Response
Name | Type |
---|---|
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.
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
Name | Type |
---|---|
flags |
uint32
|
object |
request<fuchsia.io/Node>
|
Close
Terminates connection with object.
This method does not require any rights.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
s |
zx/status
|
Connect
Initiates a connection to a remote address.
Request
Name | Type |
---|---|
addr |
fuchsia.net/SocketAddress
|
Response
Name | Type |
---|---|
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
Name | Type |
---|
Response
Name | Type |
---|---|
info |
fuchsia.io/NodeInfo
|
Disconnect
Clears connection information from this socket.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_Disconnect_Result
|
GetAttr
Acquires information about the node.
This method does not require any rights.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
s |
zx/status
|
attributes |
fuchsia.io/NodeAttributes
|
GetPeerName
Retrieves the remote socket address.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_GetPeerName_Result
|
GetSockName
Retrieves the local socket address.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_GetSockName_Result
|
GetSockOpt
Retrieves the value of a socket option.
Request
Name | Type |
---|---|
level |
int16
|
optname |
int16
|
Response
Name | Type |
---|---|
result |
BaseSocket_GetSockOpt_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
Name | Type |
---|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
flags |
uint32
|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
s |
zx/status
|
info |
fuchsia.io/NodeInfo?
|
RecvMsg
Receives a message from the socket.
Request
Name | Type |
---|---|
want_addr |
bool
|
data_len |
uint32
|
want_control |
bool
|
flags |
RecvMsgFlags
|
Response
Name | Type |
---|---|
result |
DatagramSocket_RecvMsg_Result
|
SendMsg
Sends a message on the socket.
Request
Name | Type |
---|---|
addr |
fuchsia.net/SocketAddress?
|
data |
vector<uint8>
|
control |
SendControlData
|
flags |
SendMsgFlags
|
Response
Name | Type |
---|---|
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
.
Request
Name | Type |
---|---|
flags |
uint32
|
attributes |
fuchsia.io/NodeAttributes
|
Response
Name | Type |
---|---|
s |
zx/status
|
SetSockOpt
Sets the value of a socket option.
Request
Name | Type |
---|---|
level |
int16
|
optname |
int16
|
optval |
sockopt
|
Response
Name | Type |
---|---|
result |
BaseSocket_SetSockOpt_Result
|
Shutdown
Shuts down part of the socket.
Request
Name | Type |
---|---|
mode |
ShutdownMode
|
Response
Name | Type |
---|---|
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
Name | Type |
---|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
domain |
Domain
|
proto |
DatagramSocketProtocol
|
Response
Name | Type |
---|---|
result |
Provider_DatagramSocket_Result
|
GetInterfaceAddresses
Requests a list of fuchsia.posix.socket.InterfaceAddresses describing the network interfaces on the system.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
index |
uint64
|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
name |
interface_name
|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
name |
interface_name
|
Response
Name | Type |
---|---|
result |
Provider_InterfaceNameToIndex_Result
|
StreamSocket
Requests a stream socket with the specified parameters.
Request
Name | Type |
---|---|
domain |
Domain
|
proto |
StreamSocketProtocol
|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
want_addr |
bool
|
Response
Name | Type |
---|---|
result |
StreamSocket_Accept_Result
|
Bind
Sets the local address used for the socket.
Request
Name | Type |
---|---|
addr |
fuchsia.net/SocketAddress
|
Response
Name | Type |
---|---|
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.
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
Name | Type |
---|---|
flags |
uint32
|
object |
request<fuchsia.io/Node>
|
Close
Terminates connection with object.
This method does not require any rights.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
s |
zx/status
|
Connect
Initiates a connection to a remote address.
Request
Name | Type |
---|---|
addr |
fuchsia.net/SocketAddress
|
Response
Name | Type |
---|---|
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
Name | Type |
---|
Response
Name | Type |
---|---|
info |
fuchsia.io/NodeInfo
|
Disconnect
Clears connection information from this socket.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_Disconnect_Result
|
GetAttr
Acquires information about the node.
This method does not require any rights.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
s |
zx/status
|
attributes |
fuchsia.io/NodeAttributes
|
GetPeerName
Retrieves the remote socket address.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_GetPeerName_Result
|
GetSockName
Retrieves the local socket address.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
result |
BaseSocket_GetSockName_Result
|
GetSockOpt
Retrieves the value of a socket option.
Request
Name | Type |
---|---|
level |
int16
|
optname |
int16
|
Response
Name | Type |
---|---|
result |
BaseSocket_GetSockOpt_Result
|
Listen
Begins listening for new incoming connections. At most backlog
connections will be
buffered.
Request
Name | Type |
---|---|
backlog |
int16
|
Response
Name | Type |
---|---|
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
Name | Type |
---|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
flags |
uint32
|
Response
Name | Type |
---|---|
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
Name | Type |
---|---|
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
.
Request
Name | Type |
---|---|
flags |
uint32
|
attributes |
fuchsia.io/NodeAttributes
|
Response
Name | Type |
---|---|
s |
zx/status
|
SetSockOpt
Sets the value of a socket option.
Request
Name | Type |
---|---|
level |
int16
|
optname |
int16
|
optval |
sockopt
|
Response
Name | Type |
---|---|
result |
BaseSocket_SetSockOpt_Result
|
Sync
Synchronizes updates to the node to the underlying media, if it exists.
This method does not require any rights.
Request
Name | Type |
---|
Response
Name | Type |
---|---|
s |
zx/status
|
STRUCTS
BaseSocket_Bind_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|
BaseSocket_Connect_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|
BaseSocket_Disconnect_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|
BaseSocket_GetPeerName_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
addr |
fuchsia.net/SocketAddress
|
No default |
BaseSocket_GetSockName_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
addr |
fuchsia.net/SocketAddress
|
No default |
BaseSocket_GetSockOpt_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
optval |
sockopt
|
No default |
BaseSocket_SetSockOpt_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|
DatagramSocket_RecvMsg_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
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
Name | Type | Description | Default |
---|---|---|---|
len |
int64
|
No default |
DatagramSocket_Shutdown_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|
Empty
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|
Provider_DatagramSocket_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
s |
DatagramSocket
|
No default |
Provider_InterfaceIndexToName_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
name |
interface_name
|
No default |
Provider_InterfaceNameToFlags_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
flags |
InterfaceFlags
|
No default |
Provider_InterfaceNameToIndex_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
index |
uint64
|
No default |
Provider_StreamSocket_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
s |
StreamSocket
|
No default |
StreamSocket_Accept_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|---|---|---|
addr |
fuchsia.net/SocketAddress?
|
No default | |
s |
StreamSocket
|
No default |
StreamSocket_Listen_Response
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description | Default |
---|
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.
Name | Value | Description |
---|---|---|
UDP |
1 |
UDP (User Datagram Protocol). A UDP socket is equivalent to the POSIX API of |
ICMP_ECHO |
2 |
ICMP (Internet Control Message Protocol) echo. An ICMP echo socket is equivalent to the POSIX API of 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.
Name | Value | Description |
---|---|---|
IPV4 |
0 |
An IPv4 socket. Equivalent to |
IPV6 |
1 |
An IPv6 socket. Equivalent to |
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.
Name | Value | Description |
---|---|---|
TCP |
0 |
TCP (Transmission Control Protocol). A TCP socket is equivalent to the POSIX API of |
TABLES
InterfaceAddresses
Defined in fuchsia.posix.socket/socket.fidl
Holds information about an interface and its addresses.
Ordinal | Name | Type | Description |
---|---|---|---|
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 |
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.
Ordinal | Name | Type | Description |
---|
SendControlData
Defined in fuchsia.posix.socket/socket.fidl
Ancillary data for sending datagram sockets.
Ordinal | Name | Type | Description |
---|
UNIONS
BaseSocket_Bind_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
BaseSocket_Bind_Response
|
|
err |
fuchsia.posix/Errno
|
BaseSocket_Connect_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
BaseSocket_Connect_Response
|
|
err |
fuchsia.posix/Errno
|
BaseSocket_Disconnect_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
BaseSocket_Disconnect_Response
|
|
err |
fuchsia.posix/Errno
|
BaseSocket_GetPeerName_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
BaseSocket_GetPeerName_Response
|
|
err |
fuchsia.posix/Errno
|
BaseSocket_GetSockName_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
BaseSocket_GetSockName_Response
|
|
err |
fuchsia.posix/Errno
|
BaseSocket_GetSockOpt_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
BaseSocket_GetSockOpt_Response
|
|
err |
fuchsia.posix/Errno
|
BaseSocket_SetSockOpt_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
BaseSocket_SetSockOpt_Response
|
|
err |
fuchsia.posix/Errno
|
DatagramSocket_RecvMsg_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
DatagramSocket_RecvMsg_Response
|
|
err |
fuchsia.posix/Errno
|
DatagramSocket_SendMsg_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
DatagramSocket_SendMsg_Response
|
|
err |
fuchsia.posix/Errno
|
DatagramSocket_Shutdown_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
DatagramSocket_Shutdown_Response
|
|
err |
fuchsia.posix/Errno
|
Provider_DatagramSocket_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
Provider_DatagramSocket_Response
|
|
err |
fuchsia.posix/Errno
|
Provider_InterfaceIndexToName_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
Provider_InterfaceIndexToName_Response
|
|
err |
zx/status
|
Provider_InterfaceNameToFlags_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
Provider_InterfaceNameToFlags_Response
|
|
err |
zx/status
|
Provider_InterfaceNameToIndex_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
Provider_InterfaceNameToIndex_Response
|
|
err |
zx/status
|
Provider_StreamSocket_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
Provider_StreamSocket_Response
|
|
err |
fuchsia.posix/Errno
|
StreamSocket_Accept_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
StreamSocket_Accept_Response
|
|
err |
fuchsia.posix/Errno
|
StreamSocket_Listen_Result
Defined in fuchsia.posix.socket/socket.fidl
Name | Type | Description |
---|---|---|
response |
StreamSocket_Listen_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.
Name | Value | Description |
---|---|---|
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.
Name | Value | Description |
---|---|---|
PEEK | 2 | Returns data from the receive queue without removing from it. Equivalent to |
SendMsgFlags
Type: uint16
Defined in fuchsia.posix.socket/socket.fidl
Name | Value | Description |
---|---|---|
RESERVED | 32768 |
ShutdownMode
Type: uint16
Defined in fuchsia.posix.socket/socket.fidl
Socket shutdown mode.
Name | Value | Description |
---|---|---|
READ | 1 | Shutdown socket read endpoint. |
WRITE | 2 | Shutdown socket write endpoint. |
CONSTANTS
Name | Value | Type | Description |
---|---|---|---|
INTERFACE_NAME_LENGTH |
15
|
uint8 |
The maximum length of an interface name. |
TYPE ALIASES
Name | Value | Description |
---|---|---|
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. |