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


CONNECT call

z/OS Communications Server: IP CICS Sockets Guide
SC27-3649-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 RETCODE of 0 indicates that the connection was completed.
    • A nonzero RETCODE with an ERRNO of 36 (EINPROGRESS) indicates that the connection is not completed but 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 call.

The following requirements apply to this call:
Requirement Description
Authorization: Supervisor state or problem state, any PSW key
Dispatchable unit mode: Task
Cross memory mode: PASN = HASN
Amode: 31-bit or 24-bit
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  FLOW-INFO   PIC 9(8) BINARY.                         
            03  IP-ADDRESS.                                          
                05  FILLER  PIC 9(16) BINARY.                        
                05  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 assembler language declarations, see Converting parameter descriptions.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014