InterTest™ and SymDump ® 11.0
Disable IN25LETX
InterTest for CICS uses IN25LETX during all monitoring; that is, for all entries of the InterTest for CICS monitoring table. To
prevent InterTest for CICS from executing IN25LETX, you must disable it or remove it from the program library.
Once a link to IN25LETX fails (because the program is disabled), InterTest for CICS will not try the link again, thus
avoiding much overhead. In such a case, the execution of IN25LETX will not resume until the next InterTest for CICS start.
Password Protection
Online password protection is an optional InterTest for CICS feature. You can disable it selectively by redefining the
password installation options CNTLSEC, CNTOSEC, MONOMSEC, CORSEC, and FILSEC. For instructions, see
IN25OPTS Keywords.
The IN25SEC2 macro is used to assemble an InterTest for CICS load module that contains the passwords for the CORE
facility, FILE facility, and CNTL facility. The IN25SEC2 passwords are not stored anywhere in their unscrambled form. For
secrecy, you can code PRINT OFF in your IN25SEC2 assembly. The default passwords are as follows:
MAIN
CORE
$FUN
CNTL functions (commands)
$OPT
CNTL options
$MNO
CNTL options for segmented monitoring on and off (MON and NOM)
FILE
No default
Passwords can be changed at any time, even if someone is using the CORE or FILE facilities. Just run an IN25SEC2
assembly with the new passwords. If the CICS system is active, enter the following command to put the new passwords
into effect:
CEMT SET PROG(IN25SEC2) NEW
Required Parameters


into effect:
CEMT SET PROG(IN25SEC2) NEW
Required Parameters
The IN25SEC2 macro is delivered in the InterTest for CICS source code file and must be unloaded from the distribution
files before the assembly job.
IN25SEC2 TYPE=INITIAL,SCRNUM=(x,x,x,x)
The TYPE=INITIAL macro initiates the assembly and specifies the four numbers in the SCRNUM keyword that are to be
used in your version of the scrambling algorithm. These numbers must be a value from 1 to 16, separated by commas,
and enclosed in parentheses.
The TYPE=FINAL macro must be the last macro before the END statement. This macro must not contain any other
parameters.
Between the TYPE=INITIAL and TYPE=FINAL macros, specify the IN25SEC2 macros to assign passwords to protected
resources using the following keywords:
NAME
Specifies the name of the resource.
PASS
Specifies the four-character password for the resource. Only the characters A-Z, 0-9, $, @, and # are allowed.
 213


InterTest™ and SymDump ® 11.0
Specify Passwords for the CORE Facility
The macro for the CORE password is as follows:
IN25SEC2 NAME=PROTCORE,PASS=xxxx
NAME
You must specify PROTCORE.
xxxx
Specifies the password.
When a user of the CORE facility receives the message ENTER SECURITY PASSWORD, the user must enter the four-
character password. This password is then scrambled and compared with the scrambled password specified in the
PASS= parameter. If the codes are equal, the CORE change is made and the password does not have to be entered
again during the same session. If the password is entered incorrectly, the CORE facility asks for it again.
NOTE
Even if the password is entered correctly, areas outside CICS storage cannot be modified.
The following IN25SEC2 macro, delivered with the pregenerated version of InterTest for CICS, protects all storage not
owned by a user's task:
IN25SEC2 NAME=PROTCORE,PASS=MAIN
PROTCORE
Specifies that this entry is for the CORE transaction.
MAIN
The default password. To change or remove this password, update or remove the above macro and reassemble
the IN25SEC2 program.
Specify Passwords for Files and DL/I Databases
The macros for the FILE facility are:
IN25SEC2    NAME=yyyyyyyy,PASS=xxxx            WRITE only
IN25SEC2    NAME=yyyyyyyy,PASS=xxxx,FPROT=YES  READ and WRITE
yyyyyyyy
Specifies the name of the file ID (from the CICS file definition) or the DBD identification.
xxxx
Specifies the password.
FPROT=YES
Indicates that the file or DBD name should also be fetch protected; that is, data cannot be viewed or changed
unless the password is correctly entered.


unless the password is correctly entered.
You must code one IN25SEC2 macro for every file or DBD name you want to protect; files or DBDs not named in a macro
are not password protected against unauthorized use. These passwords apply only to access through the InterTest for
CICS FILE facility.
When a user of the FILE facility receives the message ENTER SECURITY PASSWORD, the user must enter the four
character password. This password is then scrambled and compared with the scrambled password specified in the
PASS= parameter. If the codes are equal, the specified FILE or DBD is accessed. If the password is entered incorrectly,
the FILE facility terminates.
You can code an IN25SEC2 macro to protect all files and DBD names that are not specifically protected in individual
IN25SEC2 macros.
 214


InterTest™ and SymDump ® 11.0
The following example password protects FILEA against both reads and writes with the password ASEC, password
protects FILEB against writes only with the password BSEC, and password protects all other files against both reads and
writes with the password FSEC.
IN25SEC2    NAME=PROTFILE,PASS=FSEC,FPROT=YES
IN25SEC2    NAME=FILEA,PASS=ASEC,FPROT=YES
IN25SEC2    NAME=FILEB,PASS=BSEC
NOTE
Any security measures of your CICS installation are applied by CICS or the operating system after InterTest for
CICS password protection is satisfied. The FILE facility functions as an application within CICS.XE "DL/I".
Specify Passwords for CNTL Commands and Options
Password protection is available for certain CNTL commands and monitoring options.
To use InterTest for CICS to protect other commands and options or not protect the ones listed here, contact Broadcom
Support .
CNTL password protection does not apply to the following situations:
•Automatic startup of InterTest for CICS from the table assembled from InterTest for CICS PROMMAC macros.
•CNTL=RESTART command.
•CNTL=NEW command.
•CNTL=EXEC command.
•Startup of InterTest for CICS by the IN25PLT program in the PLT table.
•Execution of a CNTL command from a CRLP terminal; that is, a simulated terminal consisting of input and output
sequential files.
•Execution of a CNTL command from the system console.
You do not need passwords in these situations because they either automatically start InterTest for CICS, which is
controlled by the system programming staff, or reestablish functions that were password protected when they were
originally requested.


originally requested.
Password Protected CNTL Commands
The following commands are password protected by default if you use the pregenerated version of InterTest for CICS.
CNTL=CKPT
Start and end checkpoint
CNTL=END
Remove InterTest for CICS from CICS
CNTL=EXCL
Enter a program, transaction, or terminal in the Exclusion Table to prevent monitoring
CNTL=INCL
Remove a program, transaction, or terminal from the Exclusion Table
CNTL=ABP
Activate and deactivate the global automatic breakpoint facility
CNTL=PURGE
Start and end the purging of tasks that remained at a breakpoint longer than the specified time
CNTL=GLOG
Start and end logging of CNTL commands and CORE changes
 215


InterTest™ and SymDump ® 11.0
CNTL=ON,PROG=.ALL
Declare monitoring for all application programs not specifically declared for monitoring
CNTL=OFF,PROG=.ALL
Remove monitoring of all application programs not specifically declared for monitoring
CNTL=ON,PROG=.ALL
Add monitoring options for all applications not specifically declared for monitoring
CNTL=ALL
Declare and remove monitoring for all applications not specifically declared for monitoring
CNTL=OFF
Removes monitoring options
This command is password protected only to the extent that the option to be removed is password protected.
The following IN25SEC2 macro, delivered with the pregenerated version of InterTest for CICS, protects all of the
previously listed CNTL commands:
IN25SEC2 NAME=PROT$FUN,PASS=$FUN
PROT$FUN
Identifies the CNTL commands listed previously. To change or remove this password, update or remove the
above macro and reassemble the IN25SEC2 program.
Default:  $FUN
Password Protected CNTL Options
The following monitoring options are password protected by default; that is, if you use the pregenerated version of
InterTest for CICS. You can disable password protection for these CNTL options by redefining the InterTest for CICS
installation option CNTOSEC.
,BYP
Bypass storage protection or monitoring of BALR 14,15 and BALR 14,14 routines (for XA, BASSM, and BASR)
,CSA=(offset,length)
Do not protect specified areas of the CSA or CWA
,LET=name
Do not protect storage occupied by a specified program module
,LET=(address,length)
Do not protect a specified storage area
,MON=location
Set segmented monitoring on
,NOM=location
Set segmented monitoring off
,OVR=errcode


Set segmented monitoring on
,NOM=location
Set segmented monitoring off
,OVR=errcode
Disregard an error condition that would typically cause a breakpoint
,STR=ON
Preserve a copy of the CICS Trace Table for the duration of a breakpoint
,TON=*
or ,TON=terminal
Limit monitoring to a specific terminal
,USH=ON
Remove storage protection from storage areas in the shared subpool
 216


InterTest™ and SymDump ® 11.0
PROT$OPT Name Option
The following IN25SEC2 macro, delivered with the pregenerated version of InterTest for CICS, protects all of the
previously listed CNTL options except MON and NOM:
IN25SEC2 NAME=PROT$OPT,PASS=$OPT
PROT$OPT
Identifies the password protected CNTL options.
$OPT
The default password. To change or remove this password, update or remove the above macro and reassemble
the IN25SEC2 program.
PROT$MNO Name Option
The following IN25SEC2 macro, delivered with the pregenerated version of InterTest for CICS, protects the segmented
monitoring functions (MON and NOM) when MONOM=MENU or NOMENU, and MONOMSEC=YES:
IN25SEC2 NAME=PROT$MNO,PASS=$MNO
PROT$MNO
Identifies the CNTL options MON and NOM.
$MNO
The default password. To change or remove this password, update or remove the above macro and reassemble
the IN25SEC2 program.
Sample IN25SEC2 Assembly JCL
Sample JCL member CCSASEC2 is provided in CAI.CAVHJCL. Customize the member and submit it to assemble your
password table.
The following example demonstrates the macro usage:
•The CORE password is changed to CORE.
•All files except FILE1 and FILE2 are WRITE protected with the password FSEC.
•FILE1 will be READ and WRITE protected with password WXYZ.
•FILE2 will be WRITE protected with password ABCD.
•CNTL commands and monitoring options are protected with the password CNTL.
//ASM.SYSIN DD *
  IN25SEC2 TYPE=INITIAL,SCRNUM=(1,1,1,1)


IN25SEC2 NAME=PROTCORE,PASS=CORE
  IN25SEC2 NAME=PROTFILE,PASS=FSEC
  IN25SEC2 NAME=FILE1,PASS=WXYZ,FPROT=YES
  IN25SEC2 NAME=FILE2,PASS=ABCD
  IN25SEC2 NAME=PROT$FUN,PASS=CNTL
  IN25SEC2 NAME=PROT$OPT,PASS=CNTL
  IN25SEC2 TYPE=FINAL  END /*
SymDump  for CICS User Exits
This article describes SymDump  for CICS user exits.
 217


InterTest™ and SymDump ® 11.0
Global User Exit XDUREQ
SymDump  for CICS uses the CICS global user exit XDUREQ. If other products at your site that use this same exit, you
will not have to modify SymDump  for CICS. However, be aware of the following points:
•The exit modules get control in the order in which they are enabled. If another product uses the XDUREQ exit and is
enabled before SymDump  for CICS at PLT time, that product may change the storage associated with the abending
transaction. SymDump  for CICS does not modify task storage and is transparent to exit modules that are invoked after
it has processed.
•The SymDump  for CICS IN25INST program should always be placed after the InterTest for CICS IN25PLT program in
the PLT.
•A return code from the XDUREQ global exit tells CICS whether to take the dump after the exit has processed it. If there
are multiple exits and they pass different return codes, CICS ignores the return codes and processes the dump as if a
normal return code were returned. This means that if SymDump  for CICS and another product using the XDUREQ exit
disagree about CICS taking its own dump, CICS takes the dump anyway.
Configure SymDump for CICS Security
Secure SymDump  for CICS
You can secure access to SymDump  for CICS facilities by:
•Transaction-level security
•Menu-level security
•Dump-level security
Transaction Level Security
You can apply transaction-level security to the SymDump  for CICS transaction IDs using your site's external security
package, such as Top Secret, ACF2 , or IBM RACF. Transaction-level security applies when the user enters the
transaction ID directly from CICS.
NOTE


transaction ID directly from CICS.
NOTE
Applying transaction-level security does not secure menu access to the equivalent functions. You may need to
secure both.
The following table contains SymDump  for CICS transaction IDs:
Transaction ID Function IN25OPTS Keyword
SYMD SymDump  Primary Option menu SYMDT
SYME Terminate (End) SymDump  capture
SYMI Configure SymDump
SYMS Start SymDump  capture facility
SYMT Capture a CICS internal trace
NOTE
To increase transaction-level security, we recommend that you restrict the transaction SYMD  to the following
roles:
•CICS sysprogs
•Application failure analysts
Your site may have changed the transaction IDs using IN25OPTS. Use the VRPT transaction to display the current values
online.
 218


InterTest™ and SymDump ® 11.0
MenuLevel Security
You can secure menu access to SymDump  for CICS functions by using your site's external security package and the
External Security Facility. Menu access applies whenever the user accesses the SymDump  for CICS Primary Option
menu from CICS (SYMD transaction) or from InterTest for CICS (ITST Option 5).
DumpLevel Security
You can use a user-written security exit to control access to specific dumps and traces from either the online display or the
batch print function. Dumps and traces meeting the criteria specified in the security exit are not displayed or printed.
External Security Installation Option
The EXTSEC installation option in IN25OPTS turns the SymDump  for CICS external security feature on or off. When
SymDump  for CICS is first installed, it is useful to leave EXTSEC set to No (the default) until the product is installed,
tested, and the security rules written.
For more information about setting and modifying SymDump  for CICS options, see IN25OPTS Keywords.
Resource Protection Levels
The resources protected in SymDump  for CICS under the External Security feature are listed in the table below:
Class Entity Access Level Function Type SymDump  Menu
Options
CA@NTSYM BQUSER Read User 1 Analysis (View dumps
and traces)
CA@NTSYM BQUSER Update Privileged user 1 Analysis (View plus
Hold, Release, Delete)
CA@NTSYM BQTRACE Update Trace authority 2 Trace capture
CA@NTSYM BQADMIN Update Administrator 3 Configuration
CA@NTSYM BQOPER Update Operator 4 Start
5 Stop
CA@NTSYM BQLSCRN Update Last screen display


5 Stop
CA@NTSYM BQLSCRN Update Last screen display
BQUSER  with Read access lets the user access SymDump  for CICS menu option 1, Dump Analysis. The user can view
the list of dumps and traces, and then select individual dumps or traces to view. This user cannot hold, release, or delete
dumps or traces.
BQUSER  with Update access lets the user fully use SymDump  for CICS menu option 1, Dump Analysis. This user can
view the list of dumps and traces, select individual dumps or traces to view, and hold, release, and delete individual
dumps or traces.
BQTRACE  lets the user access SymDump  for CICS menu option 2, Trace. This allows the user to request a CICS internal
trace for later analysis. To view the trace, the user must also have BQUSER access with at least Read authority.
BQADMIN  lets the user access SymDump  for CICS menu option 3, Configuration. The administrator has access to the
SymDump  for CICS Configuration panel and the ability to set options for running SymDump  for CICS.
BQOPER  lets the user access SymDump  for CICS menu options 4 and 5, which Start and Stop the SymDump  for CICS
capture facility, respectively.
BQLSCRN lets the user select the Last Screen display from the Dump Tree.
To set up external security for your environment, continue by following the directions in the appropriate section:
 219


InterTest™ and SymDump ® 11.0
External Security Using Top Secret
The external security interface in SymDump  for CICS is compatible with Top Secret 4.2 or above.
SymDump  for CICS always performs its functions under the control of CICS. Therefore, no special definition of SymDump
for CICS as a unique facility is required.
Define the Resource Class CA@NTSYM
SymDump  for CICS uses a unique resource class, CA@NTSYM, for its internal security controls.
List a Resource Class
To determine if CA@NTSYM is currently defined to your Top Secret system, issue the following command:
TSS LIST(RDT) RESCLASS(CA@NTSYM)
This command lists the definition of the CA@NTSYM resource in the Top Secret Resource Definition Table (RDT).
•If CA@NTSYM is present and its definition matches the attributes below, no further action is required:
ACLST(UPDATE=6000,READ) DEFACC(READ)
•If any of the attributes do not match, you must change the definition using the TSS REPLACE(RDT) command,
specifying the correct parameters.
•If you get an error message indicating that the resource is missing, invalid, or reserved, you must define it.
If CA@NTSYM is not defined, you must add it to the RDT. New classes are added using the TSS command ADDTO
function through any facility supporting the TSS command. Once added, these resources become a permanent part of the
security file and can be immediately administered and reported on by name.
Add a Resource Class
The syntax to add the CA@NTSYM resource is shown next. The syntax uses a RESCODE of 38. This code value is up to
each site and must be unique. Codes 01 to 3F are available.


each site and must be unique. Codes 01 to 3F are available.
TSS ADDTO(RDT) RESCODE(38) RESCLASS(CA@NTSYM) -
    ACLST(UPDATE=6000,READ) DEFACC(READ)
Once you define the resource CA@NTSYM to your system, you can establish access controls to SymDump  for CICS
functions and information. No IPL, re-initialization, or parameter changes are needed for these changes to become active
and permanent.
Use CA@NTSYM to Control SymDump  for CICS Functions
The CA@NTSYM resource controls all SymDump  for CICS functions. CA@NTSYM is a standard short resource and is
managed in the same manner as other access level resources. For a definition of the access levels by entity name, see
Resource Protection Levels.
To define the SymDump  for CICS functions to Top Secret, use the following command:
TSS ADDTO(deptname)-
CA@NTSYM(BQUSER,BQTRACE,BQADMIN,BQOPER, BQLSCRN)
NOTE
Notice that all entity names start with BQ to uniquely identify them as SymDump  for CICS commands. The rest
of the entity name identifies its function, USER, TRACE, ADMIN, OPER(ator) or Last Screen Display.
 220


InterTest™ and SymDump ® 11.0
Define User Access to BQ Functions
To allow user USER01 to have Read access to Option 1 of the SymDump  for CICS menu to analyze a dump or trace, use
the following command:
TSS PERMIT(USER01) CA@NTSYM(BQUSER)   ACCESS(READ)
To allow user USER02 to have full (update) access to Options 1 and 2 of the SymDump  for CICS menu to view, hold,
release, and delete dumps and traces, and to capture a trace, use the following commands:
TSS PERMIT(USER02) CA@NTSYM(BQUSER)   ACCESS(UPDATE)
TSS PERMIT(USER02) CA@NTSYM(BQTRACE)  ACCESS(UPDATE)
To allow user USER99 to access all functions of SymDump  for CICS:
TSS PERMIT(USER99) CA@NTSYM(BQUSER)   ACCESS(UPDATE)
TSS PERMIT(USER99) CA@NTSYM(BQTRACE)  ACCESS(UPDATE)
TSS PERMIT(USER99) CA@NTSYM(BQADMIN)  ACCESS(UPDATE)
TSS PERMIT(USER99) CA@NTSYM(BQOPER)   ACCESS(UPDATE)
If you omit the ACCESS keyword, Top Secret defaults the PERMIT to Read access.
External Security Facility
SymDump  for CICS external security provides menu-accessed resource protection and control through the use of your
site's external security package, such as Top Secret, ACF2 , or IBM RACF. The external security option provides security
for the following:
•Protection for the configuring, starting, and stopping of SymDump  for CICS through SymDump  for CICS menu options
3, 4, and 5, respectively


3, 4, and 5, respectively
•Protection for viewing, holding, releasing, and deleting dumps through SymDump  for CICS menu option 1
•Control over whom is able to capture a CICS internal trace through SymDump  for CICS menu option 2
SymDump  for CICS checks authorization at the time of access, rather than checking authorization at signon. This enables
your site to track security violations.
Protecting menu access to SymDump  for CICS functions does not secure direct access to the same functions using a
CICS transaction ID. To do this, you must secure the equivalent transaction IDs as discussed in Securing SymDump  for
CICS.
External Security Using ACF2
The external security interface in SymDump  for CICS is compatible with ACF2  6.2 or higher.
Define the Resource Class CA@NTSYM
SymDump  for CICS uses a unique resource class, CA@NTSYM, for its internal security controls. CA@NTSYM needs to
be defined to ACF2  with its own three-character resource type. In the following example, CA@NTSYM is defined using
the resource type CAM.
SET CONTROL(GSO) INSERT CLASMAP.CA@NTSYM -
RESOURCE(CA@NTSYM) RSRCTYPE(CAM) ENTITYLN(8)
After adding this clasmap definition, you must refresh the GSO clasmap.
To protect and allow access to SymDump  for CICS, use the standard ACF2  rule writing, as shown below:
 221


InterTest™ and SymDump ® 11.0
SET RESOURCE(CAM)
COMPILE *
$KEY(entity) TYPE(CAM)
UID(uidstring/mask) SERVICE(READ/READ,UPDATE/UPDATE) -
    ALLOW/LOG/PREVENT
END
STORE *
If the SERVICE keyword is not supplied, ACF2  defaults to permit access to all service levels.
Once the resource CA@NTSYM is defined to your system, you can establish access controls to SymDump  for CICS
functions and information.
Use CA@NTSYM to Control SymDump  for CICS Functions
The CA@NTSYM resource controls all SymDump  for CICS functions. For a definition of the access levels by entity name,
see Resource Protection Levels.
NOTE
Notice that all entity names start with BQ to uniquely identify them as SymDump  for CICS commands. The rest
of the entity name identifies its function, USER, TRACE, ADMIN, or OPER(ator).
To enable CICS functions, use the following comments in the order listed:
1.Define access for CA@NTSYM:
Set RESOURCE(CAM)
COMPILE *
2.Define access for SymDump  for CICS analysis:
$KEY(BQUSER) TYPE(CAM)
3.Set general user read-only access:
UID(general user UID) SERVICE(READ) ALLOW
4.Set privileged user read and update access:
UID(privileged user UID) SERVICE(READ,UPDATE) ALLOW
5.Define access for SymDump  for CICS tracing:
$KEY(BQTRACE) TYPE(CAM)
UID(tracing user UID) SERVICE(UPDATE) ALLOW
6.Define access for SymDump  for CICS Administration:
$KEY(BQADMIN) TYPE(CAM)
UID(admin user UID) SERVICE(UPDATE) ALLOW


UID(admin user UID) SERVICE(UPDATE) ALLOW
7.Define access for SymDump  for CICS operator:
$KEY(BQOPER) TYPE(CAM)
UID(operator user UID) SERVICE(UPDATE) ALLOW
END
STORE *
External Security Using IBM RACF
The external security interface in SymDump  for CICS can be used with RACF. It is compatible with all supported versions
of Common Components and Services  for z/OS.
 222


InterTest™ and SymDump ® 11.0
Required RACF Table Entries
Before implementing RACF security, you must define a new class for SymDump  for CICS (CA@NTSYM) in the Class
Descriptor Table, update the Router Table for the new class, and then enable the class. These steps are detailed next.
1.Class Descriptor Table (CDT) Entry for CA@NTSYM
Define a new class, CA@NTSYM, for SymDump  for CICS security in the RACF Class Descriptor Table (module
ICHRRCDE). The following information should be included in the ICHERCDE macro entry:
MAXLNTH=8, FIRST=ALPHANUM, OTHER=ALPHANUM.
NOTE
No recommendations are given for any DFTUACC; this is completely determined by each site.
2.Router Table Entry for CA@NTSYM
Make an entry for the CA@NTSYM class in the RACF Router Table (module ICHRFR01). Specify ACTION=RACF.
This entry is generated by the ICHRFRTB macro.
3.Enabling the Class CA@NTSYM
Activate the new class CA@NTSYM just defined in the CDT and Router Table. To do this, issue the following
command:
SETROPTS CLASSACT(CA@NTSYM)
Protect SymDump  for CICS Entities
The CA@NTSYM resource controls all SymDump  for CICS functions. For a definition of access levels by entity name, see
Resource Protection Levels earlier in this section.
NOTE
Notice that all entity names begin with BQ to uniquely identify them as SymDump  for CICS commands. The rest
of the entity name identifies its function, USER, TRACE, ADMIN, or OPER(ator).
Issue RACF RDEFINES for SymDump  for CICS Entities


Issue RACF RDEFINES for SymDump  for CICS Entities
First, you must issue the RACF RDEFINE command for every SymDump  for CICS entity that you want to protect. For
example, issue the following commands to protect the CA@NTSYM resources:
RDEFINE CA@NTSYM BQUSER UACC(NONE)
RDEFINE CA@NTSYM BQTRACE UACC(NONE)
RDEFINE CA@NTSYM BQADMIN UACC(NONE)
RDEFINE CA@NTSYM BQOPER UACC(NONE)
Give all entities a universal access of NONE. Defining this security type denies access to anyone that does not have
authorization.
Permit the Use of CA@NTSYM Entities
Once you protect the entities, use the PERMIT command to give different levels of access to individual users for separate
SymDump  for CICS functions. For example:
•Define a general user with read-only access to the analysis panels by issuing:
PERMIT BQUSER CLASS(CA@NTSYM) ID(userid) ACCESS(READ)
•Define a privileged user with read and update access to the analysis panels by issuing:
 223


InterTest™ and SymDump ® 11.0
PERMIT BQUSER CLASS(CA@NTSYM) ID(userid) ACCESS(READ,UPDATE)
•Define access for SymDump  for CICS trace capture function by issuing:
PERMIT BQTRACE CLASS(CA@NTSYM) ID(userid) ACCESS(UPDATE)
•Define access for SymDump  for CICS administration (configuration panel) by issuing:
PERMIT BQADMIN CLASS(CA@NTSYM) ID(userid) ACCESS(UPDATE)
•Define access for SymDump  for CICS operator (start and stop functions) by issuing:
PERMIT BQOPER CLASS(CA@NTSYM) ID(userid) ACCESS(UPDATE)
Security Exit Facility
SymDump  for CICS provides an optional security exit facility. This is an alternative to using the External Security Facility.
The security exit facility allows a user-written security exit to control access to dumps from the online dump display
function and the batch print function.
The security exit receives control during online and batch processing when dumps that meet specified selection criteria
are found. In effect, the security check is another selection criterion. No security violation message appears; instead,
dumps for which the user is not authorized are not shown.
Both online and batch exits are optional and can be written in Assembler, COBOL, or PL/I. The SymDump  for CICS SMP
target libraries contain sample COBOL and Assembler exit programs in both source and load form. PL/I samples are not
provided.
Activate the Exit Facility
To activate the exit facility, you need only provide an active CICS exit module named IN25XC1 and an active batch exit
module named IN25XB1.
Use the following example to activate the CICS Assembler sample exit.
Follow these steps:


Use the following example to activate the CICS Assembler sample exit.
Follow these steps:
1.Rename supplied load module IN25XC1A to IN25XC1.
2.Restart your CICS region or bring in new copies of IN##XCMR and IN25XC1, where ## specifies your two-digit CICS
release number (for example, 66 for CICS 4.1, 67 for CICS 4.2, 68 for CICS 5.1, 69 for CICS 5.2, 70 for CICS 5.3, and
71 for CICS 5.4).
Use the following example to activate the batch Assembler sample exit.
Follow these steps:
1.Rename supplied load module IN25XB1 to IN25XB1D.
2.Rename supplied load module IN25XB1A to IN25XB1.
3.Submit your execution JCL for the batch dump print program IN##PDMP where ## specifies your two-digit CICS
release number (for example, 66 for CICS 4.1, 67 for CICS 4.2, 68 for CICS 5.1, 69 for CICS 5.2, 70 for CICS 5.3, and
71 for CICS 5.4). Sample JCL for execution of this program is member SYMPDMP in the CAVHJCL library.
If you do not want to install the exits immediately, you can leave the exit load modules. The user exit manager for CICS
handles not finding the exit. The user exit manager for batch uses the dummy module provided.
The SymDump  load library contains the following modules related to the security exit:
Module Description
IN##XCMR SymDump  CICS user exit manager
 224


InterTest™ and SymDump ® 11.0
IN25XBMR SymDump  batch user exit manager
IN25XC1A Sample SymDump  CICS security user exit (Assembler)
IN25XC1C Sample SymDump  CICS security user exit (COBOL)
IN25XB1A Sample SymDump  batch security user exit (Assembler)
IN25XB1C Sample SymDump  batch security user exit (COBOL)
IN25XB1 SymDump  batch security user exit (dummy stub)
The CAVHSAMP target library also provides source code for the sample user exits.
Test the Exit Facility
The samples are set up to allow access to dumps with the seconds in the time field less than 30, and to disallow the
others. Try accessing dumps first without the exits, and then rename the sample exits to the proper names and try
accessing dumps again (be sure to bring in new copies of IN##XCMR and IN25XC1 first). Fewer dumps are allowed to
you. Trying this verifies the basic functioning of the exits.
Online Dump Display
The CICS user exit is invoked separately for each dump. The exit gets control through a standard Command Level link
and is passed a COMMAREA. This COMMAREA contains:
•A field containing the total length of the area
•A return code field
•Product and function identification fields
•All the identification data for the dump as shown on the Dump/Trace Analysis and Selection screens (such as CICS
applid, CICS user ID, program, transaction ID, abend code, terminal ID, language, and date and time)
The copy member for the COMMAREA used by the exit is:
•SDMPXCMA for the Assembler exit
•SDMPXCMC for the COBOL exit
Batch Print


•SDMPXCMC for the COBOL exit
Batch Print
The batch version of the user exit is linked to when dumps that meet the specified selection criteria are found. The user
exit is invoked for both print and index functions so that the list of dumps available to a user is always identical.
The batch user exit is invoked separately for each dump. The exit gets control through a standard OS link and is passed a
standard parameter list with one entry that is identical in format to the COMMAREA described in Online Dump Display in
this section.
Exit Processing
For both online and batch exits:
•A zero return code indicates that the user's request is authorized
•A nonzero return code indicates that access is denied
Allocate Files
Use file allocation steps to configure your product.
This article describes the required and optional file allocation steps that are used for product configuration. All products
must allocate the PROTSYM file. File allocations specific to each product are described after the PROTSYM information.
 225


InterTest™ and SymDump ® 11.0
Allocate PROTSYM
Member CAVHPROT creates the PROTSYM VSAM file, which contains the symbolic information and source listings
for your application programs. Edit the JCL in the CAVHJCL library to conform to your installation standards and the
previously completed worksheet.
Note the following items when you create the symbolic file:
•Do not specify a secondary space allocation.
•Depending on the file size, the CAVHPROT utility job (running the IN25UTIL program) can run for a long time.
Note:  This behavior only occurs the first time after the file is created by the IDCAMS job.
•Each symbolic file has an upper limit of about four million 2 KB records, and holds approximately 147,000 programs.
•The symbolic file must not reside in the LSR pool.
Concurrently Updating the PROTSYM File
The application uses the MVS RESERVE and DEQ macros to allow sharing of the PROTSYM file between regions or
systems.
The resource major name that is used in the RESERVE and DEQ macros is INTERTST. Place the major name INTERTST
into an MVS service that converts the RESERVE into a cross-system ENQ if this service is available at your site.
Populate the Symbolic File
This section applies only to InterTest for CICS and SymDump  for CICS users.
You can skip this step if your site previously loaded a PROTSYM file with the symbolic information for CICS DSECTs and
InterTest for CICS and SymDump  for CICS DSECTs,.
Member CABALSYM, located in the CAVHJCL library, populates the PROTSYM VSAM file with symbolic information for


CICS DSECTs and InterTest and SymDump for CICS DSECTs. Edit the JCL to conform to your installation standards.
NOTE
Symbolic information and source listings for the demonstration programs are loaded into the PROTSYM file
when you prepare the programs for execution.
Update Your In-house Compile and Assemble Procedures
To update the compile and assemble procedures and create symbolic information for your Assembler, PL/I, or COBOL
programs, see Symbolic Support.
InterTest Batch Files
Allocate PROFLIB
Before you execute the application, you must allocate a profile data set. CAVHPROC library member CAMRPROF
contains the sample allocation for the profile data set. You can allocate PROFLIBs by user or by site. To maintain session
variables, each user requires one block and one directory entry in the PROFILE library. Allocate the same number of
blocks as the number of programmers who access the application. Each directory block contains three users. If the
number of users is greater than 90, change the number of directory blocks.
The following parameters are needed for this JCL:
TGTVOL=,
VOLSER of the PROFLIB
PREFIX='USER.',
The USERID high-level qualifier (default = USER)
 226


InterTest™ and SymDump ® 11.0
PERMDA=SYSDA
The generic UNIT for permanent DASD (default = SYSDA)
NOTE
During execution, each user requires WRITE access to the PROFILE library only. Secure all other required
application files with READ access only. Be sure to give similar attention to the optional files that the application
uses (for example, the session log).
Allocate ALIBs (Optional)
The product uses an ALIB data set to save allocation information. The number of ALIBs is not limited, but all ALIBs must
be created manually.
CAVHPROC library member CAMRALIB creates and catalogs an ALIB. The following parameters are needed for this JCL:
TGTVOL=,
The VOLSER of the target data sets
PREFIX='USER.',
The USERID high-level qualifier (default = USER)
PERMDA=SYSDA
The generic UNIT for permanent DASD
Allocate INCLIBs (Optional)
If you intend to use the INCLUDE command, you must allocate the INCLUDE library. CAVHPROC library
member CAMRINCL allocates this library.
The following parameters are needed for this JCL:
TGTVOL=,
VOLSER of the target data set
PREFIX='USER.',
The SITE/USERID high-level qualifier (default = USER)
PERMDA=SYSDA
The generic UNIT for permanent DASD (default = SYSDA)
SymDump  Batch
Allocate CAIPRINT Repository Library
Make a copy of CAI.CAVHJCL(CARXREPO) and update it to conform to your installation standards.
Use CARXREPO to create and initialize a new CAIPRINT repository library. The data set name for your CAIPRINT


repository is defined in the PRTLIB option of CAOETABL. This data set name is defined in the next step. Specify the same
dsname when you customize CARXREPO.
CARXREPO consists of the following steps:
Step Program Description
1 IDCAMS Allocate the CAIPRINT repository.
2 CAOUPRTU Initialize the CAIPRINT repository.
NOTE
To enable file sharing between regions and systems, RESERVE and DEQ macros are used when the CAIPRINT
repositories are updaterd. The resource major name that is used in the RESERVE and DEQ macros is
 227


InterTest™ and SymDump ® 11.0
CAOUPRTA. If your installation uses a service that converts RESERVEs into cross-system ENQs, define the
major name CAOUPRTA to the service.
Estimated Size of the PRTLIB Repository Library
The size of an individual PRTLIB report varies greatly depending on factors that include the number of active programs,
the size of the data in each active program, and the number of allocated files. These factors make it difficult to determine
how much space to allocate for the repository.
As a guideline, using CAOEDEMO and a repository of one cylinder, you can store 17 reports in the repository. This report
contains only one active COBOL program, but contains a large data division of approximately 500 KB.
Due to the number of factors to consider to determine the size of your repository, base this decision on the amount of
space that you want to dedicate to saving abend reports. You can migrate the reports to a larger repository later with the
CAOUPRTU utility COPY function.
NOTE
Do not specify a secondary space allocation when you create the repository. The capacity of the repository is
fixed by the allocation job and cannot be increased using secondary extents.
NOTE
The LE option TERMTHDACT(UADUMP) generates a U4039 abend when a severity 2 or greater unhandled
condition occurs. SymDump  Batch reports on this abend.
NOTE
The SymDump PRTLIB report index has a limit of 4000 entries.
InterTest for CICS and SymDump  for CICS
Install the Help Facility
The member DEFHELP, found in the CAVHJCL library, creates and loads the VSAM file that contains the InterTest and
SymDump for CICS online help information. Edit the JCL to conform to your installation standards and the previously


completed worksheet. This member and other referenced members are located in the CAI.CAVHJCL library after the
APPLY step.
Create the User-Defined Abend Description File
The member DEFUHLP, located in the CAVHJCL library, creates the VSAM file that contains the user-defined abend
description information. Edit the JCL to conform to your installation standards and the previously completed worksheet.
This member and other referenced members are found in the CAI.CAVHJCL library after the APPLY step.
InterTest for CICS
Create the Debug Session File
The member DEFMLOG, located in the CAI.CAVHJCL library, creates the file that is used to record breakpoints and
keeps set when monitor logging is turned on. These records can be loaded for another debug session later without setting
breakpoints and keeps again. Edit the JCL to conform to your installation standards. If you use the optional PROTMLOG
feature, a unique MLOG dataset is required for each CICS region.
NOTE
For more information about the Monitor Logging facility, see Monitoring Menu Options .
 228


InterTest™ and SymDump ® 11.0
Create the Checkpoint File
The member DEFCKPT, located in the CAVHJCL library, creates the checkpoint file that is used to periodically record
the status of InterTest for CICS for a possible restart. This member and other referenced members are located in the
CAI.CAVHJCL library. Edit the JCL to conform to your installation standards.
NOTE
For more information on the checkpoint recording facility, see Monitoring Menu Options .
SymDump  for CICS
Create the PROTDMP File
The SymDump  for CICS VSAM file, PROTDMP, is the SymDump  for CICS dump data set. This file contains all dumps
to view and maintain with SymDump  for CICS. PROTDMP files that were initialized using a release of SymDump  for CICS
after r8.0 are compatible with this release.
Use member SYMFILE in CAI.CAVHJCL to create and initialize the file with program IN25INIT. Be aware of the following
considerations:
•The maximum number of dumps the SymDump  for CICS dump data set can hold depends on the CI (Control Interval)
size. For more information, see the SYMFILE member in the CAVHJCL.
•Do not specify a secondary space allocation.
•Depending on the file size, the SYMFILE job may run for a long time.
•Two or more concurrently active CICS regions cannot share the same SymDump  for CICS PROTDMP file for update.
NOTE
You cannot run IN25INIT on a previously initialized PROTDMP file. IN25INIT can only run against a newly
defined VSAM file.
Estimate the Size of the PROTDMP File


defined VSAM file.
Estimate the Size of the PROTDMP File
The size of an individual dump varies greatly depending on the number of active programs, the size of the data in
each active program, and so on. Because of these issues, it is difficult to determine how much space to allocate for the
PROTDMP file.
Therefore, Broadcom  suggests that you determine the amount of space you are willing to dedicate to saving dumps. You
can use the COPY function of the IN25DMPU utility to migrate dumps to a larger PROTDMP file later.
NOTE
Because the capacity of the PROTDMP file is fixed by the allocation job and cannot be increased using
secondary extents, do not specify a secondary space allocation when you create the PROTDMP file.
Interfaces and Compatibility
Use your InterTest and SymDump  products with other products and interfaces.
This article describes considerations for using your InterTest and SymDump  products with other products and interfaces.
This article contains the considerations for all products.
Configure Dynamic Symbolic Support
The dynamic symbolic support feature improves your productivity by reducing the pre-testing setup time that is commonly
involved in locating and loading a program compiler or assembler listing. This feature automatically locates the listing and
loads the symbolic file. This feature is fully integrated with Endevor .
 229


InterTest™ and SymDump ® 11.0
If the Endevor  footprint (FOOTPRNT) feature is used when application programs are generated in Endevor , you can
implement the dynamic symbolic support feature.
Configure the Started Task Procedure for Endevor  support
This configuration procedure is required in the following situations:
•If you want to use Dynamic Symbolic Support for InterTest CICS or SymDump CICS.
•If you are not using CICS products and you use multiple Endevor  C1DEFLTS which are not in your STEPLIBs. For
more information, see Batch Link Facility or Symbolic Utilities.
Follow these steps:
1.Install CAICCI as discussed in the section Common Components and Services  for z/OS and Requirements.
2.Copy the CAVHSAMP member INDVSPWN to the CAIENF parameter library and add the spawn parameter to the
CAIENF spawn parameter list.
3.To access Endevor  to dynamically load program symbolic information, use the started task procedure of the
CAVHPROC member INTNDVR,
4.To conform your installation standards, modify this procedure.
5.Copy the procedure to a system procedure library as member INTNDVRn. The member name of the procedure should
have the appended Endevor  C1DEFLTS table site ID. For example, if the site ID is 3, the procedure member name
should be INTNDVR3.
6.Repeat step 5 for each unique site ID.
NOTE
•This started task must be an APF-authorized task.
•To load library data sets in which application programs that were created by Endevor  reside, the INTNDVRn
procedures require read security access . The procedures also require write security access to PROTSYM
files that they populate.


files that they populate.
•To activate the new spawn parameters that are added for this feature, CAIENF must be refreshed
Shut Down Endevor  Dynamic Symbolic Support Started Task
When shutdown is required, the SymDump  for CICS Dynamic Symbolic Support started task is canceled with the
CANCEL operator command.
Configure Dynamic Symbolic Support for InterTest Batch
If you changed the procedure name from the default INTNDVR, you must also change and reapply USERMOD for the
IN25SITE table. Edit CAVHJCL member IN25SITE.
The following table is a sample IN25SITE program:
******************************************************************
* THIS TABLE IS USED TO SUPPORT CUSTOMER'S ENVIRONMENT *
* WHERE MULTIPLE C1DEFLTS ARE USED. *
* *
* THE TABLE CONTAINS AN ENDEVOR SITE ID AND THE ASSOCIATED *
* PROCNAME TO START LISTING SERVER AS A STARTED TASK TO *
* RETRIEVE LISTINGS STORED UNDER ENDEVOR CONTROL. *
* *
* THIS TABLE MUST BE MODIFIED VIA SMP/E USRMOD IF THE *
* CUSTOMER HAS MORE THAN ONE C1DEFLTS. A SINGLE C1DEFLTS *
* SITE, DOES NOT NEED TO MODIFY THIS TABLE. *
* *
 230


InterTest™ and SymDump ® 11.0
* THIS MODULE MUST BE ASSEMBLED AND LINKAGE EDITED INTO *
* CA INTERTEST BATCH LOAD MODULE LIBRARY. *
* *
* MACRO @NDVRSTE IS USED TO GENERATE THIS TABLE. *
* *
* MACRO FORMAT: *
* @NDVRSTE PROC= *
* PROC = A MAXIMUM OF 7 CHARACTER PROC NAME. *
* PROC = BLANKS FOR SINGLE C1DEFLTS SITE. *
* *
* NOTE: CA INTERTEST WILL APPEND THE SITE ID OBTAINED FROM *
* ENDEVOR FOOTPRINT AS THE 8TH CHARACTER. THUS THE *
* PROCNAME IN YOUR PROCLIB IS EIGHT CHARACTERS. *
*******************************************************************
IN25SITE CSECT ,
IN25SITE AMODE 31
IN25SITE RMODE ANY
*
 @NDVRSTE PROC=
* @NDVRSTE PROC=INTNDVR
* END ,
The table is generated using macro @NDVRSTE. The macro has one parameter PROC, which is explained as follows:
A maximum seven-character name of a cataloged procedure is used to start the listing server started task (STC). The
eighth character is reserved as a suffix to be appended by the product based on your site ID. The name that is defined in
the PROC keyword parameter must match the procedure name in the previous description.
The JCL is included in the configuration PTF that assembles and links this program. The JCL member is IN25SITE and
it is found in the CAVHJCL data set. The JCL must be modified JCL to conform to their installation standards before
submitting it.
Configure Dynamic Symbolic Support for SymDump  Batch


submitting it.
Configure Dynamic Symbolic Support for SymDump  Batch
The first seven-character prefix of the procedure member name that you copied to the system procedure library must
match the value that is defined in the NDVRPROC option in CAOUDFRX.
Configure Dynamic Symbolic Support for InterTest and SymDump for CICS
•The seven-character prefix for this procedure name is specified and can be changed by editing the NDVRPROC
parameter in the IN25OPTS macro.
•Include an NDVRSYM ddname in the IN25OPTS SYMFIL= parameter to indicate the PROTSYM file to be used for
dynamic symbolic loading. The presence of an NDVRSYM PROTSYM ddname in the CICS startup JCL indicates to
InterTest and SymDump for CICS to invoke the dynamic symbolic load option.
SYMFIL=(PROTSYM,xxxxxxx,xxxxxxx,NDVRSYM)
•If you use multiple Endevor  C1DEFLTS in your environment.
Batch Interfaces and Compatibility
This article contains interface and compatibility considerations for InterTest Batch and SymDump  Batch.
 231


InterTest™ and SymDump ® 11.0
InterTest Batch
Customize CLISTs
You may need to customize a number of CLISTs provided in the CAVHCLS0 library to run your product. These CLISTs are
as follows:
•CAMRDRVR
•CAMRCLST
•CAMRCIMS
•CAMRCBTS
•CAMRCDB2
•CAMRSTRT
•CAMRKEYS
•CAMRCMD
CAMRDRVR
Member CAMRDRVR is a sample CLIST that acts as a driver for the four startup CLISTs. The following modifications
should be made if you want to use this driver:
•Modify the PREFIX to match the prefix of the installed data sets.
•Under /*Note2*/, uncomment the library allocations that are not allocated in your TSO logon procedure or other CLIST.
CAMRCLST
Member CAMRCLST is a sample CLIST showing necessary file allocations for the application. The following modifications
should be made:
•Modify the PREFIX to match the prefix of the installed data sets.
•Under /*Note2*/, uncomment the option that pertains to your installation. Use ISPLLIB for the LE run-time library if it is
different from the default (linklist).
Select per-site or per-user PROFLIB. In the sample CLIST, the first allocation statement after /*Note3*/ is for those that
want to allocate one PROFILE data set per site. The second allocation statement after /*Note3*/ is for those that want
to allocate a PROFILE data set per-user. The third statement after /* Note3 */ is a CLIST that can create a per-user
PROFILE data set if one does not exist and then allocate it. Note that you may have to tailor these statements or the
CLIST to meet your specific installation requirements.


CLIST to meet your specific installation requirements.
•Under /*Note4*/, uncomment the optional files you are using with the InterTest Batch. The optional files are as follows:
INT1CLIB
Defines the partitioned data set that contains InterTest Batch commands used by the INCLUDE command. If it
is not allocated, the INCLUDE command is disabled. For more information about the INCLUDE command, see
Batch Debugging. CAI.CAVHSAMP is the data set that includes the members needed for executing the demos
(these members must be copied if you define another name for INT1CLIB and you want to run one of the demos).
Uncomment the ALLOC statement for INT1CLIB to allocate the default CAI.CAVHSAMP data set. Alternatively,
you can execute the CLIST INT1CLIB, the next comment in the CLIST, to create a personal include library and
allocate it to INT1CLIB.
INT1CLOG
Defines a sequential file used for the InterTest Batch session log. If it is not allocated, logging is disabled. For
more information about the session log, see Batch Debugging. Uncomment the first ALLOC DD(INT1CLOG)
statement if you want to write your LOG data to a pre-allocated data set. You must create the data set yourself.
Uncomment the second ALLOC statement if you want your LOG data written to SYSOUT. Uncomment the CLIST
INT1CLOG to create a personal LOG data set and allocate INT1CLOG to it.
 232


InterTest™ and SymDump ® 11.0
INT1REPT
Defines a sequential file used to store the HISTogram and XSUM reports. If it is not allocated, the HIST and
XSUM commands are disabled. For more information about the reports, see the HIST and XSUM Report
Command descriptions in Batch Debugging. Uncomment the first ALLOC DD(INT1REPT) statement if you want
to write your histogram data to a pre-allocated data set. You must create the data set yourself. Uncomment the
second ALLOC statement if you want your histogram data written to SYSOUT. Uncomment the CLIST INT1REPT
to create a personal histogram data set and allocate INT1REPT to it.
INT1ALIB
Defines the partitioned data set that contains allocations saved under option 3, ALLOCATION. If it is not allocated,
the save and retrieve features are disabled. For more information on allocating data sets and saving the
allocations, see Allocations Facility for ISPF. Uncomment the CLIST INT1ALIB if you want to dynamically create
and allocate a personal allocation library.
CAMRCIMS
CAMRCIMS is a sample CLIST showing the necessary file allocations for the foreground testing of IMS/DB or DL/I
programs. If you are licensed for the IMS option and want to debug these types of applications in foreground, the following
modifications should be made:
•Modify the PREFIX and IMS to match the prefix of the installed application and IMS data sets.
•Under /*Note2*/, uncomment the option that pertains to your installation. Use ISPLLIB for the LE run-time library if it is
different from the default (linklist).
NOTE
There are two sections marked /*Note2*/ in this CLIST.


NOTE
There are two sections marked /*Note2*/ in this CLIST.
Select per-site or per-user PROFLIB. In the sample CLIST, the first allocation statement after /*Note3*/ is for those that
want to allocate one PROFILE data set per site. The second allocation statement after /*Note3*/ is for those that want
to allocate a PROFILE data set per-user. The third statement after /* Note3 */ is a CLIST that can create a per-user
PROFILE data set if one does not exist and then allocate it. Note that you may have to tailor these statements or the
CLIST to meet your specific installation requirements.
•Under /*Note4*/, uncomment the optional files you are using with your product. See the optional files listed under
CAMRCLST for a description of the optional files.
•Under /*Note5*/, add any other IMS files needed for your application.
This CLIST is only required if you will be debugging your IMS applications in foreground.
CAMRCBTS
CAMRCBTS is a sample CLIST showing the necessary file allocations for the foreground testing of IMS/DC programs
under BTS. If you are licensed for the IMS option and want to debug these types of applications in foreground, the
following modifications should be made:
•Modify the PREFIX, IMS and BTS to match the prefix of the installed application, IMS, and BTS data sets.
Under /*Note2*/, uncomment the option that pertains to your installation. Use ISPLLIB for the LE run-time library if it is
different from the default (linklist).
NOTE
There are two sections marked /*Note2*/ in this CLIST.
Select per-site or per-user PROFLIB. In the sample CLIST, the first allocation statement after /*Note3*/ is for those that


want to allocate one PROFILE data set per site. The second allocation statement after /*Note3*/ is for those that want
to allocate a PROFILE data set per-user. The third statement after /* Note3 */ is a CLIST that can create a per-user
PROFILE data set if one does not exist and then allocate it. Note that you may have to tailor these statements or the
CLIST to meet your specific installation requirements.
 233


InterTest™ and SymDump ® 11.0
•For the statements under /*Note4*/, uncomment the optional files you are using with your product. See the optional
files listed under CAMRCLST for a description of the optional files.
•Under /*Note5*/, add any other IMS files needed for your application.
•Under /*Note6*/, modify your BTSIN and other BTS-related files according to your installation standards.
•Modify the BTSAL parameter (in the first line of the CLIST) to NEW if the BTS files are to be recreated for every
debugging session.
This CLIST is only required if you will be debugging your BTS applications in foreground.
CAMRCDB2
CAMRCDB2 is a sample CLIST showing necessary file allocations for the foreground testing of DB2 programs. If you
want to debug these types of applications in foreground, the following modifications should be made:
•Modify the PREFIX to match the prefix of the installed data sets.
•Under /*Note2*/, uncomment those libraries that are not allocated in your TSO logon procedure or in another CLIST.
Use ISPLLIB for the COBOL run-time library if it is different from the default (linklist). If the DB2 libraries to run the
application are not available through linklist or your TSO logon PROC, you must allocate them before issuing the
RUN command in CLIST CAMRCDBX. The allocations can be made in CAMRCDB2 or CAMRCDBX, where the DB2
subsystem name is provided to the product.
NOTE
There are two sections marked /*Note2*/ in this CLIST.
Select per-site or per-user PROFLIB. In the sample CLIST, the first allocation statement after /*Note3*/ is for those that
want to allocate one PROFILE data set per site. The second allocation statement after /*Note3*/ is for those that want


to allocate a PROFILE data set per-user. The third statement after /* Note3 */ is a CLIST that can create a per-user
PROFILE data set if one does not exist and then allocate it. Note that you may have to tailor these statements or the
CLIST to meet your specific installation requirements.
•Under /*Note4*/, uncomment the optional files you are using with the application. See the optional files listed under
CAMRCLST for a description of the optional files.
This CLIST is only required if you will be debugging your DB2 applications in foreground.
CAMRCDBX
You might need to udpate CAMRCDBX to allocate the DB2 libraries to run the application, if they are not available through
linklist or your TSO logon PROC. See the description for CAMRCDB2.
•Modify the PROC to include a query of the user supplied DB2 subsystem, &MRSSN, and then allocate the DB2
subsystem’s appropriate loadlibs, both DSN and loadlib. Add a LIBDEF statement for ISPLLIB to allocate these
loadlibs.
•If your InterTest Batch loadlib is not in your linklist then you also need to include that loadlib in the LIBDEF statement of
ISPLLIB concatenation.
•If your application load library that contains the program you are debugging also has a program with the name
“CALL”, then that “CALL” program will be executed in place of the INTBATCH program in the TSO CLIST “CALL
'CAI.CAVHLOAD(INTBATCH)' 'MEMBER(INTISPF)'” statement, which will cause unpredictable results or failures. If
this situation exists, then you should add the TSO “TEST” command to the CAMRCDBX CLIST in between the ‘RUN’
and ‘CALL’ commands.
CAMRSTRT


and ‘CALL’ commands.
CAMRSTRT
CAMRSTRT is called under an ISPF NEWAPPL. If you would like to modify the initial PF key settings for this APPL,
uncomment the call to the CLIST CAMRKEYS.
 234


InterTest™ and SymDump ® 11.0
CAMRKEYS
CAMRKEYS is called optionally from the CLIST CAMRSTRT to set up initial PF key settings for this APPL. By default, all
of the PF keys are set to an initial value. By default, the PF keys will only be set once. To have the PF keys reset, modify
the variable CHANGED.
CAMRCMD
Member CAMRCMD is the CLIST that is called from the /clist command during a debugging session. For more information
on the /clist command, see Batch Debugging.
Customize Compile Procedures
Several sample JCL members are provided in library CAVHPROC, which can be modified and used as the application
compile/assemble procedures. Which member you use depends whether you are using COBOL/VS, COBOL II and
higher, PL/I, or Assembler.
COBINT
COBINT is a sample JCL stream showing a COBOL/VS compile. The difference between this compile procedure and the
standard procedure supplied by IBM is that this procedure updates the symbolic information in the PROTSYM file.
You must supply the following parameters:
PROT
Specifies the data set name of the PROTSYM file.
COPT
Overrides the compiler options.
You must specify several additional items in the JCL. Information that must be modified or supplied includes the following:
•COBOL compiler library
•COBOL copy library
•COBOL source library
•LKED SYSLIB
COB2INT
COB2INT is a sample JCL stream showing a COBOL II or IBM COBOL compile. The difference between this compile
procedure and the standard procedure supplied by IBM is that this procedure updates the symbolic information in the
PROTSYM file.
You must supply the following parameters:
PROTSYM


PROTSYM file.
You must supply the following parameters:
PROTSYM
Specifies the data set name of the PROTSYM file.
COPT
Overrides the compiler options.
You must specify several additional items in the JCL. Information that must be modified or supplied includes the following:
•COBOL compiler library
•COBOL copy library
•COBOL source library
•LKED SYSLIB
 235


InterTest™ and SymDump ® 11.0
ASMINT
ASMINT is a sample JCL stream showing an assemble procedure. This procedure updates the symbolic information in the
PROTSYM file.
You must supply the following parameters:
PROTSYM
Specifies the data set name of the PROTSYM file.
AOPT
Overrides the assembler options.
You must specify several additional items in the JCL. Information that must be modified or supplied includes the following:
•Assembler library
•Assembler macro library
•LKED SYSLIB
PLIINT
PLIINT is a sample JCL stream showing a PL/I compile. This procedure updates the symbolic information in the
PROTSYM file.
You must supply the following parameters:
PROTSYM
Specifies the data set name of the PROTSYM file.
POPT
Overrides the PL/I compile options.
You must specify several additional items in the JCL. Information that must be modified or supplied includes the following:
•PL/I source library
•PL/I copy library
•LKED SYSLIB
Add to ISPF Main Panel (Optional)
To add InterTest Batch to your ISPF main menu, use member CAMRISPF in the InterTest Batch runtime source library
(CAVHSAMP) as a model to add option INTB to your ISPF main menu.
Add ISPF Libraries to TSO Logon Procedure (Optional)
To add the InterTest Batch ISPF libraries to your TSO logon procedure (instead of using LIBDEFs in the startup CLISTs),
make the following changes to your TSO logon procedure:
1.Add the InterTest Batch ISPF panel library (CAVHPNL0) to the ISPPLIB concatenation.
2.Add the InterTest Batch ISPF message library (CAVHMSG0) to the ISPMLIB concatenation.


3.Add the InterTest Batch CLIST library (CAVHCLS0) to the SYSPROC concatenation.
4.If the COBOL runtime library is different than the site default, add it to the ISPLLIB concatenation.
Refer to member CAMRTSOL in the InterTest Batch runtime source library (CAVHSAMP) for an example.
Customize Roscoe  (Optional)
This step applies only to Roscoe  users.
 236


InterTest™ and SymDump ® 11.0
The CAVHSAMP library provides three sample members for customizing Roscoe  for the application: CAMRETSO,
CAMREPL, and INTROS.
CAMRETSO
CAMRETSO is a sample JCL to add to your Roscoe  JCL. It should be concatenated to your Roscoe  ETSOLIB. Add the
COBOL runtime library if it is different from the site default.
CAMREPL
CAMREPL contains sample definitions to add to your Roscoe  Eligible Program List for the application. Incorporate it into
your Roscoe  EPL.
INTROS
Use member INTROS in the CAVHSAMP library to customize the options that are passed to the application when it is
invoked under Roscoe .
The INTROS member parameters include the following:
SYMLDYN
This parameter is no longer used.
TRACE(n)
Specifies the number of entries saved in the trace table and displayed by the TRACE and TRACE SOURCE
commands. The default is 1000 and n is an integer between 1 and 32760.
EXTSTOR(nM|nK)
The extended storage parameter allows you to set the amount of extended storage that is accessed by the
application under the z/OS operating system. This storage is used when formatting storage above the 16 MB
line.The default is 64M. Specify the amount in megabytes (nM) or kilobytes (nK), and n is any integer between 1
and 100.
LINKPARM(n)
Specifies the maximum number of linkage parameters that are set by the installation. The default is 32 and  n is
any integer between 1 and 1000. Each linkage parameter requires a page of memory (4096 bytes) unless the
default has been changed.


default has been changed.
LINKSIZE( n)
Specifies the amount of memory to be getmained for each linkage parameter. The default is 4096. It is not
recommended to specify less than 1024 or more than 32768. The parameters are always on page boundaries.
NOSLOW
Turns off the SLOW command at the installation. You are notified with a message stating this when attempting to
use the SLOW command. Comment this parameter out if you do not want the SLOW command disabled.
SLOWFAST(n)
Specifies the duration of the wait time in hundredths of a second between the executable statements when using
the SLOWFAST command. The default is one quarter of a second (n=25). The value is any integer between 1 and
4096. This might be helpful to TCAM users with buffering problems.
NOSTAX
This is a required startup parameter.
NOESTAE
This is a required startup parameter.
NOSTAE
This is a required startup parameter.
 237


InterTest™ and SymDump ® 11.0
NOESTAI
This is a required startup parameter.
NOJSCB
This is a required startup parameter.
Other considerations for Roscoe  users include:
•Concatenate the COBOL or PL/I runtime library if it is not in linklist and it is required to execute your application under
Roscoe .
•Increase the Roscoe  ETSALLOC parameter, if necessary.
•The CAI.CAVHRPF library must be imported to a Roscoe  RPF library.
Review and Customize for BTS
Member INTBTSX is provided for ISPF users with Business Transaction Services (BTS) extended support. (This member
is provided for clients who are licensed for the IMS option and want to debug BTS applications in foreground.) Parameters
relating to INTBTSX are listed following:
ISPF
This is required to run the application under the ISPF dialog manager.
SYMLDYN
This option is no longer used.
TRACE(n)
Specifies the number of entries saved in the trace table and displayed by the TRACE and TRACE SOURCE
commands. The default is 1000 and n is an integer between 1 and 32760.
EXTSTOR(nM|nK)
The extended storage parameter allows you to set the amount of extended storage that is accessed by the
application under the z/OS operating system. This storage is used when formatting storage above the 16 MB
line. The default is 64M. Specify the amount in megabytes (nM) or kilobytes (nK), and n is any integer between 1
and 100.
LINKPARM(n)
Specifies the maximum number of linkage parameters that are set by the installation. The default is 32. n is any


integer between 1 and 1000. Each linkage parameter requires a page of memory (4096 bytes) unless the default
has been changed.
LINKSIZE(n)
Specifies the amount of memory to be getmained for each linkage parameter. The default is 4096. It is not
recommended to specify less than 1024 or more than 32768. The parameters are always on page boundaries.
NOSLOW
Turns off the SLOW command at the installation. You are notified with a message stating this when attempting to
use the SLOW command. Comment this parameter out if you do not want the SLOW command disabled.
SLOWFAST(n)
Specifies the duration of the wait time in hundredths of a second between the executable statements when using
the SLOWFAST command. The default is one quarter of a second (n=25). The value is any integer between 1 and
4096. This might be helpful to TCAM users with buffering problems.
BTSNAME(*******)
This is a BTSTSOST user-defined name.
BTSEXT
This is intercepted PA2 support.
BTSSYSO
This is BTS SYSOUT support.
 238


InterTest™ and SymDump ® 11.0
NOSTAX
This is a required startup parameter.
NOESTAE
This is a required startup parameter.
NOESTAI
This is a required startup parameter.
NOJSCB
This is a required startup parameter.
Screen Handling Solution for the Message BTS0067I
This product has a great deal of code that deals with screen handling in the BTS environment. While this code handles the
majority of environments, there is a screen-handling problem that occurs when a transaction reinserts itself without issuing
a COBOL GOBACK verb.
Symptom: BTS does not display the next IMS screen because BTS fails to realize that the PA2 key from VTAM is
actually a RESHOW indicator, and has not been entered by the terminal operator. If this occurs, the following message is
displayed:
BTS0067I NO MORE MESSAGES. SCREEN CLEARED.
If your site has programs that perform the previous function, or your site has experienced any problems with PA2,
parameter BTSEXT in member INTBTSX (see the previous parameter list) signals the application to use extended BTS
support. The extended support causes BTS to ignore the PA2 key.
This modification has the following side effects on BTS:
•With the PA2 key disabled, it is not functional for paging.
This only affects applications that use multiple page or segment output messages and use the transaction insertion
technique described previously.
•The change also replaces the PF key simulation capability of BTS.
This only affects users and BTS using terminals with NO program function (PF) keys.
If either of these effects causes a problem at your site, contact Broadcom Support .
The problem arises because BTS does not enter and exit full-screen mode properly. While it functions in a stand-alone


environment, a failure occurs when BTS is run with another full-screen product such as this product.
Applications Using Message Switching and DISPLAY or Figure Verbs
Applications that perform message switching and use DISPLAY, Figure, or both verbs should use the BTSSYSO option.
Parameter BTSSYSO in member INTBTSX (see the previous parameter list) signals the application to use extended BTS
SYSOUT support.
The BTSSYSO parameter is recommended if your site has programs that use DISPLAY, Figure, or both in the BTS
environment.
Customize for DB2 SP and IMS/DC Debugging
Special support is provided for debugging DB2 stored procedures and for IMS/DC transactions without the use of
BTS. For more information about using batch link, see Batch Link Facility.
NOTE
The batch link scheduling feature must be active and the DB2 SP or IMS/DC transaction name to be debugged
must have already been defined to the schedule table before job submission. Otherwise the submitted DB2 SP
or IMS/DC job will run unmonitored.
 239


InterTest™ and SymDump ® 11.0
Using Batch Link to Debug Your DB2 Stored Procedures
You can use batch link to debug your DB2 stored procedures. Manually convert the JCL used to start the WLM address
space in which the DB2 stored procedure executes. For more information about making the necessary changes to the
procedure, see InterTest Batch JCL Requirements.
Update the new INT1OPTS data set by adding the DB2SP option at the end of the control statement.
The following panel is an example of the converted JCL:
//D810WLM PROC RGN=7M,APPLENV=D810WLM,DB2SSN=D810,NUMTCB=1
//IEFPROC EXEC PGM=CAMRBL01,REGION=&RGN,TIME=NOLIMIT,
// PARM='&DB2SSN,&NUMTCB,&APPLENV'
//STEPLIB DD DISP=SHR,DSN=CAI.CAVHLOAD
//        DD DISP=SHR,DSN=DB2V8104.RUNLIB.LOAD
//        DD DISP=SHR,DSN=CEE.SCEERUN
//        DD DISP=SHR,DSN=DB2.DB2810.SDSNLOAD
//INT1LOAD DD DISP=SHR,DSN=CAI.CAVHLOAD
//INT1PNLL DD DISP=SHR,DSN=CAI.CAVHPNL1
//INT1MSGL DD DISP=SHR,DSN=CAI.CAVHMSG0
//INT1PARM DD DISP=SHR,DSN=CAI.CAVHSAMP
//INT1PROF DD DISP=SHR,DSN=CAI.PROFLIB
//INT1CLOG DD SYSOUT=*/
/INT1OPTS DD *


//INT1CLOG DD SYSOUT=*/
/INT1OPTS DD *
  EXEC DSNX9WLM,DB2SP
/*
After modifying the JCL that WLM uses to run the stored procedure, invoke the stored procedure. Start the application,
select option 5 for batch link, and then option 2. Your stored procedure will be waiting to be debugged.
Using Batch Link to Debug Your Online IMS Programs
Use batch link to debug your online IMS applications without the use of BTS.
1.Convert the JCL to start the MPP region for use with batch link.
2.Add the IMSDC option to the INT1OPTS DD. The following is an example of the converted JCL with the option added:
//IMSZMPP4 JOB (07300000),'MPP REGION',REGION=4096K,
// CLASS=3,MSGCLASS=X,MSGLEVEL=(1,1)
//REGION EXEC PGM=CAMRBL01,REGION=512K,
// TIME=1440,DPRTY=(12,0),
// PARM=(MSG,001000000000,
// N00000000,
// ,,,,10,
// 5,IMSZ,,,,
// ,,,N,
// '',,)
//INT1OPTS DD *EXEC=DFSRRC00,PROFILE=TESTMPP,IMSDC
/*
//INT1PARM DD DISP=SHR,DSN=CAI.CAVHSAMP
//INT1LOAD DD DISP=SHR,DSN=CAI.CAVHLOAD
//INT1PNLL DD DISP=SHR,DSN=CAI.CAVHPNL1
//INT1MSGL DD DISP=SHR,DSN=CAI.CAVHMSG0


//INT1PROF DD DISP=SHR,DSN=CAI.PROFLIB/
/INT1CLOG DD SYSOUT=*
//INT1REPT DD SYSOUT=*
//STEPLIB DD DSN=CAI.CAVHLOAD,DISP=SHR
 240


InterTest™ and SymDump ® 11.0
// DD DSN=IMS.USER.LOAD,DISP=SHR
// DD DSN=IMS.IMSZ.PGMLIB,DISP=SHR
// DD DSN=IMS.IMSZ.RESLIB,DISP=SHR
//PROCLIB DD DSN=IMS.IMSZ.PROCLIB,DISP=SHR
//SYSUDUMP DD SYSOUT=A,
// DCB=(LRECL=121,BLKSIZE=3129,RECFM=VBA),
// SPACE=(125,(2500,100),RLSE,,ROUND)
3.Start the region by submitting the modified JCL.
4.Define the transaction that you want to debug that is scheduled to run in the 'test mpp' region. Run the transaction.
5.Start the application, select option 5, Batch Link, and then option 2. Your transaction will be waiting to be debugged.
NOTE
For information about using the scheduling feature, see Batch Link Facility. Using this feature, you can select
which applications you would like to debug and which should be executed unmonitored.
SymDump  Batch
Bind DB2 Support Member
NOTE
If your site executes programs in a DB2 environment, you must perform this step.
Member CARXBIND in CAI.CAVHJCL binds DBRM CAODDBB0 into package CAODPACK, the package into plan
CAODPLAN, and grants EXECUTE authority of the plan to PUBLIC.
Using the instructions provided in the JCL, copy and edit the JCL as needed for your DB2 subsystem.
Submit the job and review the output to verify that BIND processing ran successfully. If BIND processing completed with a
return code greater than 4, review the output, correct the problem, and resubmit.
NOTE


NOTE
If your site uses multiple DB2 subsystems, you must execute this job for each subsystem.
Abend Reporting with Language Environment (LE)
If your application is executing under IBM's Language Environment (LE), it is possible to receive abend reports even when
an ABEND and system dump do not occur.
Review Language Environment (LE) Considerations
Applications that terminate abnormally under IBM's Language Environment (LE) may not result in an abend or a system
dump. The two types of abnormal terminations that your applications might experience under LE are listed following:
•User abends, system abends, or program check interrupts
–For abends or program check interrupts in a user program with the LE TRAP option set to TRAP(ON), the LE
Condition Manager intercepts the abend. The application is usually terminated without an abend or system dump.
–For abends or program check interrupts in a user program with the LE TRAP option set to TRAP(OFF), the
application is terminated by the abend and a system dump is produced.
–For abends issued by LE, the application is terminated by the abend and a system dump is produced.
•Unhandled LE conditions
If a condition is raised (by LE or a user program) with severity 2, 3, or 4, and is not handled by a condition handler, the
application is terminated without an abend or system dump.
There are abnormal terminations under LE, which do not ordinarily result in an Abend report, because SymDump  Batch
remains dormant until a system dump is requested. To guarantee that SymDump  Batch reports are produced for every
abnormal termination under LE, SymDump  Batch provides CAOECEEX to be used as the LE abnormal termination exit.
 241


InterTest™ and SymDump ® 11.0
NOTE
There are several ways in which an LE-enabled application can handle its own abend, such as using USRHDLR
or CEEHDLR. When an application defines a condition handler and a SymDump Batch abend report is also
needed, it is up to that program to percolate the abend.
CAOECEEX - Add Abnormal Termination Exit Entry
Use the following procedure to add abnormal termination exit entry for CAOECEEX.
Follow these steps:
1.Edit CEE.SCEESAMP(CEEEXTAN).
2.Follow the instructions in this member to add an abnormal termination exit entry for CAOECEEX.
3.Apply the applicable SYSMOD to make these changes take effect.
NOTE
For more information about the CEEEXTAN exit, see the IBM z/OS Language Environment Customization
guide.
Establish Access to the TSO Facility
If your site does not have CLIST libraries with variable length records, proceed to Concatenate ISPF File and Tailor
Master Panel.
Convert CLIST Library from Fixed to Variable
The SymDump  Batch ISPF panels are shipped with several CLISTs. These CLISTs are in CAI.CAVHCLS0 after APPLY
processing completes. For Broadcom  to ship corrective maintenance to these CLISTs, they must be in a fixed-length,
card-image library because SMP/E invokes IEBUPDTE to make source changes.
Many sites use CLISTs that are in variable-length libraries. If you are one of these sites, Broadcom  provides a small,
stand-alone batch utility that converts our CLISTs from the fixed-length form we ship into a variable form you can
concatenate with the rest of your CLIST libraries.
NOTE


concatenate with the rest of your CLIST libraries.
NOTE
This utility program can be used to convert any fixed CLIST library to a variable library. It does not check
whether the library you are converting is from Broadcom . This utility does not support selective conversion; it
converts the entire library.
The JCL to invoke the utility is in CAI.CAVHJCL(CARXCNVT). The REPLACE parameter is optional; you can specify
if you want the CLISTs in the output data set replaced by similarly named CLISTs from the input data set. Use this
parameter with caution .
Check the following information when you review this JCL:
•If the SymDump  Batch load libraries are added to the linklist, the STEPLIB is not necessary.
•All messages from CAOHCNVT are written to DDNAME SYSPRINT. The program does not execute if you do not
allocate SYSPRINT. It is a fixed-length, 121-byte record with ASA carriage control.
•The input (fixed-length) CLIST library must be allocated to SYSUT1, and the output (variable-length) CLIST library
must be allocated to SYSUT2.
NOTE
You must  specify a BLKSIZE if the output data set is being created. The BLKSIZE must be an even multiple
of 255 plus 4 (for the Block Descriptor Word).
 242


InterTest™ and SymDump ® 11.0
Concatenate ISPF File and Tailor the Master Panel
You must include the SymDump  Batch ISPF libraries in your session ISPF files concatenation to access the SymDump
Batch panels. Use the following procedure to concatenate the ISPF file and tailor the Master panel.
Follow these steps:
1.Concatenate the following data sets into the indicated ddnames (if they were not previously concatenated):
Data Set Name DDName Description
CAI.CAVHPNL0 ISPPLIB ISPF panels for SymDump  Batch
CAI.CAVHSKL0 ISPSLIB ISPF skeletons for SymDump  Batch
CAI.CAVHMSG0 ISPMLIB ISPF messages for SymDump  Batch
CAI.CAVHTBL0 ISPTLIB ISPF tables for SymDump  Batch
CAI.CAVHCLS0 SYSPROC ISPF CLISTs for SymDump  Batch
CAI.CAVHLOAD ISPLLIB or STEPLIB SymDump  Batch Load Library
2.Perform the following steps if your site uses variable-length CLISTs:
a. Execute CAI.CAVHJCL(CARXCNVT) to change the CLISTs from fixed to variable length format.
b. Point the SYSPROC DD to the CAI.VCAICLIB data set (instead of CAI.CAVHCLS0).
3.Allocate the following data sets into the indicated ddname (if they were not previously allocated):
Data Set Name DDName Description
CAI.CAVHTBL0 CAOEXTBL ISPF tables for SymDump  Batch
CAI.CAVHHELP CAOIHELP ISPF Help library
You have now placed the SymDump  Batch ISPF libraries into your session ISPF files concatenation.
To tailor the ISPF Master panel, do one of the following


To tailor the ISPF Master panel, do one of the following
•Copy the ISP@MSTR panel supplied with SymDump  Batch (named CARXSBA0)
•Add new lines to your existing ISP@MSTR panel.
Use the following procedure to add new lines to your existing panel.
Follow these steps:
1.Add the first line after the last option selection displayed on the panel.
2.Define this line as an option number for the user to select with a brief description of the function. For example:
% 6 +CA SYMDUMP BATCH - Options Panel
% 7 +CA SYMDUMP BATCH - Invoke the CAIPRINT Repository Viewer
3.Add the lines containing the commands required to execute the options to the list of &SEL variables defined at the end
of the panel. For example:
6. 'PANEL(CAOEP001) NEWAPPL(CA$Z)'
7. 'PGM(CAOIF000) NEWAPPL(CAOI)'
Log and Notify Facilities
The following LOG and NOTIFY facilities are available with SymDump  Batch. For more information, see SymDump  Batch
Options.
WTO
Writes a description of every abend to the job log using WTO with ROUTCDE=11
 243


InterTest™ and SymDump ® 11.0
WTL
Writes a description of every abend to the system log
LOGROS
Sends a description of every abend to the Roscoe  IE user who submitted the job
LOGTSO
Sends a description of every abend to the TSO user who submitted the job
LOGNET
Writes a description of every abend to Netman
LOGUNI
Writes a description of every abend to the NSM  console
SMF
Writes a description of every abend to the SMF log
For WTO, WTL, LOGROS, LOGTSO, and LOGUNI, one of the following messages is provided depending on the amount
of information available:
CAPE022I jjjjjjjj ssssssss ABENDED tnnnn IN PROGRAM pppppppp AT +xxxxxx
CAPE023I jjjjjjjj ssssssss ABENDED tnnnn AT ccccccccccccccccccccccccccc
jjjjjjjj
Identifies the jobname.
ssssssss
Identifies the stepname.
t
Identifies the abend type (S=System or U=User).
nnnn
Identifies the abend code.
pppppppp
Identifies the program name.
xxxxxx
Identifies the program offset.
cccccccc
Identifies the source statement from the symbolic file.
NOTE
The source statement is only available in the log message if symbolic processing is done at execution
time (that is, the Abend report is written to the CAIPRINT DD).
The SMF records are formatted as follows:
CSMFREC  EQU   *                   MAP FOR SMF RECORD
CSMFRDW  DS    XL4                 RDW FOR SMF RECORD
*....... STANDARD SMF RECORD HEADER
CSMFIND  DS    XL1


*....... STANDARD SMF RECORD HEADER
CSMFIND  DS    XL1
CSMFRECC DS    XL1                 SMF RECORD TYPE
CSMFTIME DS    XL4
CSMFDATE DS    XL4
CSMFSYSD DS    XL4*....... END OF SMF RECORD HEADER
CSMFJOB  DS    CL8                 JOBNAME
CSMFSTEP DS    CL8                 STEPNAME
CSMFJBID DS    CL8                 JOB NUMBER
 244


InterTest™ and SymDump ® 11.0
CSMFACCT DS    CL25                JOB ACCOUNT NUMBER
CSMFPGID DS    CL21                PROGRAMMER NAME
CSMFTSOD DS    CL8                 TSOID
CSMFPROG DS    CL8                 NAME OF ABENDING PROGRAM
CSMFCSEC DS    CL8                 NAME OF ABENDING CSECT
CSMFOFFS DS    XL3                 OFFSET INTO PROGRAM
CSMFABTP DS    CL1                 TYPE ABEND (SYSTEM OR USER)
CSMFABCD DS    CL4                 ABEND CODE
CSMFREAS DS    XL1                 REASON CODE
CSMFPSW1 DS    XL4                 FIRST WORD OF ABENDING PSW
CSMFPSW2 DS    XL4                 SECOND WORD OF ABENDING PSW
CSMFFLG1 DS    XL1                 FLAG BYTE
CSMFOPT  EQU   B'10000000'         PROGRAM IS CA-OPTIMIZED
CSMFCSL  EQU   B'00001000'         CSL IMAGE IS PRESENT
CSMFLANG DS    XL1                 LANGUAGE CODE
CSMFCOBV EQU   C'S'                VS COBOL
CSMFCOB2 EQU   C'X'                COBOL II
CSMFNCOB EQU   X'00'               NOT COBOL
CSMFCBV4 EQU   C'4'                COBOL VERSION 4
CSMFCBV3 EQU   C'3'                COBOL VERSION 3
CSMFCBV2 EQU   C'2'                COBOL VERSION 2
CSMFOREL DS    CL6                 OPTIMIZER RELEASE
CSMFCTIM DS    CL8                 TIME PROGRAM COMPILED


CSMFCTIM DS    CL8                 TIME PROGRAM COMPILED
CSMFCDAT DS    CL11                DATE PROGRAM COMPILED
CSMFSEQ  DS    CL4                 EDS SEQUENCE NUMBER
         DS    CL4                 **  RESERVED **
CSMFCSLI DS    CL133               CSL IMAGE- INCLUDED ONLY
*                                  IF CSL INDICATOR ON.
CSMFEND  EQU   *
A utility program (CAOESMF) is provided to select and report on SymDump  Batch SMF records. You can use this utility to
design your own customized report using the DSECT provided.
*******************************************************************************
                             SEQUENCE NUMBER = 0000005
    JOBNAME        =  MIKEDA          STEPNAME       = TSOPROC
    DATE           =  mm/dd/yy        TIME           = hh.mm.ss
    ABEND          =  S0C7            SMFID          = XE86
    JOB NUMBER     =  TSU06037        ACCOUNT #      = 40500000
    LMOD           =  CAO2DEMO        PROGRAM        = CAO2DEMO
    REL INTERRUPT  =  000006BC        ABS INTERRUPT  = 000066BC
    LANGUAGE       =  COBOL II CA-OPTIMIZED
    CSL NOT AVAILABLE
*******************************************************************************
                             SEQUENCE NUMBER = 0000006
    JOBNAME        =  MIKEDB          STEPNAME       = TSOPROC
    DATE           =  mm/dd/yy        TIME           = hh.mm.ss
    ABEND          =  S0C4            SMFID          = XE86
    JOB NUMBER     =  TSU08811        ACCOUNT #      = 40500000
    LMOD           =  MAINPROG        PROGRAM        = MAINPROG


LMOD           =  MAINPROG        PROGRAM        = MAINPROG
    REL INTERRUPT  =  00000202        ABS INTERRUPT  = 0000EA02
    LANGUAGE       =  NOT COBOL
    CSL NOT AVAILABLE
*******************************************************************************
 245


InterTest™ and SymDump ® 11.0
                             SEQUENCE NUMBER = 0000007
    JOBNAME        =  MIKEDC          STEPNAME       = TSOPROC
    DATE           =  mm/dd/yy        TIME           = hh.mm.ss
    ABEND          =  S0C7            SMFID          = XE86
    JOB NUMBER     =  TSU08983        ACCOUNT #      = 40500000
    LMOD           =  TESTPGM         PROGRAM        = TESTPGM
    REL INTERRUPT  =  000001FC        ABS INTERRUPT  = 000061FC
    LANGUAGE       =  NOT COBOL
    CSL NOT AVAILABLE
*******************************************************************************
    Total number of records processed = 3
Use Netman  Interface
The LOGNET option activates the Netman  interface. SymDump  Batch uses the Machine-Generated Problem Tracking
(MGPT) facility to open a problem record with Netman . Before this facility can be used, you must complete the following
steps.
Follow these steps:
1.Install and activate Netman  on the same system on which SymDump  Batch will be active.
2.Select the MGPT feature during Netman  system generation.
3.Identify the NTMMGCTL, NTMSC, and NTMPI files in CAOETABL when the SymDump  Batch options are customized.
4.Add two MGPT table entry records to the Netman  database. One record must specify SymDump  Batch as the source
product and SYS-ABEND as the input category. The other record must specify SymDump  Batch as the source product
and USER-ABEND as the input category.
5.Copy the Netman  MGPT interface modules NTMENV, NTMGGUP, and NTMECLS into a linklist library so that they are


available for SymDump  Batch at abend time.
6.Ensure that the Netman  started task NTMBRD is up and running if the problem records are to be transferred to the
problem tracking database (NTMPI file).
The Netman  problem record layout is as follows:
NETMREC  DSECT
NRECTO   DC    CL8'NETMAN'             PRODUCT TO
NRECFROM DC    CL8'CA-EDS'             PRODUCT FROM
NRECLNAM DS    CL44                    LOGICAL NAME
         ORG   NRECLNAM+16
NRECSER# DS    CL10      BLANK         SERIAL NUMBER
NRECRES1 DS    CL18                    RESERVED
NRECDATE DS    CL6      (CURRENT)      INCIDENT DATE - CYYDDD
NRECTIME DS    CL8      (CURRENT)      INCIDENT TIME - HHMMSSTH
NRECLOC  DS    CL8      BLANK          LOCATION
NRECRES2 DS    CL2                     RESERVED
NRECSYS  DS    CL4      SMFID          SYSTEM CODE
NRECEQMT DS    CL10     BLANK          EQUIPMENT TYPE
NRECUNIT DS    CL5      BLANK          UNIT ID
         SPACE 1
NRECACT  DS    CL1      (1)            ACTION NEEDED
NRECACTO EQU   C'1'                      OPEN A PROBLEM
NRECACTU EQU   C'2'                      UPDATE A PROBLEM
NRECACTC EQU   C'4'                      CLOSE A PROBLEM
         SPACE 1
NRECUPD  DS    CL1      (N)            SOURCE TO UPDATE
 246


InterTest™ and SymDump ® 11.0
NRECUPDY EQU   C'Y'                      MGPT WILL UPDATE OR CLOSE
NRECUPDN EQU   C'N'                      MGPT WILL ONLY OPEN
         SPACE 1
NRECDEV  DS    CL1      (N)            SPECIFIC DEVICE
NRECDEVY EQU   C'Y'                      SPECIFIC DEVICE ASSOCIATED
NRECDEVN EQU   C'N'                      NO SPECIFIC DEVICE ASSOCIATED
         SPACE 1
NRECCAT  DS    CL10     SYS-ABEND      PROBLEM CATEGORY
*                    OR USER-ABEND
NRECDESC DS    CL40  SHORT MSG TEXT       PROBLEM SHORT DESCRIPTION
*----------------------------------------------------------*
*        SHORT MESSAGE TEXT IS 'PROGRAM GOT SABC  AT +00000000 RC=NN
*----------------------------------------------------------*
         SPACE 1
NRECTEXT EQU   *                       ADDITIONAL DESCRIPTION
NRECJLIT DC    C'JOB='
NRECJNAM DS    CL8                     AREA FOR JOBNAME
         DS    CL1
NRECSLIT DC    C'STEP='
NRECSNAM DS    CL8                     AREA FOR STEPNAME
         DS    CL1
NRECILIT DC    C'JOBID='
NRECJBID DS    CL8                     AREA FOR JOB ID
         DS    CL1
NRECALIT DC    C'ACCOUNT='
NRECACCT DS    CL25                    ACCOUNTING CODE
         DS    CL1
NRECNLIT DC    C'NAME='
NRECPGID DS    CL21                    PROGRAMMER NAME
         DS    CL1
NRECTLIT DC    C'LANGUAGE='
NRECLANG DS    CL9                     COMPILED LANGUAGE
*----------------------------------------------------------*


NRECLANG DS    CL9                     COMPILED LANGUAGE
*----------------------------------------------------------*
*        EITHER 'NOT COBOL'                                *
*               'VS COBOL'                                 *
*               'COBOL II'                                 *
*               'COBOL V N'                                *
*----------------------------------------------------------*
         DS    CL1
NRECCSL  DS    CL80                    AREA FOR CSL IMAGE IF AVAILABLE
NRECTUSE EQU   *-NRECTEXT
NRECFILL DS    CL(205-NRECTUSE)        REMAINDER OF RECORD
         SPACE 1
NRECEND  EQU   *                       END OF EVENT RECORD
NRECSIZE EQU   NRECEND-NRECTO          SIZE OF ONE RECORD
*=====================================================================*
Sufficient fields and identifying data are included in the record to permit filtering on a variety of criteria.
For more information about the uses for MGPT record details, see the Netman  documentation.
 247


InterTest™ and SymDump ® 11.0
CICS Interfaces and Compatibility
This article contains interface and compatibility considerations for InterTest for CICS and SymDump  for CICS.
InterTest for CICS and SymDump  for CICS
The following interface and compatibility information pertains to both InterTest for CICS and SymDump  for CICS.
Install DB2 Support
Use the following procedure to install DB2 support:
1.The following members on CAI.CAVHJCL provide RDO entries:
–CSDDB266 for CICS 4.1
–CSDDB267 for CICS 4.2
–CSDDB268 for CICS 5.1
–CSDDB269 for CICS 5.2
–CSDDB270 for CICS 5.3
–CSDDB271 for CICS 5.4
–CSDDB272 for CICS 5.5
–CSDDB273 for CICS 5.6
–CSDDB274 for CICS 6.1
2.Bind the DBRM members (INB0FIDB and INB0AIDB) provided in the CAI.CAVHDBRM into an InterTest DB2 plan
(the recommended name is INB0PLAN). The SAMPBIND member on the CAI.CAVHJCL library provides a sample of
DB2 BIND statements for the InterTest DB2 plan. For SymDump  for CICS, you only need to bind the DBRM member
INB0AIDB provided on the CAI.CAVHDBRM into the DB2 plan (the recommended name is INB0PLAN).
3.The DBA must grant bind and execute authority to the plan created in the previous step.


3.The DBA must grant bind and execute authority to the plan created in the previous step.
4.For DB2 subsystems running in new function mode (release 10.1 and above), ensure that the library that contains
the customized DSNHDECP (either SDSNEXIT or SDSNLOAD) is in the DFHRPL DD concatenation after the CICS
program libraries.
5.To support the CORE=LASTSQL command for InterTest and SymDump for CICS, the global exit XRMIOUT is started
by default when you start the product. This exit then collects DB2-related call information for every system DB2 call.
This can have significant performance implications in some DB2 shops. The parameter XRMIO=YES/NO IN25OPTS
controls use of this exit. The default is XRMIO=YES. Review this before you use the default settings.
CICS Startup DSA Limit Parameter
InterTest for CICS and SymDump for CICS make calls to IEWBIND when using the new online COMPOSITE module
command and IEWBIND requires about 750 KB of below the line storage. To ensure that sufficient storage is available
(below the line for IEWBIND calls), your DSALIM must be at least 750 KB less than your below the line private area size.
Failure to follow this storage guideline can result in S0F4 and U900 abends in your CICS region during dump capture.
Update the CICS JCL and Startup Parameters
If your site has previously installed InterTest or SymDump for CICS as a separate product, some DD statements may
exist already.
If you use DD statements in your CICS startup JCL, your InterTest and SymDump for CICS files, as defined in the CSD,
require DD statements in the JCL for CICS. DISP=SHR must be specified for PROTSYM to allow batch compiles to


run concurrently with CICS. You can also directly add the data set names to the CEDA FILE definition, defined in the
CSDSYM member in CAI.CAVHJCL, and remove the DD statements for those files.
 248


InterTest™ and SymDump ® 11.0
InterTest and SymDump Common DD Statements
Add the product load library to the DFHRPL in the CICS startup JCL.
//  DD   DSN=CAI.CAVHLOAD,DISP=SHR
NOTE
•If you modified the IN25OPTS options during installation, make sure the load library that contains the
modified IN25OPTS is in your DFHRPL concatenation before the CAI.CAVHLOAD library.
•InterTest for CICS and SymDump  for CICS do not currently support the IBM Dynamic program LIBRARY
concatenation feature.
If you execute the demo programs, add the following DD to the DFHRPL in your CICS startup JCL. Specify the name of
the load library which contains the demo programs:
// DD DSN=CAI.demoload,DISP=SHR
CICS DD statements
//PROTCPF  DD DSN=CAI.PROTCPF,DISP=OLD (InterTest  for CICS only)
//PROTDMP  DD DSN=CAI.PROTDMP,DISP=SHR (SymDump for CICS only)
//SYSMDUMP DD DSN= your.dataset.name , (SymDump for CICS only)
//PROTSYM  DD DSN=CAI.PROTSYM,DISP=SHR
//PROTHLF  DD DSN=CAI.CAVHHLF,DISP=SHR
//PROTUHF  DD DSN=CAI.PROTUHF,DISP=SHR
NOTE
Pre-allocate your SYSMDUMP data set with RECFM=FB,LRECL=4160,BLKSIZE=4160 and with enough space
to capture an SVC dump for your CICS region.
Add the Required CICS Resource Definitions


to capture an SVC dump for your CICS region.
Add the Required CICS Resource Definitions
Member, CSDINT in CAI.CAVHJCL library adds the CICS resource definitions for the InterTest for CICS programs, files,
and transactions. The CSDSYM member in CAI.CAVHJCL adds the CICS resource definitions for the SymDump  for CICS
programs, files, and transactions. Modify the JCL according to the instructions in these members.
Add the corresponding RDO group to your CICS startup list (the SIT parameter GRPLIST=) as listed in the following table:
CICS Level InterTest for CICS RDO Group SymDump  for CICS RDO Group
CTS 5.1 INT11068 SYM11068
CTS 5.2 INT11069 SYM11069
CTS 5.3 INT11070 SYM11070
CTS 5.4 INT11071 SYM11071
CTS 5.5 INT11072 SYM11072
CTS 5.6 INT11073 SYM11073
CTS 6.1 INT11074 SYM11074
The use of the InterTest for CICS transactions ISER, VIRC, and VTAT must not be protected to a specific sign on, and for
ACF2  and RACF users must meet the special considerations described in Installation Considerations .
Do not change any of the options specified for the InterTest or SymDump for CICS entries. If you believe there is an error
in any of the entries, contact Broadcom Support .
 249


InterTest™ and SymDump ® 11.0
For CICS regions that use DB2, you must install the DB2CONN group before the InterTest or SymDump for CICS RDO
entries.
Add Assembler DSECTs to the Symbolic File
InterTest and SymDump for CICS let you display the major CICS areas in Assembler DSECT format. You can also display
your own user areas in DSECT format. One way to do this is to add your DSECTs to the ones supplied by InterTest and
SymDump for CICS. However, if you do this, your entries will disappear when you install a new release of InterTest and
SymDump for CICS. A better way is to create one or more symbolic file members to contain your DSECTs.
Saving all of the DSECTs used at your site in one symbolic file member allows users of the FILE transaction to omit the
symbolic program name when requesting records or DL/I segments in structured format. The name of this member must
be referenced in the FSYMP installation option. The default name is PROTFILE.
To create your own symbolic file members, complete the following steps :
1.Run a job to add the members containing the DSECTs to the symbolic file.
2.Run a job to define the CORE keywords required to display the DSECTs.
Sample JCL for Adding Members to the Symbolic File
This sample JCL adds member USERDSEC to the symbolic file. This member contains the DSECT USERTWAF.
//USERDSEC         JOB   **your JOB card goes here**
//ASM          EXEC  PGM=ASMA90,REGION=1024K
//SYSLIB       DD    DSN=USER.SOURCE,DISP=SHR


//SYSLIB       DD    DSN=USER.SOURCE,DISP=SHR
//SYSUT1       DD    DSN=&SYSUT1,SPACE=(1024,(120,120),,,ROUND),
                     UNIT=VIO,
//                   DCB=BUFNO=1
//SYSPUNCH     DD    SYSOUT=B
//SYSTERM      DD    SYSOUT=*
//SYSPRINT     DD    DSN=&&TEMP,DISP=(,PASS),UNIT=SYSDA,
                     SPACE=(CYL,(3,2)),
//                   DCB=(RECFM=FBM,LRECL=121,BLKSIZE=2420)
//SYSIN        DD    *
USERTWAF       DSECT
               COPY USERTWAF
USERDSEC       CSECT
               END
//*
//PARM         EXEC  PGM=IN25PARM,REGION=512K,
//                   PARM='USERDSEC,LISTER=REF,NOPURGE'
//STEPLIB      DD    DSN=CAI.CAVHLOAD,DISP=SHR
//CARDS        DD    DSN=&&CARDS,DISP=(,PASS),UNIT=SYSDA,
                     SPACE=(80,1)
//*
//SA           EXEC  PGM=IN25SYMA,REGION=512K
//STEPLIB      DD    DSN=CAI.CAVHLOAD,DISP=SHR
//INPUT        DD    DSN=&&TEMP,DISP=(OLD,DELETE)
//OUTPUT       DD    SYSOUT=*,
                     DCB=(RECFM=FBM,LRECL=121,BLKSIZE=2420)
//MESSAGE      DD    SYSOUT=*


//MESSAGE      DD    SYSOUT=*
//PROTSYM      DD    DSN=INTRTST.PROTSYM,DISP=SHR
//CARDS        DD    DSN=&&CARDS,DISP=(OLD,DELETE)
/*
 250


InterTest™ and SymDump ® 11.0
For instructions on the STEPLIB DD, see the section Add COBOL File Structures to the Symbolic File.
For an explanation of the IN25PARM and IN25SYMA programs, see Adding Symbolic Information.
NOTE
This job does not require a link-edit step because it only updates the symbolic file. No load module is produced.
Language Environment (LE) Considerations
If your application is executing under IBM Language Environment (LE), region level run-time options could prevent
the application from intercepting problems. One option is TERMTHDACT, which controls what happens when an error
condition occurs, and which can prevent control from returning to InterTest.
For example, you could see the message "IGZ0063S An invalid sign was detected in a numeric edited sending field" in
your CEE message log, but the application does not stop at that instruction. The cause of the message might be that
the value of TERMTHACT is set to TRACE, which would not produce an abend and return control to InterTest. To allow
storage to be dumped, change the value to UADUMP and InterTest gets control and stops at the invalid instruction.
Use the CLER transaction in CICS to dynamically change options while the region is running. Changes made with CLER
are reset when the region is recycled. To permanently change a run-time option and not globally change the LE options
at your site, assemble the CEEROPT CSECT and link it into a library. Place it into the RPL to override the options for a
single CICS region. The input into the assembly step would look as follows:
Example:
CEEROPT CSECT
CEEROPT AMODE ANY
CEEROPT RMODE ANY


CEEROPT AMODE ANY
CEEROPT RMODE ANY
 CEEXOPT TERMTHDACT=((UADUMP,CESE,96),OVR)
 END
InterTest for CICS
Use the PROMMAC Macro
You can use PROMMAC macros in an assembly to create a load module defined in the CICS program definition that
contains a number of CNTL commands. These commands are executed consecutively in the order of their appearance in
the macros when either of the following commands is submitted:
CNTL=START,PROM=tablname
CNTL=EXEC,MODULE=tablname
Where  tablname   is the name of the load module generated by the assembly of the PROMMAC macros.
You can generate several alternate modules with different names, each with a CICS program definition, if you want
alternate ways to start InterTest for CICS or execute CNTL commands.
If the PROMD=tablname option is specified in the IN25OPTS macro, you can achieve the same result by specifying the
following command:
CNTL=START
If the CNTL=START command is issued from a CRT terminal or CRLP-type terminal (a terminal whose input and output
are two sequential files; see the IBM CICS System Programmer's Guide ), the commands from the load module are
displayed back. For a CRT terminal, there is a small time delay before each command is executed so the user can see
what is being done.
The first positional parameter of the PROMMAC macro contains the CNTL command to be executed. The command must
be enclosed in apostrophes.
 251