CSLSCRQR request return request

Issuing the CSLSCRQR request returns a request to the IMSplex member from which the request originated. The return request should be issued when the server has completed the request and is ready to return the output from the request.

CSLSCRQR returns a request to the IMSplex member from which the request originated. It should be issued when the server has completed the request and is ready to return the output from the request. It copies the output back to the requestor's address space.

Only request servers can issue CSLSCRQR because an IMSplex member cannot issue the macro without first receiving a request. A request server must be authorized and running key 7.

CSLSCRQR syntax

CSLSCRQR DSECT syntax

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

Figure 0.
Read syntax diagramSkip visual syntax diagramCSLSCRQRFUNC=DSECT

CSLSCRQR RETURN syntax

The syntax for the CSLSCRQR FUNC=RETURN request follows.
Figure 0.
Read syntax diagramSkip visual syntax diagramCSLSCRQRFUNC=RETURNSCITOKEN= scitokenPARM= parmNOCPYABN=NNOCPYABN=YRQSTTKN= requesttokenRQSTRC= requestreturncodeRQSTRSN= requestreasoncodeRETCODE= returncodeRSNCODE= reasoncode

CSLSCRQR parameters

PARM=symbol
PARM=(r1-r12)
(Required) - Specifies the CSLSCRQR parameter list. The length of the parameter list must be at least equal to the basic parameter list length of SRQR_PARMLN. However, if you code certain parameters on CSLSCRQR, you must provide a longer parameter list. Use the following table to decide if you must provide a parameter list of a longer length. If you are using more than one parameter listed, and the parameters have different minimum length values, always use the one that ends with the largest numeric value.
Table 1. Parameters that require a parameter list length larger than SRQR_PARMLN
Length EQU Parameters that require this length
SRQR_PRMLV2 NOCPYABN

You can also define your parameter list to have a length of SRQR_PRMLMX bytes. This EQU is set to the length of the longest CSLSCRQR parameter list version, and the parameter list will always be long enough for any combination of macro parameters. However, this maximum length might change because of maintenance or across IMS releases.

NOCPYABN=N | Y
(Optional) - Specifies how SCI should handle an abend during the copy phase of the request return process.
N
SCI will take a dump and issue a message as determined by the logic in the ARR or FRR. NOCPYABDN=N is the default.
Y
SCI will not take a dump or issue a message if an abend is encountered while it attempts to copy data back to the requestor. SCI will only write an entry to the LOGREC data set.

This parameter was added as part of the Version 2 parameter list. If you include this parameter, your parameter list must be at least equal to the value specified by SQRQ_PRMLV2.

RQSTRC=symbol
RQSTRC=(r1-r12)
(Optional) - Specifies the return code that is associated with the request being returned. This return code will be given to the requesting member in the storage pointed to by the RETCODE parameter of the CSLSCRQS that originated this request. If this parameter is not specified, a return code of zero will be given to the requesting member.

If specified as a symbol, the symbol references storage that contains the return code.

RQSTRSN=symbol
RQSTRSN=(r1-r12)
(Optional) - Specifies the reason code that is associated with the request being returned. This reason code will be given to the requesting member in the storage pointed to by the RSNCODE parameter of the CSLSCRQS that originated this request. If this parameter is not specified, a reason code of zero will be given to the requesting member.

If specified as a symbol, the symbol references storage that contains the return code.

RQSTTKN=symbol
RQSTTKN=(r1-r12)
(Required) - Specifies the request token that is associated with the request being returned. This request token can be obtained from the input exit parameter list (INXP_RQSTTKN) when the request was presented to the request processing member.

If specified as a symbol, the symbol references storage that contains the return code.

RETCODE=symbol
RETCODE=(r1-r12)
(Required) - Specifies the address of a 4-byte field to receive the CSLSCRQR return code. SCI return codes are defined in CSLSRR. Possible return codes for CSLSCRQR are described in the following table.
RSNCODE=symbol
RSNCODE=(r1-r12)
(Required) - Specifies the address of a 4-byte field to receive the CSLSCRQR reason code. SCI reason codes are defined in CSLSRR. Possible reason codes for CSLSCRQR are described in the following table.
SCITOKEN=symbol
SCITOKEN=(r1-r12)
(Required) - Specifies a 16-byte field containing the SCI token. This token uniquely identifies this connection to SCI. The SCI token was returned by a successful CSLSCREG FUNC=REGISTER request.

CSLSCRQR return and reason codes

The following table lists the return and reason codes that can be returned on a CSLSCRQR macro request. Also included is the meaning of a reason code (that is, what possibly caused it).

Table 2. CSLSCRQR return and reason codes
Return code Reason code Meaning
X'00000000' X'00000000' The request completed successfully.
X'01000008' X'00002004' The function passed to the SCI interface PC routine was invalid.
  X'00002018' The SCI token is invalid.
  X'00002038' The parameter list version is invalid.
X'01000010' X'00004000' SCI is not active on the local LPAR where this SCI request is being issued.
  X'0000400C' The target IMSplex member is not active, or is not reachable due to the SCI not being active on the LPAR of the remote target member.
  X'00004FFF' The function is not supported.
X'01000014' X'00005000' An SCI internal error occurred.
  X'0000502C' The member could not be found due to an internal BPE hash table services error.
  X'00005030' An SCI buffer could not be obtained.
  X'00005034' A key 7 buffer in the SCI address space could not be obtained for a copy of PHDR and parameters.
  X'00005038' An IEAMSCHD error occurred; SRB could not be scheduled to the target address space.
  X'00005040' The request is not outstanding and cannot be returned.
  X'00005044' An SCI-allocated output buffer could not be obtained.
  X'00005500' An abend occurred during the processing of an SCI request.
  X'00005504' An abend occurred when the member parameters were copied to the target address space.
  X'00005508' An abend occurred when the member parameters were copied to the target address space, but the dump and message were suppressed because NOCPYABN=Y was specified.