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


READ call

z/OS Communications Server: IP CICS Sockets Guide
SC27-3649-00

The READ call reads the data on sockets. This is the conventional TCP⁄IP read data operation. If a datagram packet is too long to fit in the supplied buffer, datagram sockets discard extra bytes.

For stream sockets, data is processed as streams of information with no boundaries separating the data. For example, if programs A and B are connected with a stream socket and program A sends 1000 bytes, each call to this function can return any number of bytes up to the entire 1000 bytes. The number of bytes returned is contained in RETCODE. Therefore, programs using stream sockets should place this call in a loop that repeats until all data has been received.
Note: See EZACIC05 program for a subroutine that translates ASCII input data to EBCDIC.
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
Note: See "Addressability mode (Amode) considerations" under Environmental restrictions and programming requirements for the Callable Socket API.
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 READ call instructions.

Figure 1. READ call instruction example
    WORKING-STORAGE SECTION.
        01  SOC-FUNCTION    PIC X(16)  VALUE IS 'READ'.
        01  S               PIC 9(4) BINARY.
        01  NBYTE           PIC 9(8) BINARY.
        01  BUF             PIC X(length of buffer).
        01  ERRNO           PIC 9(8) BINARY.
        01  RETCODE         PIC S9(8) BINARY.
 
    PROCEDURE DIVISION.
         CALL 'EZASOKET' USING SOC-FUNCTION S NBYTE BUF
                         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