CALL DSNRLI statement parameter list
The CALL DSNRLI statement explicitly invokes RRSAF. When you include CALL DSNRLI statements in your program, you must specify all parameters that precede the return code parameter.
In CALL DSNRLI statements, you cannot omit any of parameters that come before the return code parameter by coding zeros or blanks. No defaults exist for those parameters for explicit connection requests. Defaults are provided for only implicit connections. All parameters starting with the return code parameter are optional.
- For C-language, when you code CALL DSNRLI statements
in C, you need to specify the address of every parameter, using the "address
of" operator (&), and not the parameter itself. For example,
to pass the pklistptr parameter on the "CREATE THREAD" specify
the address of the 4-byte pointer to the structure (&pklistptr):
fnret=dsnrli(&crthrdfn[0], &plan[0], &collid[0], &reuse[0], &retcode, &reascode, &pklistptr); - For all languages except assembler language, code zero for that
parameter in the CALL DSNRLI statement. For example, suppose that
you are coding an IDENTIFY call in a COBOL program, and you want to
specify all parameters except the return code parameter. You can write
a statement similar to the following statement:
CALL 'DSNRLI' USING IDFYFN SSNM RIBPTR EIBPTR TERMECB STARTECB BY CONTENT ZERO BY REFERENCE REASCODE. - For assembler language, code a comma for that parameter in the
CALL DSNRLI statement. For example, suppose that you are coding an
IDENTIFY call, and you want to specify all parameters except the return
code parameter. You can write a statement similar to the following
statement:
CALL DSNRLI,(IDFYFN,SSNM,RIBPTR,EIBPTR,TERMECB,STARTECB,,REASCODE)
For assembler programs that invoke RRSAF, use a standard parameter list for an z/OS® CALL. Register 1 must contain the address of a list of pointers to the parameters. Each pointer is a 4-byte address. The last address must contain the value 1 in the high-order bit.