z/OS Communications Server: SNA Programming
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Logic of the RESP exit routine

z/OS Communications Server: SNA Programming
SC27-3674-00

Figure 1 shows the logic of the RESP exit routine. This routine is entered when the response is received to an output request that has POST=SCHED specified in a 3600 or 3270 output routine. The output operations have been scheduled with responses to be returned by the LU so that completion of each operation can be determined. (It is also possible for all output operations to be specified with POST=RESP. In this case, the response is received by VTAM® and its nature determined by the VTAM application program after ECB posting or RPL exit routine scheduling. No RESP exit routine is required.)

When the VTAM application program gets control in its RESP exit routine, a RECEIVE is not issued. The nature of the response is determined by examining the RESPOND and other fields of an RPL that are in VTAM's storage. The address of this RPL is in a parameter list whose address is in register 1 when the RESP exit routine is entered. The session area (the ECB, RPL, and session-related control block) can be located by the address in the USER field of the VTAM RPL. (It contains whatever was placed in the USERFLD field of the NIB when the session was established.)

Figure 1. Logic of the RESP exit routine
The diagram shows the logic of the RESP exit routine with numbers referring to additional notes that explain the details.
The following notes are keyed to Figure 1.
1
If the response is positive, the appropriate ECB is posted and a return is made to VTAM. Even if other action must be taken because the response is negative, the ECB is posted so that the wait routine knows that the operation has been completed.
2
The RESP exit routine can use the SYNAD exit routine to analyze a negative response; if so, the user could set up the appropriate registers and branch directly to the SYNAD exit routine.
3
If the situation is defined by the SYNAD exit routine to be recoverable, the operation is retried. If it is part of a chaining operation, it might be necessary to save the sequence number of the output request to which a negative response was returned so that the chaining routine can determine the sequence number at which it starts a retry. If the session's inbound sequence number (outbound from the host) must be reset, a SESSIONC can be used to synchronize sequence numbers. This logic can also be in the SYNAD exit routine.

On completion, the RESP exit routine returns control to VTAM.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014