crastart*.conf, the CRASTART server startup

RSE starts the CRASTART load module, which uses the definitions in crastart*.conf to create a valid environment to execute batch TSO and ISPF commands. Developer for z/OS® uses this environment to run the CARMA server, CRASERV.

crastart*.conf is located in /etc/zexpl/, unless you specified a different location when you customized and submitted job FEL.SFELSAMP(FELSETUP). For more details, see Customization setup. You can edit the file with the TSO OEDIT command.

Note: Changes are in effect for all CARMA servers that are started after the update.
Developer for z/OS provides multiple crastart*.conf configuration files. Each of these sample files is preconfigured for a specific customization scenario:
  • crastart.endevor.conf is configured for CRASTART startup with CA Endevor® SCM RAM.
  • crastart.conf is configured for CRASTART startup with sample RAMs.
The function of the crastart*.conf file is similar in concept to a JCL job stream, but is more restrictive.
  • The following samples show valid line formats:
    • * comment
    • ddname=dsn1,dsn2,dsn3 * comment
    • ddname=SYSOUT(c) * comment
    • ddname=DUMMY * comment
    • -COMMAND=<any bpxwdyn command> * comment
    • PROGRAM = progname parms * comment
    Note: The BPXWDYN command is documented in Using REXX and z/OS UNIX System Services (SA22-7806) and allows complex allocation constructs.
  • All input is changed to uppercase.
  • Line continuations are not supported.
  • There is no limitation on line length.
  • One or more blank spaces are allowed around the equal sign (=).
  • DD allocations must precede the related PROGRAM statement.
  • DD names allocated here are freed at the end of program execution. They do not accumulate.
  • DD names allocated by the called programs are not freed.
  • Multiple data sets can be concatenated to a DD name. The data set names must be separated by a comma (,), and the concatenation is searched in the listed order.
  • All data set allocations are done with DISP=SHR, except for allocations done using -COMMAND.
  • Inline data is not supported. All data must be in cataloged files.
  • Variables can be used only on the right side of the equal sign (=).
  • The following variables are supported:
    Variable Description
    &CRAUSER. Client user ID
    &CRADATE. Current® date in Dyyyyddd format (7 char Julian)
    &CRATIME. Current time in Thhmmss format (hour min sec)
    &CRAPRM1. Port number
    &CRAPRM8. Site-specific value set by the user exit referenced by the system.exit directive in CRASRV.properties.
    System symbol Any SYS1.PARMLIB(IEASYMxx) system symbol
    -<ddname> A hyphen (-) followed by a previously defined DD name acts like a *.ddname backward reference in JCL. The original DD must be allocated using the –COMMAND statement.
    Note: There is no variable for the TSO prefix because TSO is not active when the configuration file is interpreted. If you have a need for the TSO prefix or other variable that is not available, see (Optional) Custom allocation exec.

Figure 1 shows a basic crastart*.conf skeleton that includes ISPF services.

Figure 1. crastart*.conf: CARMA server startup using CRASTART
* DD used by RAM

* DD used by CARMA server (CRASERV)
TASKLIB = FEL.SFELLOAD
CRADEF  = FEL.#CUST.CRADEF
CRAMSG  = FEL.#CUST.CRAMSG
CRASTRS = FEL.#CUST.CRASTRS
CARMALOG= SYSOUT(H)
SYSPRINT= SYSOUT(H)

* DD used by ISPF (ISPSTART)
-COMMAND=ALLOC FI(ISPCTL0) NEW DELETE DSORG(PS) RECFM(F,B) LRECL(80)
  BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(ISPCTL1) NEW DELETE DSORG(PS) RECFM(F,B) LRECL(80)
  BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(ISPPROF) NEW DELETE DSORG(PO) RECFM(F,B) LRECL(80)
  BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA) DIR(5)
ISPTABL = -ISPPROF
ISPTLIB = -ISPPROF,ISP.SISPTENU
ISPMLIB = ISP.SISPMENU
ISPPLIB = ISP.SISPPENU
ISPSLIB = ISP.SISPSENU

* DD used by TSO (IKJEFT01)
SYSPROC = #hlq.SFELPROC                                   * CRAALLOC
SYSTSIN = DUMMY
SYSTSPRT= SYSOUT(H)

PROGRAM=IKJEFT01 %CRAALLOC ISPSTART PGM(CRASERV) PARM(&CRAPRM1.
   &CRAPRM2. &CRAPRM3. &CRAPRM4. &CRAPRM5. &CRAPRM6. &CRAPRM7.
   &CRAPRM8. )
Note:
  • Due to page width limitations, some lines in the sample wrapped onto the next line. All lines that start with an indentation should be added to the end of the previous line.
  • If you alter the PROGRAM line, ensure that there is at least one blank before the closing round bracket (“)”) of the PARM() statement to simplify processing of the string.
  • You can add your own DD statements and data set concatenations to customize the CARMA TSO environment, thus mimicking a TSO logon procedure.
  • The DD name TASKLIB acts like STEPLIB in JCL. Its DD name must match the value specified for crastart.tasklib in CRASRV.properties, which is described in CRASRV.properties, the RSE interface to CARMA.
  • Regular APF rules apply for TASKLIB allocations. Libraries lose their APF authorization when a non-APF authorized library is part of the concatenation.
  • System abend 522 for module CRASERV occurs if the JWT parameter in the SMFPRMxx parmlib member is set to a value lower than the crastart.timeout value in CRASRV.properties. The system abend does not impact CARMA operations because the server is restarted automatically if needed.
  • Details of the CARMA server startup are shown in rsecomm.log when the server ends. For more information on setting the detail level of rsecomm.log, see the IBM® Explorer for z/OS Host Configuration Guide (SC27-8437).