Try OpenEdge Now
skip to main content
ABL Reference
Handle Attributes and Methods Reference : SET-SOCKET-OPTION( ) method
 

SET-SOCKET-OPTION( ) method

Sets the specified socket option. TCP supports a number of socket options. Please refer to TCP documentation for a description of these options.
Return type: LOGICAL
Applies to: Socket object handle

Syntax

SET-SOCKET-OPTION ( name , arguments )
name
A character expression which indicates the name of the socket option to be set.
arguments
A character expression that contains a comma separated list of arguments specific for the option.
The following table describes the options ABL supports.
Table 107. Options for the SET-SOCKET-OPTION( ) method
Option
Description
TCP-NODELAY
An enable indicator, which is either TRUE or FALSE.
SO-LINGER
Two comma separated values:
*The onoff indicator, which is either TRUE or FALSE.
*The linger time. If the onoff indicator is FALSE, the linger time does not need to be provided.
SO-KEEPALIVE
Sets the TCP socket option SO_KEEPALIVE.
Set arguments to TRUE to turn this option on or to FALSE to turn it off.
SO-REUSEADDR
Sets the TCP socket option SO_REUSEADDR.
Set arguments to TRUE to turn this option on or to FALSE to turn it off.
SO-RCVBUF
SO-SNDBUF
Sets the TCP socket option SO_RCVBUF or SO_SNDBUF.
Set arguments to the desired size of the buffer.
Note: Depending on your platform, the value you supply might be increased to the platform's minimum buffer size, decreased to the platform's maximum buffer size, or rounded up to the next multiple of the platform's segment size. For more information, see your platform's documentation.
SO-RCVTIMEO
Sets the timeout length—that is, the number of seconds the socket waits to receive data before timing out.
Set arguments to the desired timeout value in seconds.
If a timeout occurs, READ( ) returns TRUE and the value of BYTES-READ is zero. This is true whether the READ( ) mode is READ-AVAILABLE or READ-EXACT-NUM.
For more information on the interaction of READ( ), the READ( ) mode, and SO_RCVTIMEO, see OpenEdge Development: Programming Interfaces.
The SET-SOCKET-OPTION( ) method returns TRUE if setting the option succeeded and returns FALSE otherwise. An error can occur if:
*name is not an ABL supported socket option
*The arguments supplied for the option are not valid
*The SET-SOCKET-OPTION( ) operation fails