z/OS Communications Server: IP IMS Sockets Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


CONNECT

z/OS Communications Server: IP IMS Sockets Guide
SC27-3653-00

The CONNECT call is issued by a client to establish a connection between a local socket and a remote socket.

The call sequence issued by the client and server for stream sockets is:

  1. The server issues BIND and LISTEN to create a passive open socket.
  2. The client issues CONNECT to request the connection.
  3. The server accepts the connection on the passive open socket, creating a new connected socket.

The blocking mode of the CONNECT call conditions its operation.

  • If the socket is in blocking mode, the CONNECT call blocks the calling program until the connection is established, or until an error is received.
  • If the socket is in nonblocking mode, the return code indicates whether the connection request was successful.
    • A 0 RETCODE indicates that the connection was completed.
    • A nonzero RETCODE with an ERRNO of 36 (EINPROGRESS) indicates that the connection is not completed. However, because the socket is nonblocking, the CONNECT call returns normally.

    The caller must test the completion of the connection setup by calling SELECT and testing for the ability to write to the socket.

The completion cannot be checked by issuing a second CONNECT. For more information, see SELECT.

Table 1. CONNECT call requirements
Condition Requirement
Authorization: Supervisor state or problem state, any PSW key.
Dispatchable unit mode: Task.
Cross memory mode: PASN = HASN.
Amode: 31-bit or 24-bit.
Note: See the addressability mode (Amode) considerations under CALL instruction API environmental restrictions and programming requirements.
ASC mode: Primary address space control (ASC) mode.
Interrupt status: Enabled for interrupts.
Locks: Unlocked.
Control parameters: All parameters must be addressable by the caller and in the primary address space.

Figure 1 shows an example of CONNECT call instructions.

Figure 1. CONNECT call instruction example
    WORKING-STORAGE SECTION.
        01  SOC-FUNCTION    PIC X(16)  VALUE IS 'CONNECT'.
        01  S               PIC 9(4) BINARY.

    * IPv4 socket address structure.
        01  NAME.
            03  FAMILY      PIC 9(4) BINARY.
            03  PORT        PIC 9(4) BINARY.
            03  IP-ADDRESS  PIC 9(8) BINARY.
            03  RESERVED    PIC X(8).

    * IPv6 socket address structure.
        01  NAME.
            03  FAMILY      PIC 9(4) BINARY.
            03  PORT        PIC 9(4) BINARY.
            03  IP-ADDRESS  PIC 9(8) BINARY.
            03  FLOWINFO    PIC 9(8) BINARY.
            03  IP-ADDRESS.
                10 FILLER   PIC 9(16) BINARY.
                10 FILLER   PIC 9(16) BINARY.
            03  SCOPE-ID    PIC 9(8) BINARY.
        01  ERRNO           PIC 9(8) BINARY.
        01  RETCODE         PIC S9(8) BINARY.
 
 
   PROCEDURE DIVISION.
 
    CALL 'EZASOKET' USING SOC-FUNCTION S NAME ERRNO RETCODE.

For equivalent PL/I and assembly language declarations, see Converting parameter descriptions.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014