REXX runtime functions
This section describes the runtime functions that are supported by the REXX socket function. When applicable, the LE C/C++ Equivalent call is also shown.
| Commands to process socket sets | |
|---|---|
| INITIALIZE | Use the INITIALIZE command to preallocate a socket set. |
| SOCKETSET | Use the SOCKETSET command to retrieve the name of the active socket set. If you specify the name of a socket set as a parameter, then that socket set becomes the active socket set. |
| SOCKETSETLIST | Use the SOCKETSETLIST command to list the names of all available socket sets that are currently defined by the application. |
| SOCKETSETSTATUS | Use the SOCKETSETSTATUS command to list information about a socket set. |
| TERMINATE | Use the TERMINATE command to close all sockets in the specified socket set and to release the socket set. |
| Commands to open, close, and manipulate sockets | |
| ACCEPT | Use the ACCEPT command to accept new connections from a client. |
| BIND | Use the BIND command to bind a local NAME string to a socket descriptor. |
| BIND2ADDRSEL | Use the BIND2ADDRSEL command to bind a socket to the local IP address that would be selected by the stack to communicate with the input destination IP address. |
| CLOSE | Use the CLOSE command to close a socket and release the resources that are associated with the socket descriptor. |
| CONNECT | A client application uses the CONNECT command to establish a connection between a local socket and a remote socket. |
| GIVESOCKET | Use the GIVESOCKET command to transfer a socket descriptor to another application that is running on the same host. |
| LISTEN | Use the LISTEN command to determine whether a socket is ready to accept client connection requests. |
| SHUTDOWN | Use the SHUTDOWN command to shut down all or part of a duplex connection. |
| SOCKET | Use the SOCKET command to open a socket descriptor in the active socket set. |
| TAKESOCKET | Use the TAKESOCKET command to take a socket descriptor that is passed from another program using the GIVESOCKET command. A socket descriptor can be taken by an application only when the socket is in the same address family. |
| Commands to exchange data on sockets | |
| READ | Use the READ command to read data on the specified socket. The maximum amount of data to be read is specified by the maxlength parameter. If the socket is in blocking mode and data is not available on the socket, the command blocks until data arrives. |
| RECV | Use the RECV command to receive data on a specified socket. The RECV command can be issued only against connected sockets. |
| RECVFROM | Use the RECVFROM command to receive data on the specified socket. |
| SEND | Use the SEND command to send an outgoing message on the connected socket. |
| SENDTO | Use the SENDTO command to send an outgoing message on a socket descriptor. This command differs from the SEND command in that it includes the destination address as a parameter. |
| WRITE | Use the WRITE command to send an outgoing message on the connected socket. The WRITE command is similar to the SEND command, except that the WRITE command does not support the control flags that are available with the SEND command. |
| Commands to resolve host names and IP addresses | |
| GETADDRINFO | Use the GETADDRINFO command to resolve host or service name information. |
| GETCLIENTID | Use the GETCLIENTID command to retrieve the client ID for the calling application. The client ID is the identifier by which the calling application is known to the TCP/IP address space. |
| GETDOMAINNAME | Use the GETDOMAINNAME command to retrieve the name of the domain to which the current TCP/IP stack belongs. |
| GETHOSTBYADDR | Use the GETHOSTBYADDR command to resolve an IPv4 address to a host name. |
| GETHOSTBYNAME | Use the GETHOSTBYNAME command to resolve a host name to an IPv4 address. |
| GETHOSTID | Use the GETHOSTID command to return the primary IPv4 address for the current host. The primary address is the IP address of the default home address that is specified in the TCP/IP configuration file for the stack with which the current socket set is associated. |
| GETHOSTNAME | Use the GETHOSTNAME command to return the name of the host on which the application is running |
| GETNAMEINFO | Use the GETNAMEINFO command to translate a socket address to a node name and service location. |
| GETPEERNAME | Use the GETPEERNAME command to return the name of the remote peer that is connected to the socket. |
| GETPROTOBYNAME | Use the GETPROTOBYNAME command to translate a network protocol name to a protocol number. |
| GETPROTOBYNUMBER | Use the GETPROTOBYNUMBER command to translate a network protocol number to a protocol name. |
| GETSERVBYNAME | Use the GETSERVBYNAME command to retrieve a service and port number. |
| GETSERVBYPORT | Use the GETSERVBYPORT command to translate a port number to the name of the service that is using the port. |
| GETSOCKNAME | Use the GETSOCKNAME command to retrieve the name of a bound socket. |
| INET6ISSRCADDR | Use the INET6ISSRCADDR command to indicate whether an input IPV6 socket address matches an address that is defined to the stack, which conforms to one or more input IPV6_ADDR_PREFERENCES flags. |
| RESOLVE | Use the RESOLVE command to resolve a host name or an IP address. |
| Commands to manage socket configuration, options, and modes | |
| FCNTL | Use the FCNTL command to control the operating characteristics of a socket. |
| GETSOCKOPT | Use the GETSOCKOPT command to retrieve the active socket options that were set by the SETSOCKOPT command. |
| IOCTL | Use the IOCTL command to perform control functions on sockets. |
| SELECT | Use the SELECT command to monitor groups of sockets to determine when one or more of the sockets is ready for a read operation, is ready for a write operation, or has an exception pending. |
| SETSOCKOPT | Use the SETSOCKOPT command to set socket options. |
| VERSION | Use the VERSION command to retrieve the name, version number, and version date of the REXX socket library. |