template <>
class WireWeakAsyncClientImpl
Defined at line 10071 of file fidling/gen/sdk/fidl/fuchsia.posix.socket.packet/fuchsia.posix.socket.packet/cpp/fidl/fuchsia.posix.socket.packet/cpp/wire_messaging.h
Public Methods
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::Close> Close ()
Terminates the connection.
After calling `Close`, the client must not send any other requests.
Servers, after sending the status response, should close the connection
regardless of status and without sending an epitaph.
Closing the client end of the channel should be semantically equivalent
to calling `Close` without knowing when the close has completed or its
status.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::Query> Query ()
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetReuseAddress> SetReuseAddress (bool value)
Set `SOL_SOCKET` -> `SO_REUSEADDR`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetReuseAddress> GetReuseAddress ()
Get `SOL_SOCKET` -> `SO_REUSEADDR`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetError> GetError ()
Get `SOL_SOCKET` -> `SO_ERROR`.
Returns the last error if there is an error set on the socket.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetBroadcast> SetBroadcast (bool value)
Set `SOL_SOCKET` -> `SO_BROADCAST`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetBroadcast> GetBroadcast ()
Get `SOL_SOCKET` -> `SO_BROADCAST`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetSendBuffer> SetSendBuffer (uint64_t value_bytes)
Set `SOL_SOCKET` -> `SO_SNDBUF`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetSendBuffer> GetSendBuffer ()
Get `SOL_SOCKET` -> `SO_SNDBUF`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetReceiveBuffer> SetReceiveBuffer (uint64_t value_bytes)
Set `SOL_SOCKET` -> `SO_RCVBUF`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetReceiveBuffer> GetReceiveBuffer ()
Get `SOL_SOCKET` -> `SO_RCVBUF`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetKeepAlive> SetKeepAlive (bool value)
Set `SOL_SOCKET` -> `SO_KEEPALIVE`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetKeepAlive> GetKeepAlive ()
Get `SOL_SOCKET` -> `SO_KEEPALIVE`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetOutOfBandInline> SetOutOfBandInline (bool value)
Set `SOL_SOCKET` -> `SO_OOBINLINE`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetOutOfBandInline> GetOutOfBandInline ()
Get `SOL_SOCKET` -> `SO_OOBINLINE`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetNoCheck> SetNoCheck (bool value)
Set `SOL_SOCKET` -> `SO_NO_CHECK`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetNoCheck> GetNoCheck ()
Get `SOL_SOCKET` -> `SO_NO_CHECK`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetLinger> SetLinger (bool linger, uint32_t length_secs)
Set `SOL_SOCKET` -> `SO_LINGER`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetLinger> GetLinger ()
Get `SOL_SOCKET` -> `SO_LINGER`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetReusePort> SetReusePort (::fuchsia_posix_socket::wire::ReusePortOption value)
Set `SOL_SOCKET` -> `SO_REUSEPORT`.
Allocates 32 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetReusePortDeprecated> SetReusePortDeprecated (bool value)
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetReusePort> GetReusePort ()
Get `SOL_SOCKET` -> `SO_REUSEPORT`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetAcceptConn> GetAcceptConn ()
Get `SOL_SOCKET` -> `SO_ACCEPTCONN`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetBindToDevice> SetBindToDevice (::fidl::StringView value)
Set `SOL_SOCKET` -> `SO_BINDTODEVICE`.
Allocates 48 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetBindToDevice> GetBindToDevice ()
Get `SOL_SOCKET` -> `SO_BINDTODEVICE`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetBindToInterfaceIndex> SetBindToInterfaceIndex (uint64_t value)
Set `SOL_SOCKET` -> `SO_BINDTOIFINDEX`.
If `value` is 0, this clears the bound interface.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetBindToInterfaceIndex> GetBindToInterfaceIndex ()
Get `SOL_SOCKET` -> `SO_BINDTOIFINDEX`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetTimestamp> SetTimestamp (::fuchsia_posix_socket::wire::TimestampOption value)
Set `SOL_SOCKET` -> `SO_TIMESTAMP` or `SO_TIMESTAMPNS`.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetTimestamp> GetTimestamp ()
Get `SOL_SOCKET` -> `SO_TIMESTAMP` or `SO_TIMESTAMPNS`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SetMark> SetMark (::fuchsia_net::wire::MarkDomain domain, ::fuchsia_posix_socket::wire::OptionalUint32 mark)
Like setting `SOL_SOCKET` -> `SO_MARK`. The major difference is that
unlike the standard SO_MARK, this API has multiple mark domains and each
mark can be set independently in each domain.
Allocates 40 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetMark> GetMark (::fuchsia_net::wire::MarkDomain domain)
Like getting `SOL_SOCKET` -> `SO_MARK`. The major difference is that
unlike the standard SO_MARK, this API has multiple mark domains and each
mark can be retrieved independently in each domain.
Allocates 24 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetCookie> GetCookie ()
Get `SOL_SOCKET` -> `SO_COOKIE`.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::Describe> Describe ()
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::Bind> Bind (::fidl::WireOptional< ::fuchsia_posix_socket_packet::wire::ProtocolAssociation> protocol, ::fuchsia_posix_socket_packet::wire::BoundInterfaceId bound_interface_id)
Bind the socket to a protocol and/or interface.
+ request `protocol` the socket's new protocol association.
+ request `bound_interface_id` the socket's new interface binding.
Allocates 56 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::GetInfo> GetInfo ()
Returns the the socket's properties.
- response `kind` the socket's `Kind`.
- response `protocol` the socket's protocol association, if associated.
- response `bound_interface` properties of the socket's interface
binding.
Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::RecvMsg> RecvMsg (bool want_packet_info, uint32_t data_len, bool want_control, ::fuchsia_posix_socket::wire::RecvMsgFlags flags)
Receives a message from the socket.
+ request `want_packet_info` request information about the packet to be
returned.
+ request `data_len` the maximum allowed length of the response data
buffer.
+ request `want_control` request ancillary data to be returned.
+ request `flags` flags for the receive request.
- response `packet_info` information about the packet, if requested.
- response `data` the message.
- response `control` control messages, if requested.
- response `truncated` indicates whether or not the returned message
was truncated.
Allocates 32 bytes of request buffer on the stack. The callback is stored on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::SendMsg> SendMsg (::fidl::ObjectView< ::fuchsia_posix_socket_packet::wire::PacketInfo> packet_info, ::fidl::VectorView<uint8_t> data, ::fuchsia_posix_socket_packet::wire::SendControlData control, ::fuchsia_posix_socket::wire::SendMsgFlags flags)
Sends a message on the socket.
+ request `packet_info` information about the packet.
+ request `data` the message.
+ request `control` ancillary data.
+ request `flags` flags for the send request.
The request and callback are allocated on the heap.
::fidl::internal::WireThenable< ::fuchsia_posix_socket_packet::Socket::AttachBpfFilterUnsafe> AttachBpfFilterUnsafe (::fidl::VectorView<uint64_t> code)
Attaches the specified eBPF filter. The filter is assumed to be verified with 2 arguments
1. Pointer to the packet of size 0, i.e. not accessed directly (only using cBPF packet
load instructions).
2. Packet size (BPF_LOAD).
Helper functions and maps are not supported.
The request and callback are allocated on the heap.