const class inet::SocketConfig
sys::Obj inet::SocketConfig
Configuration options for TCP and UDP sockets. All socket types accept a socket configuration which will be used to configure the socket when it is created.
A system-wide default socket configuration can be obtained with SocketConfig.cur. You can change the system default by using SocketConfig.setCur.
See TcpSocket.make, TcpListener.make, UdpSocket.make, MulticastSocket.make
- acceptTimeout
 - 
const Duration? acceptTimeout := nullControls how long a
TcpListener.acceptwill block before throwing an IOErr timeout exception.nullis used to indicate infinite timeout. - broadcast
 - 
const Bool broadcast := falseSO_BROADCASTsocket option - connectTimeout
 - 
const Duration? connectTimeout := 1minControls the default timeout used by
TcpSocket.connect. A null value indicates a system default timeout (usually wait forever). - copy
 - 
Create a copy of this configuration and then apply any overrides from the it-block.
 - cur
 - 
static SocketConfig cur()Get the current, default socket configuration
 - inBufferSize
 - 
const Int? inBufferSize := 4096The size in bytes for the sys::InStream buffer. A value of 0 or null disables input stream buffing.
 - keepAlive
 - 
const Bool keepAlive := falseSO_KEEPALIVEoption - keystore
 - 
const KeyStore? keystore := nullThe
KeyStoreto use when creating secure sockets. If null, the runtime default will be used. - linger
 - 
const Duration? linger := nullSO_LINGERcontrols the linger time or set to null to disable linger. - make
 - 
new make(|This|? f := null)Create and configure the socket options.
 - noDelay
 - 
const Bool noDelay := trueTCP_NODELAYsocket option specifies that send not be delayed to merge packets (Nagle's algorthm). - outBufferSize
 - 
const Int? outBufferSize := 4096The size in bytes for the sys::OutStream buffer. A value of 0 or null disables output stream buffing.
 - receiveBufferSize
 - 
const Int receiveBufferSize := 65536SO_RCVBUFoption for the size in bytes of the IP stack buffers. - receiveTimeout
 - 
const Duration? receiveTimeout := 1minSO_TIMEOUTcontrols the amount of time a socket will block on a read call before throwing an IOErr timeout exception.nullis used to indicate an infinite timeout. - reuseAddr
 - 
const Bool reuseAddr := falseSO_REUSEADDRis used to control the time wait state of a closed socket. - sendBufferSize
 - 
const Int sendBufferSize := 65536SO_SNDBUFoption for the size in bytes of the IP stack buffers. - setCur
 - 
static Void setCur(SocketConfig cfg)Set a new default socket configuration. This configuration will only apply to new sockets created after this is called. This method may only be called once to change the default socket configuration.
 - setTimeouts
 - 
This setTimeouts(Duration? connectTimeout, Duration? receiveTimeout := connectTimeout)Convenience to create a copy of this socket configuration and set the connect and receive timeouts to the given duration. Setting to
nullindicates infinite timeouts. - trafficClass
 - 
const Int trafficClass := 0The 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.
 - truststore
 - 
const KeyStore? truststore := nullThe
KeyStoreto use for obtaining trusted certificates when creating secure sockets. If null, the runtime default will be used.