SocketOptions
class SocketOptions : Obj
SocketOptions groups together all the socket options used to tune a TcpSocket, TcpListener, or UdpSocket. See the options method of each of those classes for which options apply. Accessing an unsupported option for a particular socket type will throw UnsupportedErr.
SO_BROADCAST socket option
SO_REUSEADDR socket option is used to control the time wait state of a closed socket
SO_KEEPALIVE socket option
SO_RCVBUF option for the size in bytes of the IP stack buffers
The size in bytes for the sys::InStream buffer
SO_LINGER socket option controls the linger time or set to null to disable linger
SO_TIMEOUT socket option controls the amount of time this socket will block on a read call before throwing an IOErr timeout exception
TCP_NODELAY socket option specifies that send not be delayed to merge packets (Nagle's algorthm)
SO_SNDBUF option for the size in bytes of the IP stack buffers
Controls default timeout used by TcpSocket.connect
The type-of-class byte in the IP packet header
The size in bytes for the sys::OutStream buffer
Set all of this instance's options from the specified options
Bool : broadcast
SO_BROADCAST socket option.
@Deprecated { msg="Use SocketConfig.connectTimeout" }
Duration? : connectTimeout
Controls default timeout used by TcpSocket.connect. A null value indicates a system default timeout.
Void copyFrom(SocketOptions options)
Set all of this instance's options from the specified options.
Int? : inBufferSize
The size in bytes for the sys::InStream buffer. A value of 0 or null disables input stream buffing. This field may only be set before the socket is connected otherwise Err is thrown.
Bool : keepAlive
SO_KEEPALIVE socket option.
Duration? : linger
SO_LINGER socket option controls the linger time or set to null to disable linger.
Bool : noDelay
TCP_NODELAY socket option specifies that send not be delayed to merge packets (Nagle's algorthm).
Int? : outBufferSize
The size in bytes for the sys::OutStream buffer. A value of 0 or null disables output stream buffing. This field may only be set before the socket is connected otherwise Err is thrown.
Int : receiveBufferSize
SO_RCVBUF option for the size in bytes of the IP stack buffers.
Duration? : receiveTimeout
SO_TIMEOUT socket option controls the amount of time this socket will block on a read call before throwing an IOErr timeout exception. Null is used to indicate an infinite timeout.
Bool : reuseAddr
SO_REUSEADDR socket option is used to control the time wait state of a closed socket.
Int : sendBufferSize
SO_SNDBUF option for the size in bytes of the IP stack buffers.
Int : trafficClass
The type-of-class byte in the IP packet header.
For IPv4 this value is detailed in RFC 1349 as the following bitset:
- IPTOS_LOWCOST (0x02)
- IPTOS_RELIABILITY (0x04)
- IPTOS_THROUGHPUT (0x08)
- IPTOS_LOWDELAY (0x10)
For IPv6 this is the value placed into the sin6_flowinfo header field.