CQSSHUT request

A CQSSHUT request notifies CQS to terminate after all clients have disconnected.

Format for CQSSHUT

DSECT function of CQSSHUT

You use the DSECT function of a CQSSHUT request to include equate (EQU) statements in your program for the CQSSHUT parameter list length and CQSSHUT return and reason codes.

Read syntax diagramSkip visual syntax diagramCQSSHUTFUNC=DSECT

QUIESCE function of CQSSHUT

Use the QUIESCE function of a CQSSHUT request to terminate CQS.

Figure 0.
Read syntax diagramSkip visual syntax diagramCQSSHUTFUNC=QUIESCECQSTOKEN= cqstokenaddressPARM= parmaddressECB= ecbaddressRETCODE= returncodeaddressRSNCODE= reasoncodeaddress

Usage of CQSSHUT

A CQSSHUT request notifies CQS to terminate after all clients have disconnected. After the CQSSHUT request is issued, CQS stops accepting CQSCONN requests. CQS continues to accept input or output requests, so that clients can complete work in progress. In order to complete the shutdown process, clients must stop working and issue CQSDISC requests to disconnect from CQS. After all clients have disconnected, CQS terminates all tasks and returns control to z/OS®.

Parameter Description:

CQSTOKEN=cqstokenaddress
Input parameter that specifies the address of the 16-byte CQS registration token that uniquely identifies the client's connection to CQS. The registration token is returned by the CQSREG request.
ECB=ecbaddress
Four-byte input parameter that specifies the address of the z/OS event control block (ECB) used for asynchronous requests. If ECB is specified, the request is processed asynchronously; otherwise, it is processed synchronously.
PARM=parmaddress
Four-byte input parameter that specifies the address of a parameter list used by the request to pass parameters to CQS. The length of the storage area must be at least equal to the EQU value CQSSHUT_PARM_LEN (defined using the FUNC=DSECT request).
RETCODE=returncodeaddress
Output parameter that specifies the address of a 4-byte field to contain the CQSSHUT return code.

If the return code in register 15 is nonzero, the values in the return and reason code fields are invalid, because the CQS interface detected an error and was unable to send the request to CQS.

RSNCODE=reasoncodeaddress
Four-byte output parameter that specifies the address of a field to contain the CQSSHUT reason code.

Return and reason codes for CQSSHUT

The following table lists the return and reason code combinations that can be returned for CQSSHUT requests. Use a CQSSHUT FUNC=DSECT request to include equate statements in your program for the return and reason codes.

Table 1. CQSSHUT return and reason codes
Return code Reason code Meaning
X'00000000' X'00000000' Request completed successfully.
X'00000008' X'00000210' cqstoken is invalid.
X'00000008' X'00000218' FUNC is invalid.
X'00000008' X'00000284' Parmlist version is invalid.
X'00000010' X'00000444' CQS initialization is in progress. Reissue the CQSSHUT request after initialization is complete.