GC28-0629-3 OS VS2 MVS System Programming Library TSO

Download as pdf or txt
Download as pdf or txt
You are on page 1of 127

GC2il·0629·3

File No. 5370·39

OS/VS2 MVS System


Systems Programming Library: TSO

Includes Selectable Units:

TSO/VTAM VS2.03.813
System Security Support 5752-832
TSO/VT AM Leval 2 5752-858
Processor Support 2 5752-864

--- -
----
- - ---
- ---
- - ---
- - - ---
-----
___ '011_
Fowth EdItion (December, 1978)

This is a major revision of, and obsoletes GC28-0629-2. See the summary of
amendments following the contents for a list of changes made to this publications.

This edition with Technical Newsletter ON28-297I applies to release 3.7 of MVS and to
all subsequent releases of MVS until otherwise indicated in new editions or Technical
Newsletters. Changes are continually made to the information herein; before using this
publication in connection with the operation of IBM systems. consult the latest IBM
SystelD/370 BIIIIIOC,.,lIy,
GC20-0001 . for the editions that are applicable and current.

Publications afC not stocked at the address given below; requests for copies of IBM
publications should be made to your IBM representative or to the IBM branch office
serving your locality.

A form for readers' comments is provided at the back of this publication. If the form
has been removed, comments may be addressed to IBM Corporation, Programming
Systems Publications. Department DS8. Buildina 706-2. PO Box 390, Poughkeepsie, N.Y.
12602. IBM may use or distribute any of the information you supply in any way it
believes appropriate without incurrins any obligation whatever. You may. of course.
continue to use the information you supply. "-,

e CopyriSht International Business Machines Corporation 1974.I97S.1976.1918


Preface

This publication describes the TSO facilities that can be influenced by the
system programmer.

Part 1: TSO Services discusses considerations in preparing for TSO


processing. managing data sets needed by TSO, and writing exit routines to
extend or modify the operation of TSO.

Part 1: Reference _. TSO Commands describes the TSO commands


ACCOUNT and OPERATOR and their associated subrommands, which
should be installation controlled.

Associated publications:

OS/VSl System Programming Library: Initialization and Tuning Guide,


GC28-0681

OS/VS2 System Programming Library: Job Management, GC28-0627

OS/VS2 System Programming Library: Supervisor, GC28-0628

OS/VS2 MYS System Programming Library: JES2, GC23-0002

OS/VS2 System Programming Library: JES3, GC28-0608

OS/VS2 TCAM System Programmer's Guide TCAM Levei 10, GC30-2051

OS/VS2 Da.. Are.s, SYB8-0606

OS/VS2 TSO Command Language Reference, GC28-0646

OS/VSl System Programming Library: System �neration Reference,


GC26-3792

OS/VSl TSO Guide to Writing a Terminal Monitor PIO&J'am or a Command


Processor, GC28-0648
OS/VS2 MVS System Programming Library: VTAM, GC28-0688

OS/VS2 MYS vnoc and TCAS Logic, SY27-7269

IBM System/370 Principles of Operation, GA22-7000

Operator's Library: OS/VS TCAM (Level 10), GC30-3037

Operator's Library: OS/VSl MVS System Commands, GC38-0229

OS/VS2 System Programming Library: Debugging Handbook, Volume 2,


GC28-0709

OS/VS2 System Programming Library: Debugging Handbook, Volume 3,


GC28-0710

Preface 1M
"

.. OS/VSl System ....,


... . . l.IIKuy, TSO
.......
Contents

. . . . .. .. . .. . ' ' vii


-

Part I: TSO Senkes . . . . . . . . . . . . . . I


Preparing for TSO Processing . . . . . . . . . . 2
Writing a Message Control Program Cataloged Procedure 2
Writing a LOGON Cataloged Procedure 3
TSO Allocation Suggestions. . 4
Determining TSO User Size 4
EXEC Parameters 4
Optional Data Sets . . . . 5
Sample Procedure. . . . . 6
Space Allocation Used by the EDIT Access Method 6
Creating, Converting, and Maintaining UADS and Broadcast Data Sets 7
Content and Structure of UADS . . . . . . . . , . . . , . 8
Creating the UADS and Broadcast Data Sets from a Terminal \I
Crt:ating the UADS and Broadcast Data Sets with a Batch Job \I
Converting the UADS and Broadcast Data Sets . . . . . . . 12
Maintaining the UADS and Broadcast Data Sets from a Terminal 12
The Terminal Monitor Program . . . . . . . . . . . . . . . 12
Executing the TMP as a Batch Job . . . . . . . . . 12
Maintaining the VADS and Broadcast Data Sets with a Batch Job . 13
Initializing TSO/TCAM Time Sharing . . . . . . . . . . . . Il
Initializing TSO/VTAM Time Sharing . . . . . . . . . 14
Writing the Procedure That Starts TSO/VTAM Time Sharing 14
Building Translation Tables for TSOlvrAM Users . 15
Writing InslalJation Exits for the SUBMIT Command 17
IBM-Supplied Exit Routine .. . . . . . . . . 18
Installation-Written Exit Routine . . . . . . . . 18
Writing Installation Exits for OUTPUT, STATUS, and CANCEL Commands 21
IBM-Supplied Exit Routine . . . . . . 21
Installation-Written Exit Routine . . . . 21
Writing a LOGON Pre-Prompt Exit Routine 23
Installation Exit Routine Logic 24
Parameter Descriptions . . . . . . . . 26
Sample LOGON Pre-Prompt Exit Routine. 29
Writing Installation Exits for COPY, MOVE AND RENUM Subcommands of EDIT 30
10M-Supplied Exit Routine - VS8ASIC Data Set Type 30
Installation-Written Exit Routine . 30
Data Set Types and Syntax Checking 32
Data Set Types . . . . . . . . . 32
Syntax Checking . . . . . . . , 32
Writing Installation Exits for Syntax Checkers 36
Adding Subcommands to the EDIT Command 37
Authorized Program Execution 39

Part 2: Reference - TSO Co ...., 41


Coding the Commands 41
� ntinuatjon Lines. . 42
Delimiters. . . . . . 43
Parameter Definitions 43
ACCOUNT Command 44
ADO Subcommand of ACCOUNT 45
CHANGE Subcommand of ACCOUNT 51
DELETE Subcommand of ACCOUNT 56
END Subcommand of ACCOUNT 59
HELP Subcommand of ACCOUNT , . 60
LIST Subcommand of ACCOUNT 62
L1STIDS Subcommand of ACCOUNT . 64
SYNC Subcommand of ACCOUNT . . 65
OPERATOR Command . . . . . . . 66
CANCEL Subcommand of OPERATOR 67
DISPLAY Subcommand of OPERATOR . 68
,
END Subcommand of OPERATOR . . . 6'
HELP Subcommand of OPERATOR 71
MONITOR Subcommand of OPERATOR 13

Comeau ,.
SEND Subcommand of OPERATOR 74
SLIP Subcommand of Operator (5752-864) 77
Parameter Relationships (5752-364) . . 78
Indirect Addressing Used with SLIP (5752.-864) 79
Parameter Descriptions (575l--864) . 81
STOPMN Subcommand of OPERATOR . . . .
. 101

IDdex . . . 103

Figures
Figure 1. Sample Listing of MCP Start Procedures . . . . 3
Figure 2. Sample Listing of LOGON Cataloged Procedure 6
figure 3. Organization of the UADS . . . . . . , . . . 9
Figure 4. The Simplest Structure for a Typical UADS Entry 10
Figure S. A Complex Structure for a Typical UADS Entry 10
Figure 6. A Sample Listing, Showing the Creation of UADS and Broadcast with a Batch Job 11
Figure 7. A Sample Listing, Showing the Conversion of UADS and Broadcast. 12
Figure 8. An Example of a CSECT Containing Translation Tables 17
Figure 9. LOGON Pre-Prompt Parameters . . . . . . . . . . . 24
Figure 10. Sample Listing of a LOGON Pre-Prompt E/(it ... . . . . 29
Figure II. Format of Records Passed to Synta/( Checkers. . . . . 33
Figure 12. Interface between EDIT Program and Synta/( Checkers 33
Figure 13. Contents of the Buffer Control Block . . . . . . . . 34
Figure 14. Contents of the Synta/( Checker Communication Area 34
Figure 15. Contents of the Option Word 35
Figure 16. RB Structure (5752-864)• . . . • . . • . . . . • . 91

YI OS/VSl System ProcnmminR Ubrary: TSO


Page of GC18-0619-3
As ..,dated March 15, 1979
By TNL: GN18-2971 for 5752-364

Summary of Amendments
for GC28-0629-3 as updated
by GN28-2971

This update renects technical changes to the SLIP


subcommand of OPERATOR.

Summary of Amendments
for GC28-0629-3
OS/VS2 Release 3.7

This publication contains information for SU64: the all their subcommands, are now defined using the standard
addition of SLIP as a subcommand of OPERATOR. In syntax language.
addition. pertinent technical changes have been made to
Part 2: the ACCOUNT and OPERATOR commands, and

Summary of Amendments
for GC28-0629-2
OS/VS2 Release 3.7

This publication contains information that was released in Miscellantous editorial and technical changes have been
the following Selectable: Unit Newsletters and SystP.ffi made throughout this publication. Significant technical
Library Supplements: changes were made in Part I under the following topics:
OS/VS2 MVS TSO/VTAM Level I (VS2.03.813), "Spacc Allocation Used by the EDIT Access
GN28·2654 Method" - define the maximum number of records
OS/VS2 MVS System Security Support (5752-832), the EDIT access method can handle.
GC28-()868 "Creating. Converting. and Maintaining UADS and
OS/VS2 MVS TSOIVTAM Level 2 (5752·858). Broadcast Data Sets" - change SYSIN to SYSTSIN
GD23-()047 and SYSPRINT to SVSTSPRT.

Summary of AmeDdmeDts YO
March IS, 1979

riM OS{VSl Sy..... "'011_ Ubnuy, TSO


Part 1: TSO Services

This chapter is intended for the programmers responsible for generating and maintaining a
system with TSO. The chapter outlines how to do the following things:

• Write the cataloged procedures used by TSO.

• Create, convert, and maintain the user attribute data set (UADS) and broadcast data set.

• Write an installation exit for the SUBMIT command processor.

• Write an instaUation exit for the STATUS, OUTPUT, and CANCEL command
processors.

• Write a LOGON pre-prompt exit.

• Write an instaUation exit for the COPY, MOVE and RENUM subcommand of EDIT.

• Write an exit for an installation-written syntax checker.

• Build translation tables for TSO/VTAM users.

..... I: TSO Senlc:es I


Preparing for TSO Processing
,
The steps that are performed by a system programmer after system generation but before a
terminal user can log on are listed below. Some of them depend on which access method TSO
is to use: the telecommunications access method (TeAM) or the virtual telecommunications
access method (VfAM). Others are performed regardless of the access method.

If TCAM is being used, a system programme r does the following:

• Tailors the message control program (MCP) to suit the installation's needs. See TeAM
System Programmer's Guide.

• Writes the MCP cataloged procedure and includes it in SYSl .PROCLffi.

• Constructs the IKJPRMOO member of SYSl .PARMLIB to set terminal I/O coordinator
(nOe) parameters. See the discussion of IKJPRMOO in System Programming Library:
Initialization and Tuning Guide.

If VTAM is being used, a system programmer does the following:

• Constructs the TSOKEYOO member (or an alternate member) of SYSl .PARMLffi to set
VfAM temllnal I/O coordinator (vnOC) parameters. Refer to System Programming
Library: Initialization and Tuning Guide.

• Builds translation tables to suit the installation's needs.

• Writes the cataloged procedure that starts TSO/VfAM time sharing.

• Writes any editing, attention handling, and nonsupported terminal exit routines that are
desired. Refer to MVS vnoc and TeAS Logic.
Regardless of the access method being used, a system programmer does the following:

• Writes the LOGON cataloged procedure(s) and includes them in a procedure library.

• Includes SYSl .CMDLffi in a LNKLSTxx member of SYS1.PARMLm or in a LOGON


cataloged procedure. For information on LNKLSTxx, see System Programming Library:
Initialization and Tuning Guide.

• Creates or converts the UADS and broadcast data sets.

NoM: No BRDR procedure is needed for MVS, since the background reader for submitted
jobs has been replaced with a direct interface from the SUBMIT command to a job entry
subsystem internal reader (INTRDR).

Writing a Message Control Program Cataloged Procedure


The cataloged procedure nsed to start an MCP specifies the MCP to be started through the
PGM- operand of the EXEC statement. The MCP should be named IEDQTCAM; if a name
other than IEDQTCAM is specified, the name must be added to the program properties table
(PPT) and must be marked nonswappable. The PPT describes the environment that TCAM
requires to operate properly. (See "Assigning Special Program Properties" in System
Programmlll& Library: Job Management. Also, the EXEC statement must include the DPRTY
parameter as DPRTY�(13,9).)

The cataloged procedure used to start the MCP also must define the line addresses
dedicated to TCAM. This is done by issuing the LINEGRP macro instruction (nsed in
generating the MCP) to specify the ddname of the DD statements that define the
communication lines as data sets. For more information, see TeAM System Propammer's Guide.

1 OS/VS1 Sy".m "'- Ubnry: TSO


Figure t shows a sample listing of cataloged procedures used to start MCPs.

IIMCP1 EXEC DOPGM=IEDQTCAM,TIME=1440,REGION=128K,DPRTY=(


IILNGP2741 UNIT=021 FIRST LINE GROUP DATA SET 13,9 )
2741
IIIIII DO UNIT=022
DODO UNIT=024
UNIT=023
IIII DO UNIT=026
DO UNIT=025
IIII DODO UNIT=027
IIII DODO UNIT=028
UNIT=029
UNIT=02A SECOND LINE GROUP DATA SET TWX
IIIILNGPTWX DODO UNIT=02B
IIII DODO UNIT=02C
UNIT=02D
UNIT=02E
IIIIMCP2 EXEC DOPGM=IEDQTCAM,TIME=1440,REGION=128K,DPRTY=(
UNIT=02F 13,9)
IIDIAL504
IIII 1 DO UNIT=021
DO UNIT=022 LINE GROUP DATA SET
IIII DD UNIT=023
UNIT=024 DO
DD
DO UNIT=025
II
IIII DODO UNIT=026
UNIT=027
UNIT=028
IIII DODO UNIT=02A
UNIT=029
figure t. Sample lJ!JtIag of MCP Start Procedues

Writing a LOGON Cataloged Procedure


A LOGON cataloged procedure defines the system resources available to a terminal user, and
defines or allows for the dynamic allocation of all data sets used by a terminal user. Also, a
LOGON procedure specifies which program is to be invoked after LOGON: the tenninal
monitor program (TMP) distributed with multiple virtual storage (MYS) or an
installation-written program. A LOGON cataloged procedure can be specified in the PROC
operand of the LOGON command, supplied through an instaUation exit from the LOGON
processor, or defined in the entry for the userid in UADS. (If more than one procedure is
defined for a userid/password combination, the procedure must be specified on the LOGON
command.) If TSO/VTAM is being used, a LOGON cataloged procedure can be specified in
the data field of a VTAM logon command, or supplied in a VTAM unformatted system
services (USS) definition table or VTAM interpret table. For LOGON procedures to reside in
a separate library:

I. Code a PROCxx DD statement for the library in the JES2 or JES3 procedure.

2. Specify .u in the PROC=.u parameter for the & TSU job class in the JES2 or JES3
initialization parameters. (See OS/VSl System Programming Library: JFS2 or OS/VSl
System Programming Library: JFS3.)

LOGON cataloged procedures must reside in the data set defined in the procedure used
to start the primary job entry subsystem. This data set may be either SYSI.PROCLm or
a partitioned data set dedicated to LOGON procedures.

No*: During LOGON, the step allocation routine does not wait for an unavailable volume. If
this condition arises, the LOGON request fails immediately.

Pari I: TSO Senkes 3


TSO Allocation Suggestions
The following suggestions should improve TSO allocations:

• Data sets the user wants for his TSO sessions should be placed in a LOGON procedure.
This technique has these advantages:

1. Allows volumes to be mounted.

2. Provides recovery from an offline device condition. Messages tell the operator to
'VARY' the device online.

3. Saves repeated allocation and freeing of the same data set by successive commands in
the same TSO session.

• The DYNAMNBR parameter value in the EXEC should be carefully chosen. The value
sfJ.ould be large enough so that it is not readily exceeded by dynamic allocation requests.
Note that the maximum number of concurrently allocated resources for any TSO session
is 1635.

No�: Although the LOGON will take longer to complete, the overall TSO performance should
be better.

Determining TSO User Size

TSO uses the following search order (listed 1 through 5) to obtain the region size that is to be
.
allocated to a TSO user:
Seardl ONer Effedtr. R..... SIu

I LOGON pre-prompt exit can specify the size.


2 Size operand of the LOGON command.
3 UADS size (as specified by the ACCOUNT command).
4 The REGION parameter on the EXEC statement in the user's LOGON
procedure.
&TSU parameter with subparameter CONVPARM specifying a default region
size.

N_:

• All these effective region sizes are used in conjunction with the IEALIMIT control.
(Consult Syotem Programming Ubrary: Supe",lo.r for details about IEALIMIT control.)

• The region size value specified "for locations 1. 2, and 3 (in search order) cannot exceed
the UADS MAXSIZE, except when a logon pre-prompt exit indicates to LOGON to
ignore the· UADS MAXSIZE value.

• Once TSO obtains a valid region size value, it stops searching.

EXEC Parameters

The TMP distributed with MVS is named IKJEFfOI. If an installation-written TMP is to be


used for a particular procedure, its module name must be substituted for IKJEFI'OI in the
PGM= operand in the EXEC statement. REGION= can be used to limit the amount of
virtual storage obtained by variable-length GETMAINs.

DYNAMNBR� is used to calculate the allowed number of concurrent allocations via


dynamic allocation. H DYNAMNBR= is omitted, the number of allocations is determined by
the number of DD DYNAM statements. If D D DYNAM statements and DYNAMNBR- are
both present, the number of concurrent allocations equals the combined total.

The DYNAMNBR parameter value in the EXEC statement should be carefully chosen. The
value should be large enough so that it is not readily exceeded by dynamic allocation requests.

• OS/VSl Sy..... ProcnunmIat .......,.: TSO


Note that the maximum number of concurrently allocated resources for any TSO session is
1635.

If you need job step timing, include the TIME parameter on the EXEC statement in the
LOGON procedure.

Any PARM operand on the EXEC statement is interpreted by the terminal monitor
program as the first line of input from the terminal. This input could be a command or the
implicit execution of a command procedure containing setup commands for the TSO user.

The EXEC statement is the only statement required in a LOGON procedure.

Optiolfal Data Sets

Data sets needed by a processing program such as a compiler or a system utility can be
defined dynamically through the ALLOCATE command or through dynamic allocation.

Data sets the user wants for his TSO sessions should be placed in a LOGON procedure.
This technique has three advantages:

1. Allows volumes to be mounted.

2. Provides recovery from an offline device condition. Messages tell the operator to VARY
the device online.

3. Saves repeated allocation and freeing of the same data set by successive commands in
the same TSO session.

Certain DD statements have special meaning and can be included in a LOGON procedure
depending upon the installation's needs. They are:

SYSPROC - The SYSPROC DO statement defines the current command procedure library
to the TSO EXEC command when the implicit form of the TSO EXEC command is
used. The data set described by this DD statement must be partitioned with a record
format of V. VB, F or FB. This statement can be defin.ed in the LOGON procedure or
can be dynamically allocated using the ALLOCATE command.

Sample listing (when used in LOGON procedure)


//SYSPROC DD DSN=CLIST.PROC.LIB,DISP=SHR
Sample terminal input (wben used in ALLOCATE command)
allocate da( 'clist.proc.lib') fi(sysproc) shr
STEPLIB - A LOGON procedure can have a private step library defined by a STEPLm
DO statement. This library can contain command processors or a user-written TMP that
the installation wants to make available to selected TSO users. (Note: SYSI.CMDLm
can be specified as a step library. However, it is not recommended; it would nullify the
improvements that can be obtained by putting command processors in the LPA.) Most
TSO users sbould not have STEPLm in their LOGON procedure because of the extra
search time required for each command and command procedure.

SYSUADS - The ddname SYSUADS is used by the ACCOUNT facility to access the user
attribute data set (UADS). SYSUADS can be allocated in the LOGON procedure 6r it
can be dynamically allocated using tbe ALLOCATE command. Only those users
authorized for the ACCOUNT command should have the SYSUADS DO statement
included in their procedure.

Part 1: TSO Senic.e. 5


Sample Procedllre

Figure 2 shows a sample listing of a LOGON cataloged procedure. The sample LOGON
procedure can be useful to a programmer using Assembler F. The statements specify the TSO
standard TMP for execution; define the library for the users EXEC commands, the work data
sets for the assembler, the command procedure library. and the assembler macro library; and
specify that SYSIN and SYSPRINT are to be directed to the user's terminal.

//AFPROC
//SYSUTI DDEXEC PGM=IKJEFT01, ,DYNAMNBR=7
DSN=&SYSUT1 UNIT=SYSDA,SPACE=( 1700,(400,
1700,(400,5050 )) ))
//SYSUT2
//SYSUT3
//SYSPROC DDDDDD DSN=&SYSUT2,
DSN=&SYSUT3, UNIT=SYSDA,SPACE=(
UNIT=SYSDA,SPACE=( 1700,(400,50 ) )
DSN=CLIST.PROC.LIB,DISP=SHR
//SYSLIB
//SYSIN DDDD DSN=SYS1.
TERM=TS MACLIB,DISP=SHR
//SYSPRINT DD TERM=TS
fIcwe 1. Sample I.Jstida of LOGON Cataloaed Procedure

Space Allocation Used by tlte EDIT Access Metltod

The following paragraphs explain the algorithms used in allocating EDIT's utility work data set
space when editing an existing data set or a new data set. These algorithms are used unless the
EDIT utility work data sets are otherwise allocated by the installation. If the installation
pre-allOCates EDIT's work files, the EDIT access method space management is not in effect.

WAt" Edit;. all bUti. Da. S#!t - Two times the «total number of characters contained
within the data set plus additional requested records (.) divided by the average block size of
4096) plus 2) gives you the initial space size in 4K blocks. Dividing the initial space size by
two gives you the secondary space size.

Example

X_MIll: 1. The data set contains 2000 records.

2. Each record is 30 characters in length.

3. The average block size is 4096.


2x 160,000 + 0 4096 ) 2 )=initial space ( number of 4K blocks)
({ + +

Initial space 2=secondary space (number of 4K blocks )


+

Wlltft Edhirtg a NN DatIl Sd - A new data set has four blocks with the average block size
of 4096 for the defaulted initial space and one half that amount for its secondary space. If it
contains 80-character records, it has a total capacity of approximately 1300 records.

sysedit - sysedit is a sample ddname for the & EDIT data set. When a DO statement is
included for & EDIT, dynamic allocation recognizes that the & EDIT data set is
permanently allocated. Thus, the & EDIT data set allows an installation to control the
allocation of & EDIT utility data sets, and to control the direct access space used for
these data sets.

sysedlt2 - sysedit2 is a sample ddname for the EDIT2 data set. When a DD statement is
included for & EDIT2, dynamic allocation recognizes that the EDIT2 data set is
pennanently allocated. Thus, the & EDrn data set allows an installation to control the
allocation of EDIT utility data sets and to control the direct access space used for these
data sets.

, OS/VS1 Syst... 1'1.., _.. ........,., TSO


Sample DD statements (when used in LOGON procedure)

SYSEDIT2T DDDO DSN=&EDIT,


!!!!SYSEDI UNIT=SYSDA,SPACE=(
DSN=&EDIT2,SPACE=( 1688,(UNIT=SYSDA.
4096, ( 20,10», 50,20»
Note: Regardless of the physical space allocated, the maximum number of records the
EDIT access method can handle depends on the record length. For example, the maximum
number of SO-byte records is approximately 390,000 records; the maximum number of
255-byte records is approximately 130,00 records.

Creating, Converting, and Maintaining VADS and Broadcast Data Sets


This section tells the system programmer how to:

• Create the UADS and broadcast data sets


• Convert the VADS and broadcast data sets to MVS (ormat
• Maintain the UADS and broadcast data sets

Introduction

After system generation. the system programme r must ensure that UADS and broadcast data
sets are available to the system. Both data sets have a specific fonnat for MVS. The data sets
are created in MVS format. The LOGON processor can handle either old or new formats of
the VADS. but the data set must be in MVS fonnat in order to modify or add an entry. The
broadcast data set must be in MVS format. After the UADS and broadcast data sets are
established, authorized individuals can update them by adding, changing, or deleting entries.

Neither the UADS nor broadcast data sets should be placed on a shared DASD device that
is accessed by more than one CPU. Sharing of these data sets is not supported.

ACCOUNT Command and Its Subcoliunands

The ACCOUNT command and its subcommands are used to create and update the entries in
the UADS. SpecificaUy, the ACCOUNT command can:

• Add new entries or more data to an existing entry (ADD subcommand)


• Delete entries or parts of entries (DELETE subcommand)
Change data in an entry (CHANGE subcommand)
• Display the contents of an entry (LIST subcommand)
• Display the user identifications for aU entries (LISTIDS subcommand)
• Build a new broadcast data set and synchronize it with an existing UADS (SYNC
subcommand)
• End operation of the command (END subcommand)
• Find out how to use ACCOUNT subcommands (HELP subcommand)

To use the ACCOUNT command under TSO, a terminal user must be authorized by the
instaUation. The ACCOUNT command and its subcommands are explained in "Part 2:
Reference - TSO Commands" in this publication.

To permit creating and maintaining the UADS and broadcast data sets from a batch job,
MVS aUows the terminal monitor program (TMP) to execute as a batch job that creates a
"TSO environment" for ACCOUNT and its subcommands. Thus, the UADS and broadcast
data sets can be created or maintained with or without having TSO active.

Part t: TSO Seni«s 1


The UADS ReformaUing Program - UADSREFM

The SYS1.UADS data set does not have to be reformatted before using TSO. However, you
should be aware of the following points if you continue to use the old format:

• The ACCOUNT command will cause entries to be added to SYS1.UADS in the new
format.

• The accounting fields are different in the new format. When the system resource manager
updates accounting fields in SYS1.UADS, it assumes that SYSl .UADS exists in the new
format.

• A user cannot use the MVS parameters of the ACCOUNT subcommands unless
SYSl.UADS exists in the new fonnat.

Creating a new VADS by reformatting the old VADS before execution is accomplished by a
batch job via the UADSREFM program, which operates under the TMP. In addition, the
UADSREFM program can eliminate wasted space in the UADS caused by the periodic
additions, deletions, and changes to VADS entries. The UADSREFM program reads a member
from the old VADS, builds a logical copy of that member, eliminates any inefficient space, and
places the newly-formatted member in the new UADS. This process is repeated automatically
for each member in tbe new UADS. The UADSREFM program will not. however, reformat a
users entry if the user is currently logged on the system; a message is written for every user
that was not reformatted because the userid was in use. You must invoke the UADSREFM
program if you change the blocksize of the UADS.

The UADSREFM program is invoked by executing the terminal monitor program and
supplying a command, UADSREFM, in the SYSIN stream. Two DD statements are required
by the UADSREFM program. A SYSUADN DD statement specifies the input UADS, which
can be in MVS format or the format from previous releases. The SYSUADS DD statement
specifies the output UADS, which will be in MVS format.

Content and Structure of UADS

The user attribute data set (UADS) is basically a list of terminal users who are authorized to
use TSO. The UADS contains information about each of the users, and is used to regulate
access to the system. There is an entry in the UADS for each tenninal user. Each entry
consists of the following information:

A user identification.
• One or more passwords. or a single null field, associated witb the user identification.
• One or more account numbers, or a single null field, associated with each password.
One or more procedure names associated with each account number. Each name
identifies a procedure that may be invoked when the user enters the LOGON command.
• The region size requirements for each procedure.
• The name of the group of devices that the procedure will be permitted to use. Data sets
located via the catalog are an exception.
• The authority to use or a restriction against using the ACCOUNT command.
• The authority to use or a restriction against using the OPERATOR command.
• The authority to use or a restriction against using the SUBMIT, STATUS, CANCEL, and
OUTPUT commands.
• Maximum region size allowed.
• Installation-defined data.
• The authority to specify or a restriction against specifying periormance groups during
LOGON proceSSing.
• The authority to specify or a restriction against specifying dynamic allocation requests for
volume mounting.

8 OS/vSl Sy..... � UiNuy: TSO


• A default destination (or SYSOUT data sets (either the system output device or a remote
work slation).

The organization of the information contained in the UADS is shown in Figure 3, Figure 4
shows the simplest structure that an entry in the UADS can have, and Figure 5 shows a more
complex structure,

UAOS Inde)(

The index points to each entry in the data set.


I
v
) (To other entries)

User 10 '\ 7
The user identification identifies the entry and user
attributes, and points to the password fields.

I ) (To other passwords)

J
v

Password '"
Each password field points to the account number fields
that are associated wlth the password.

(To other account numbers)

Account
7
Each account number field points to the procedure names
that are associated with the account number.

I "-
(To other procedure names)

)
v

Procedure ..
Associated with each procedure are region size
requirements and device group.

Figure 3. Organlz.atlon of the UADS

Part t: TSO Senices 9


UADS data set

Other attributa.

Ffcure 4. The Simplest Structure for • Typkai UADS Entry

UAOS data set

Password

Account number Account number

Other attribute. Other attributes Other attributes Other attributes

Flpre 5. A Complex Structure for • TypkaI UADS Entry

10 OS/VSl System PrognmmInc l...ibrary: TSO


Creatillg the UADS alld Broadcast Data Sets from a Termillal

To create the VADS and broadcast data sets from a terminal, add to tbe procedure library a
LOGON procedure named IKJACCNT. During system generation, one userid (mMUSER) is
copied into tbe newly-created VADS. mMVSER is autborized to use one LOGON procedure,
IKJACCNT. A sample IKJACCNT LOGON procedure foUows:

IIIKJACCNT EXEC PGM=IKJEFT01,DYNAMNBR=10


IISYSUADS DO DSN=new UADS created during sysgen
IISYSLBC DO DSN=SYS1.BRODCAST created during sysgen
Activate TeAM and initialize the TIOe (see ulnitializing Time-Sharing" in this
publication).

Log on using the following command:


logon ibmuser nonotices nomail
The keywords NONOTICES and NOMAJL prevent the LOGON processor from accessing
the broadcast data set before broadcast is rormatted. Enter the ACCOUNT command and
issue the SYNC subcommand to format a skeleton for the broadcast data set. Issue ADD
subcommands to add the new userids to botb VADS and broadcast.

Lng on again with a new userid tbat has ACCOUNT autbority. Enter the ACCOUNT
command and issue the DELETE subcommand to delete the mMUSER use rid.

Creatillg the UADS alld Broadcast Data Sets with a Batch Job

You can execute the ACCOUNT facility as a batch job. Use the SYNC subcommand of
ACCOUNT to format a skeleton for the broadcast data set. Then, as each userid is added to
VADS via the ADD subcommand of ACCOUNT, a corresponding entry is made in broadcast
data set. mMUSER, a userid witb ACCOUNT autbority provided during system generation,
can be used to create a new UADS. Because a new UADS bas been created, mMUSER
should be deleted. Figure 6 is sample listing sbowing tbe creation of VADS and broadcast with
a batcb job. An explanation of this JCL can be found under "Executing tbe TMP as a Batch
Job."

IIIISYSTSPRT JOB
//jobnarne EXEC job card parameters
PGM=IKJEFTOl
DO SYSOUT=A
IISYSUADS
IISYSLBC DO
DO DSN=uads created during sysgen
DSN=SYS1.BRODCAST,DISP=SHR
IISYSTSIN
ACCOUNT DO *

SYNC
ADD new userid ( see ADD subcommand of ACCOUNT for other operands)
DELETE
END ( IBMUSER)
1*

...,... 6. A Sample ...... _..... the erealloa of UADS d Ikoad_ with a


.. Balch Job

..... . :TSOS._ II
COllvertillg the UADS alld Broadcast Data Sets

To convert the UADS and broadcast data sets execute the ACCOUNT facllity with a batch
job. Use the UADSREFM program to create an MVS UADS containing the userids from the
old format UADS. Use the SYNC subcommand of ACCOUNT to format an MVS broadcast
data set with an entry for each userid in the UADS. IBMUSER, a userid with ACCOUNT
authority provided during system generation, can be used to create a new UAOS. Because a
new UADS has been created, ffiMUSER should be deleted. Figure 7 is a sample listing
showing the conversion of UADS and broadcast. An explanation of this JCL can be found
under "Executing the TMP as a Batch Job."

//jobname
IIIISYSTSPRT JOB
EXEC job card parameters
PGM=IKJEFTOl
/ISYSUADN DD
DD SYSOUT=A
DSN=old format
format uads
uads
//SYSUADS
IISYSLBC DD
DD DSN=MVS
DSN=SYS1.BRODCAST,DISP=SHR
/ISYSTSIN
UADSREFM DD *

ACCOUNT
SYNC
DELETE
END IIBMUSER)
1*

Figure 7. A Sample Listhte. SbowiD& tbe Connrslon or UADS and Broadcast

Mailltaillillg the UADS alld Broadcast Data Sets from a Termillal

To maintain UADS and broadcast from a terminal, a terminal user must log on with a userid
that is authorized to enter the ACCOUNT command. The terminal user must also ensure that
the UADS to be updated is allocated to the SYSUADS 00 statement (either in a LOGON
procedure or via an ALLOCATE command), The actual changes to UADS are accomplished
by issuing the ACCOUNT command followed by its subcommands.

The Termillal MOllitor Program

The tenninal monitor program (TMP) is attached APF-authorized and executes supervisor
state and problem program key, It provides an interface between the user, command
processors, and the TSO control program, The TMP is called in one of two ways:

• Via the LOGON procedure for foreground execution

• Via the EXEC statement in the input stream as a batch job

Executillg tile TMP as a Batch Job

The tenninal monitor program (TMP), if invoked in the background, creates a TSO
environment so that the TSO service routines, ACCOUNT and its 5ubcommands, PROFn..E,
and the access method services utilities can function, The DO statements SYSIN and
SYSPRINT bave been replaced by SYSTSIN (for input) and SYSTSPRT (for output) when
executing the TMP as a batch job, Input for a GETLINE is obtained from the data set defined
by the SYSTSIN 00 statement. The TMP issues tbe STACK macro instruction to put the
SYSTSIN data set on the input stack, Messages issued via PUTLINE are written to the data
set defined by the SYSTSPRT DO statement.

Multilevel messages are automatically written out as if a question mark(?) had been entered,
The commands that are read from SYSTSIN are logged on SYSTSPRT. Because of this, the
commands and subcommands can be entered via '$YSTSIN. Each command must begin on a

12 OS/VSl System f'roatamminI Library: TSO


separate card. Continuation is indicated according to "Continuation Lines" elsewhere in this
book.

No prompting is done because the TMP sets options, as if th e following PROFILE


command, had been issued:
profile noprompt noprefix noline nochar
Since "noprefix" is defaulted, an unqualified data set name will not have a userid prefixed
to it. If you would like to have a userid prefixed to the data-set-names specified on the access
method services utilities include the command:

profile prefix(userid)
at the beginning of the SYSTSIN stream.

The JCL used to run the TMP in a batch job is the:

1. EXEC statement with PGM=IKJEFTOI which should have a DYNAMNBR parameter


if ACCOUNT will dynamically allocate SYSI.BRODCAST or SYSI.HELP data sets.
(This is ouly for HELP subcommands.) Optional for this statement is the PARM
operand, which is interpreted as the first line of input from SYSTSIN.

2. SYSTSPRT DD statement for commands and subcommands executed, plus messages.

3. SYSTSIN DO statement for data sets containing commands and subcommands.

Note: The SYSTSIN and SYSTSPRT DD statements may refer to a sequential or partitioned
data set. If the data set is partitioned, the member-name must be specified on the DD
statement as DSN�pdsname(membemame). The SYSTSIN data set cannot be a concatenated
data set.

Maintaining the UA.DS and Broadcast Data Sets with a Batch Job

To maintain the UADS broadcast data sets, use the JCL described above. [n addition, three
other DD statements may be used:

I. SYSUADS DD statement specifying tbe UADS to be accessed by ACCOUNT and


UADSREFM.

2. SYSUADN DD statement specifying a UADS to be accessed by UADSREFM.

3. An optional DD statement specifying the broadcast data set to be accessed by


ACCOUNT. If a DD statement is not specified, data set SYSI.BRODCAST must be
cataloged.

Note: Any job that invokes the TMP in a batch job is given the authorization to execute the
ACCOUNT command. For security, the UADS should be password protected or a JCL exit
should be written to limit access to the background TMP.

Initializing TSO ITeAM Time-Sharing


Before a terminal user can log on, TCAM must be active in the system and the Tenninal I/O
ControDer (TIOC) must be initialized. The initialization of TIOC completes the initialization
for the time-sharing subsystem and allows TeAM to accept LOGON commands and pass
them to TIOC for proceSSing.

To start TCAM, the system operator must enter the START command as follows: START
TCAM, (where TCAM is the name of a procedure that executes the TCAM MCP).

Part 1: TSO Senices 13


After TeAM has been started, the system operator must enter the MODIFY command to
activate TIOC as a subtask of TCAM:
�odify tcam,ts=start
If a pannJib member other than IKJPRMOO is to be used for TIOC parameters, the member
name should be included on the MODIFY command. For example:
modify tcam,ts=start,ikjprmOl
For additional information pertaining to the section on IKJPRMOO, see System Programming
Library: Initializadon and Tuning Guide,

To terminate all time-sharing users' connections with the system, the system operator must
issue the MODIFY command:
modify tcam,ts=stop
For more information on START and MODIFY commands, see Operator's Library: OS/VS
TeAM.

If the users of the TSO EDIT command require the ability to save their data sets with the
SAVE subcommand, the installation must ensure that the DASD volume(s) to which the users
will save are mounted with the attribute of "STORAGE",

Initializing TSO /VTAM Time Sharing


Before a terminal user can log on to TSO/VTAM time sharing, both VTAM and the terminal
control address space (TCAS) must be active in the system.
The system operator must enter the START command to start VTAM. After VTAM has
been started, the system operator must enter the START command to activate TeAS. TeAS
accepts logons from TSO/VTAM users and creates an address space for each user.
When a user logs on, the VTAM terminal I/O coordinator (VTIOC) is initialized. VTfOC
controls the movement of data between TSO and VTAM : Parmlib member TSOKEYOO (or an
alternate member) contains parameters that are used during VTIOC lnitializatioD. If a member
other than TSOKEYOO is to be used, the member name may be included on the START
command· or in the cataloged procedure invoked by the START command. For a description of
TSOKEYOO see System Programming Library: Initialization and Tun�ng Guide.
The system operator uses the MODIFY command to modify TSO/VTAM time sharing. The
STOP command is used to stop TSO/VTAM time sharing. For more information on the
START, MODIFY, and STOP commands as they pertain to TSO/VTAM time sharing see
Operator's Library: OS/VSZ MVS System Commands.

Writing the Procedllre That Starts TS O/ ITA.M Time Sharing

The installation must write a cataloged procedure for starting TSO/VTAM time sharing, and
include it either in SYSl .PROCLm or in an installation-defined procedure library. The
cataloged procedure must contain the following statements:
PROC
to name the ,cataloged procedure and, optionally. to assign default values to symbolic
parameters defined in the procedure.
EXEC
to identify the program, IKTCASOO, to be executed.

,. os/vSZ System ........- UIonry: TSO


PARMLIB DO
to identify the parmlib data set and member that contain TSO/VTAM time-sharing
parameters. A symbolic parameter can be used for specifying the member name. If it is
used, a default value must be specified in the PROC statement. When TSO/VTAM is
started, the symbolic parameter receives either the value specified by the system operator on
the MEMBER operand of the START command or, if MEMBER is not specified, the
default value specified on the PROe statement.

PRINTOllT DO
to identify where the time-sharing parameters that are used should be listed.

A sample procedure for starting TSO/VTAM time sharing is:


IITSO
IIs'rEP1 PROC
EXEC MBR=TSOKEYOO
PGM=IKTCASOO, TIME=&MBR),DISP=SHR,FREE=CLOSE
1440
IIPARMLIB
IIPRINTOUT DODD DSN=SYS1. PARMLIB(
SYSOUT=A, FREE=CLOSE
The PROe statement assigns the name TSO to the cataloged procedure, which means that the
system operator will enter START TSO to start TSO/VTAM time sharing. The PROC
statement also designates a default pannJib member name, TSOKEYOO. The EXEC statement
specifies that program IKTCASOO will be executed. It also specifies (TIME= 1440) that the
execution will not have a time limit. The PARMLIB DO statement identifies the parmJib and
member that contain time sharing parameters. Specifying & MBR aUows the system operator
to use the MEMBER operand of the START command to specify a member namej if
MEMBER is not specified, TSOKEYOO will be used. The PARMLIB DD statement also
specifies (DISP-SHR) so that the parmlib data set can be used simultaneously by another job,
and that it should be deaUocated when it is closed (FREE-CLOSE). The PRINTOUT DD
statement speCifies that the time-sharing parameters used by TSO/VTAM sbould be written to
the device corresponding to class A, and that the output data set should be deaUocated when it
is closed.

Building Translation Tables for TSO/VTAM Users


Translation tables allow TSO/VTAM users to internaUy replace characters that are not
available on a keyboard with characters that are available. For example, the characters " < ",
" > ", and " I �', which are not available on correspondence keyboards, can be represented by

other characters that are available, such as "L", "]". and "!". The CHAR and TRAN operands
of the TERMINAL command are used to specify replacement characters. (The TERMINAL
command invokes the SITRAN macro instruction to set up the translation tables.)
Specifying character translation causes installation-written translation tables or default
(IBM-supplied) translation tables to be used. Default translation tables are a part of the
TSO/VTAM programs; they translate each character to itself. The different combinations of
the CHAR and TRAN operands that can be specified by users arc:
CHAR (characters ) alone. This causes a copy of the default translation tables (in the user's
storage) to be updated according to the characters specified. The updated tables are used
to translate aU inbound and outbound characters, for as long as the terminal session lasts
or until NOCHAR or NOTRAN is specified.
• TRAN (name ) alone. This causes a copy of the translation tables located in name to be used
to translate aU inbound and outbound characters, for as long as the terminal session lasts
or until NOTRAN is specified.
• CHAR (characters ) and TRAN (fUlme ). This causes a copy of the translation tables located
in name to be updated according to the characters specified. The updated tables are used
to translate aU inbound and outbound characters, for as long as the terminal session lasts
or until NOCHAR or NOTRAN is specified.

Pari I: TSO Sen-ices IS


When translation tables are in use, input translations take place after TSO/VTAM translates
the line code to EBCDIC characters, and output translations take place before TSO/VTAM
translates the EBCDIC characters to line code.

Follow these steps to build translation tables:

1 . Code a pair o[ translation tables, one for input (to TSO) and one [or output (to the
tenninal). with each pair in a control section. Each control section must consist o[ a
fullword containing the address of the output table, followed by a 256-byte EBCDIC
table (on a fullword boundary) for translating the inbound code, followed by a 256-byte
EBCDIC table for translating the outbound code. The tables must be formatted
according to tbe rules for the TRANSLATE instruction (refer to IBM System/370
Principles of Operation). Translation of numbers and uppercase letters is not allowed.

2. Assemble the translation tables.

3. Link-edit the translation tables into a load module library. One CSECT is allowed per
member.

4. Place a JOBLm DO or STEPLm DO statement, containing the name of the load module
library, into a LOGON cataloged procedure that the user will specify when logging on.

Figure 8 shows translation tables that translate the characters 'T' (represented by X'AD'),
14]" (represented by X'BO'), and "'" (represented by X'SA') to " < " (represented by X'4C').
">" (represented by X'6E'), and " I " (represented by X'4P'). (To help find these characters
in the example they are printed in bold type.) All other characters are translated to themselves.
Assuming these tables are located in a member named TRTAB l , and the name of the data set
containing the member was specified in a LOGON cataloged procedure when the user logged
on, the user would specify:
terminal tran ( trtabl )

to use them.

16 OS/VSl System ....... Ubnry, TSO


TRTAB 1 CSECT
OUTADR DC A (OUTTAB)
INTAB DS OF
DC x ' O O 0 1 0 2 0 3 0 4 0 5 06 0 7 0 8 0 9 0AOBOCODOE OF ' OX
DC X ' 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 A1 B 1 C 1 D1 E 1 F ' 1X
DC X ' 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2A2B2C2D2E 2 F ' 2X
DC X ' 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 3A3B3C3D3 E 3 F ' 3X
DC X ' 4 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4A4B4C4D4E4 F ' 4X
DC X' 5051 5 2 5 3 54 5 5 5 6 5 7 5 8 5 9 4F5B5C5D5E 5F ' 5X
DC X' 6061 6 2 6 3 6 4 6 5 6 6 6 7 6 8 6 96A6B6C6D6E 6F ' 6X
DC X' 7071 7 2 7 3 7 4 7 5 7 6 7 7 7 8 7 97A7B7C7D7 E 7 F ' 7X
DC X' 8081 8 2 8 3 8 4 8 5 8 6 8 7 8 8 8 9 8A8B8C8D8 E 8 F ' 8X
DC X' 9091 9 2 9 3 9 4 9 5 9 6 9 7 9 8 9 99A9B9C9D9E9F ' 9X
DC X ' AOA1 A2A3A4A5A6A7A8A9AAABAC4CAEAF ' AX
DC X ' B OB 1 B2B3B4B5B6B7B 8 B 9BABBBC6EBEB F ' BX
DC X ' COC1 C2C3C4C5C6C 7 C 8 C 9CACBCCCDCECF ' CX
DC X ' DOD1 D2D3D4D5D6D7D8 D9DADBDCDDDEDF ' DX
DC X ' E O E 1 E2E3E4E5 E 6 E 7 E 8 E 9EAEBECEDEEEF ' EX
DC X ' F O F 1 F 2 F 3 F 4 F 5 F 6F 7 F 8 F 9FAFBFCFDFEFF ' FX
OUTTAB DS OF
DC X ' O O 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0AOBOCODOE OF ' OX
DC X ' 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 A1 B1 C 1 D 1 E1 F ' 1X
DC X ' 2 0 2 1 2 2 23 2 4 2 5 2 6 2 7 2 8 2 9 2A2B2C2D2E2F ' 2X
DC X ' 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 3A3B 3C3D3E 3 F ' 3X
-
DC X ' 4 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 94A4BAD4D4 E SA ' 4X
DC X ' 5 0 5 1 5 2 5 3 5 4 5 5 5 6 5 7 5 8 5 9 5A5BSC5D5E S F ' 5X
DC X ' 6 0 6 1 6 2 6 3 6 4-6 5 6 6 67 6 8 6 9 6A6B6C6DBD6F ' 6X
DC X ' 7 0 7 1 7 2 7 3 7 4 7 5 7 6 7 7 7 8 7 97A7B7C7D7E7 F ' 7X
DC X ' 8 0 8 1 8 2 8 3 8 4 8 5 8 6 8 7 8 8 8 9 8A8B8C8D8E8F ' 8X
DC X ' 9 0 9 1 9 2 9 3 9 4 9 S 9 6 9 7 9 8 9 9 9A9B9C9D9E9F ' 9X
DC X ' AOA1 A2A3A4A5A6A7ABA9AAABACADAEAF ' AX
DC X ' B OB 1 B 2 B 3 B 4 B 5B6B7B B B 9BABBBCBDBEBF ' BX
DC X ' C O C 1 C2C3C4C5C6C7CBC9CACBCCCDCECF ' CX
DC X ' D O D 1 D2D3D4D5D6D7DBD9DADBDCDDDEDF ' DX
DC X ' E O E 1 E2E3E4E 5E6E7EBE 9EAEBECEDEEEF ' EX
DC X ' F O F 1 F2F3F4FSF6F7 F B F 9FAFBFCFDFEFF ' FX
END

Figwe 8. An Eump&e of • CSECT CoatainiDg TransaatkMI Tables

Writing InstaUation Exits for the SUBMIT Command


The 1'80 SUBMIT command allows a tenninal user to initiate a batch job_ The SUBMIT
command processor writes the user-specified data set(s), consisting of JCL statements and
input data, into a job entry subsystem internal reader. Through an exit routine, an installation
can approve, reject, or modify the JCL statements being submitted.
When the first JOB statement is read (or generated), the SUBMIT command processor
invokes the exit routine. As a default, only JOB cards (and continuations) are presented to the
exit routine. The routine can dynamically indicate additional types of JCL statements that it
wishes to inspect as the statements are read from the input data set(s), The routine can delete
or change the current statement, and can generate continuation and/or new statements to

Part I: TSO Senkes 17


follow the current one. The routine can also send a message to the user's terminal and can
request a response. In addition, the exit routine can verify jobname and userid, and can cancel
a SUBMIT request.

IBM-Supplied Exit Routine

If an installation-written exit routine is not supplied, an ffiM-supplied exit receives control.


The mM-supplied exit does not perform JCL checking. It is entered' once for each SUBMIT
command (JOB statement); it t1ll1lS off all switches that cause it to receive control, and sets
the return code to zero.

Installation- Written Exit Routine

The installation-written SUBMIT exit routine must be link-edited in SYS!.LINKLm as an


independent module named IKJEFF I0, with reusable, reenterable, and refreshable link-edit
characteristics. The SUBMIT command processor issues LOAD and CALL macro instructions
for the exit routine and passes control in key 1 (scheduler key) and in supervisor state for
protection purposes. (Thus a teoninal user cannot have a revised version of the exit routine in
a LOGON procedure's step library and cannot pre-load a revised version using the TEST
command.) The exit routine must follow standard linkage conventions.

In the course of SUBMIT command processing, the exit routine may be passed each JCL
statement that is submitted. By setting return codes and switches and by passing parameters to
the SUBMIT processor, the routine can control the statements passed to it. The return codes
and switches also deteonine subsequent calls to the exit routine. The return codes (to be set in
register 15 before the exit routine returns control to the SUBMIT processor) are :

o Continue (that is, process the current statement and read the next).

4 Reinvoke the exit routine to obtain another statement (that is, process the current
statement and invoke the exit routine again so that it can insert a statement).

8 Display message 1KJ56283I (message text is supplied by the exit rou,ine) at the terminal
and invoke the exit routine. The exit routine must obtain the message text area and may
free it when reentered.

1 2 Display prompting message 1KJ56280A (message text is supplied by the exit routine) at
the tenninal, obtain a response, and invoke the exit routine. (If the user has specified
NOPROMPT on a PROFILE command or uses a CLIST without the PROMPT
keyword, this will cause the SUBMIT processor to issue a message and terminate the
SUBMIT command.) The SUBMIT command processor must obtain and free the reply
text area. The exit routine must obtain the message text area and may free it when
reentered.

1 6 Terminate the SUBMIT command. (The exit routine should first use return code 8 to
issue a message to the user.)

Undefined return codes cause the SUBMIT processor to issue an error message and
terminate.

Upon entry, register 1 contains the address of a pointer to an eight-word parameter list. The
system programmer can issue the IKJEFFIE mapping macro instruction to format this
parameter list and to assign equates for return codes by coding:
ikjeffie ietype=submit
As a result, two assembler DSECTs named IEDSECTD and IESUBCTD are created (see
OS/VS2 Datil Areas, (microfiche) for the format of each DSECT). After establishing

18 OS/VSl Sy..... � ....:..,. TSO


addressability with each DSECf, the system programmer can refer to the DSECT fields by
name. The contents of the parameter list are:

Word 1
contains the address of the current statement. If word 1 is zero, it indicates a request for
the exit routine to supply the next JCL statement (return code from previous call of the exit
routine was 4). To delete the current statement, the exit routine must set this word to zero.
The exit routine can also change the statement and issue return code 0 or 4 to have the
statement processed.

Word 2
contains the address of a message to be displayed on the user's terminal, supplied in
conjunction with return code 8 or 12. If word 2 is non-zero on entry, the return code from
the previous call to the exit routine was 8 or 12. The exit routine must obtain the message
buffer and may free it when reentered. If word 2 is zero, no message is present (the
previous return code was 0 or 4, or this is tbe first call). The fonnat of the message is
"LLtext" , where LL is a two-byte field containing the length of the message text area
(including the LL field). The maximum text length is 246 bytes.
Word 3
contains the address of the response from the terminal user if the exit routine's previous
return code was 12. When this field is non-zero after calling the exit routine. the SUBMIT
command processor frees the buffer. The fonnat of the response is "LLtext", where LL is a
two-byte field containing the length of the reply (including the LL field).

Word 4
contains the address of userid. The userid is eight characters left-justified, padded with
blanks.

Word 5
contains the address of the control switches, which are contained in a fullword. Byte 0
specifies under what conditions the SUBMIT command processor will call the exit routine:
Byle Bil Meaning
o o Call exit routine (or JOB card
1 EXEC
2 DD
3 Command
4 Null
5 /*l< in card columns 1-3 (]ES2 or JES3 (ASP) control card - with /* in 'columns 1 and
2 and a nonblank character in column 3)
6 //* in columns 1-3 (comment card or JES3 control card)
7 Reserved.

By default, the SUBMIT command processor enters the exit routine for JOB cards only.
The exit routine can change the setting of these bits to control when it will be entered. For
example, the exit routine can set bit 3 to request control when operator commands (or
PROC or PEND statements) are found in the submitted JCL.

Byte 1 (if non-zero) indicates the card column where the operand field begins. For example,
if the operand field begins in column 16, byte 1 contains hexadecimal 10. A value in byte 1
is supplied for all statement types.

The operand field is interpreted as follows for JES2 control statements and comment
statements:
/*JES2CTLSTMT OPERAND
II' OPERAND
II'COMMENT OPERAND
II'JES3crLSTMT OPERAND

The first statement is interpreted as a JES2 control statement. (Bit 0 of byte 3 is on.)

..... I, TSO Sernus 19


The last three statements are interpreted as comment statements or lES3 control statements.
(Bit I of byte 3 is on.)

Bytes 2 and 3 identify the current statement to the exit routine.


Byte Bit Meaniog
2 0 JOB statement
1 EXEC
2 DO
3 Command
4 Null
S Operand to be continued
6 Statement to be continued
7 Statement is a continuation
3 0 I*X in columns t-3 (JES2 control card with 1* in columns 1 and 2 and a nonblank
character in column 3)
11* in columns 1-3 (comment card or JES3 control card)

If bit 3 in byte 2 is on, the current JCL statement has // in columns I and 2 but has not
been recognized as a JOB, EXEC, or DD statement. The SUBMIT command processor
assumes that the II statement is an operator command entered into the input stream.

Continuation is supported for aU statement types except comment statements, lES2 control
statements, and lES3 control statements. A comma as the last character of the operand, or
a nonblank: character in column 72 indicates continuation. If a statement has a comma as
the last character of the operand, bits 5 and 6 of byte 2 are on. If a statement has a
nonblank character in column 72, and the last character of the operand is not a comma, bit
6 of byte 2 is on.

When comment statements appear between continuation statements, aU of the following bits
are set:
• Continuation (bits 5 and 6 of byte 2, or bit 6 of byte 2 alone)

• Statement type for the statement being continued (one of bits 0 through 4 of byte 2)

• Comment statement (bit I of byte 3)

The exit routine is not passed the preceding JCL statements if they are in a DD DATA (or
DO *, for I*X cards) input data stream.

Word 6
reserved for the exit routine's use. The first time the SUBMIT command processor calls the
routine, word 6 is initialized to zeros: The routine can use the word for counters or
switches. The value is not changed between calls.

Word 7
contains the address of reconstructed LOGON job accounting information for the user. The
SUBMIT command processor inserts this information into generated JOB cards.

Word 8
contains the address of a halfword that contains the length of the job accounting
information.

NfJIIe: Normally an installation exit routine issues a message by setting a return code, putting
a message address in word 2 of the parameter list, and returning control to SUBMIT command
processor. If the exit routine wants to issue a message with a second level via PUTLINE or
PtITGET, it must issue a MODESET macro instruction to change to key O. After issuing tbe
message, the routine must issue MODESET again to change back to key I.

20 OS/VSZ Slstera � Library: TSO


Writing Installation Exits for the OUTPUT, STATUS, and CANCEL
Commands
An installation-written exit routine can control the conditions under which OUTPUT,
STArus, and CANCEL commands will be allowed. The exit routine can restrict a terminal
user from obtaining status for a job. from canceling another terminal user's job, or from
receiving the output of another tenninal user's job. The exit routine can restrict a terminal user
from directing a job's output to a specific data set or from changing a job's output class. Also,
the exit routine can send a message to the user's tenninal and can request a response. In
determining whether to allow one of the commands to execute, the exit routine can verify the
userid, jobname, and jobid. The exit routine is not entered for a STATUS command with no
operands.

IBM-Supplied Exit Routine

If an installation-written exit routine is not supplied, an IBM-supplied exit (common to all


three command processors) receives control. The ffiM-supplied exit routine allows a terminal
user to obtain the status of any job in the system. However, it restricts a terminal user from
canceling any jobs other than his own. It also restricts a terminal user from obtaining the
output of any jobs other than his own. The ffiM-supplied exit routine checks the userid
specified on the LOGON command against the jobname or jobnames entered on the
CANCEL or OUTPUT command. (The jobname must equal the userid plus at least one
character for CANCEL, and must be the userid or must start with the userid for OUTPUT.) If
the terminal user enters an invalid jobname, the ffiM-supplied exit routine sets up an error
message to be issued by the appropriate command processor and tells the command processor
via return code to ignore the CANCEL or OUTPUT request for that jobname. If any other
jobnames are listed on the same command, the ffiM-supplied exit routine processes them in
order.

Installation- Written Exit Routine

The installation-written exit routine for OUTPUT, STATUS, and CANCEL commands is also
common to all three command processors. The exit routine determines via a command code (in
word 7 of the parameter list) which command processor is invoking it. The installation-written
routine must be link-edited in SYS1.LINKLm as an independent module named IKJEFF53,
with reusable, reenterable, and refresbable link-edit characteristics. All three command
processors issue LOAD and CALL macro instructions for the exit routine and pass control in
key 1 (scheduler key) and in supervisor state for protection purposes. (A terminal user cannot
have a revised version of the exit routine in a LOGON procedure's step library and cannot
pre-load a revised version using the TEST command because ooly the system link list is used
for the LOAD.) The exit routine must follow standard linkage conventions.

After determining tbe action it wishes to take, the exit routine indicates the action to the
appropriate command processor by setting the return code in register 15. The return codes are:

o Valid joboame; get the next jobname, and continue processing.

4 Display message IKJ56208A (message text is supplied by the exit routine), get a
response, and call the exit routine again with the same johname. If the terminal user has
specified NOPROMPT on a PROFILE command or uses a CLIST without the
PROMPT keyword, the command processor terminates and issues a message to the
terminal.

Part 1 : TSO Semces 21


8 Display message IKJ56208I (message text is supplied by the exit routine) and call the
exit routine again with the same jobname. The IBM-supplied exit routine produces the
message, "JOB jobname REJECTED - JOBNAME MUST BE YOUR USERID PLUS
AT LEAST ONE CHARACTER".

1 2 Invalid jobname : cancel request for this job, then continue checking any other jobname
on the command. The exit routine should first use return code 8 to issue a message.

1 6 Terminate the CANCEL, OUTPUT, or STATUS command. The exit routine should first
issue an error message. using return code 8.

Undefined return codes cause the command processor to issue an error message and
terminate.

Upon entry to the installation-written exit routine, register 1 contains the address of a
ten-word parameter list. The system programmer can issue the IKJEFFIE mapping macro
instruction to format this parameter list. For CANCEL or STATUS, issue:
ikjeffie ietype=canst
As a result, an assembler DSECT named IEDSECTD is created. For OlJfPUT, issue:
ikjeffie ietype=output
As a result, two assembler DSECTs named IEDSECTD and IEOUTPLD are created (see
OS/VS2 Data Areas, (microfiche), for the format of each DSECT). Alter establishing
addressability with each DSECT, the system programmer can refer to the DSECT fields by
name.

The contents of the parameter list are:

Word I
contains the address of the jobname.

Word 2
contains the address of a halCword that contains the length of the jobname.

Word 3
contains the address of tbe userid.

Word 4
contains the address of one byte that contains the length of the userid.

Word 5
contains the address of a message to be displayed on the terminal, supplied by the exit
routine when the routine specifies return code 4 or 8. The format of a message is "LLtext"
where LL is a two-byte field containing the length of the entire message (including the LL
field). The maximum text length is 246 bytes. The exit routine must obtain and may free
the message text area.

Word 6
contains the address of a response from the terminal user if the exit routine's previous
return code was 4. The format of the response is "LLtext" where LL is a two-byte field
containing the length of the entire reply (including the LL field). The caller of the exit
routine obtains and frees the reply text area.

Word 7
contains the address of the one-byte caUer command code. The command codes are:
o STATUS command
4 CANCEL command
8 OUTPUT command

22 OS/VS2 SY"'" Prognmmlng U","", TSO


Word 8
contains the address of the jobid. if jobid was specified on the command. This word is zero
if jobid was not specified.

Word 9
contains the address of a halfword that contains the jobid length. The length field is zero if
jobid was not specified.

Word 10
(for OUTPUT command) contains the address of a list of pointers and bilS reflecting the
syntax entered by the terminal user. The total length of this list is five fullwords, with the
following contents:

Word 1 -pointer to the first class parse descriptor entry (PDE) on the chain of PDEs. This
word is zero if class was not specified on OUTPUT command.

Word 2 -pointer to the print-data-set-name PDE. This word is zero if the data set name
was not entered.

Word 3 -pointer to the new clas� POE. This word is zero if the new class was not entered.

Word 4 -pointer to the destination POE. This word is zero· if the destination not entered.

Word 5 -only the first one and one-half bytes (high-order) are used to reflect the
user-entered syntax as follows:
'8000' PAUSE (if off. assume NOPAUSE or not applicable)
'4000' HOLD (if off, assume NOH OLD or not applicable)
'2000' HERE
'1 000' BEGIN
'0800' NEXT
'0400' DELETE
'moo' PRINT
'0100' NEWCLASS
'0080' KEEP (if off. assume NO KEEP or not applicable)
'OO4{J' DEST
'0020' Reserved
'0010' Reserved

The high-order bit of word 10 must be on to indicate the end of the parameter list.

Writing a LOGON Pre-Prompt Exit Routine


The LOGON command initiates a terminal session by supplying the system with certain basic
information: userid, password, account number, procedure name, region size, and perfonnance
group. An installation can write an exit routine to specify these values for the LOGON
command and thereby customize the LOGON procedure for that installation'S terminal users.
The exit routine can supply system and user attributes for the protected step control block
(PSCB), generic group name, performance group, and default SYSOUT destination. It can also
provide JCL statements to be used instead of the JOB and EXEC statements constructed by
the LOGON Processor.

Notre: The LOGON processor constructs a standard JOB card and, if SMF audit�exits are
being taken, passes the JOB card directly to SMF. If a tenninal user must insert
installation-dependent information, a LOGON pre-prompt exit is required.

Part t: TSO S.rvlces 23


Installation Exit Routine Logi c

The installation-written exit routine must be named IKJEFLD and must be Unk-edited with
load module IKJEFLA in SYSI .LPALIB. Consult the output from stage I for correct linkage
information. Use the system modification program (SMP) to perform this update. When the
LOGON processor receives a LOGON command from a terminal user and before it opens the
UADS, it passes control to the exit routine as a problem program. Note that when the exit
routine is given control, the JSCBPASS bit is set to one to allow access to the UADS for
additional user verification. The exit routine can use tbe I/O service routines through
assembler macro instructions (STACK, PUTLlNE, GETLINE, PUTGET). The macros require
the addresses of the ECf and UPT, two of the parameters passed from LOGON processor.

When the exit routine receives control, register 13 points to a register save area. Register 1
points to a list of addresses, one address for each parameter. (See Figure 9 for the ronnat of
the address list. The parameters can be given any name; their meaning is determined by the
order of appearance. The names used in the following explanation are for illustrative purposes
only.) Four address list entries point directly to the data area. Each of the other entries points
to a two-word descriptor: the address of the data area (four bytes) , the maximum lengtb of the
data area (two bytes), and the current length of the data actually in the data area (two bytes).

24 OS/VSl System Proenmmlnc Ubrary: TSO


Relgster 1
I
/
Address List Oeserlptou O.t. Are••

t Control Switch Oese.


I
• Control Switches

32
I 32 I
Control Switches
I
t Input Buffer Desc.
I
• Input Buffer

252 I 252
I
Input Buffer
I
t Userid Oesc.
I
• Userld
7
I 0 I Userid
I
t Pessword Oesc. • Password

8
I 0
I
Password
J
t Account Number Desc.
• Account Number Account Number
I
I 40 I a

t
J
Procedure Name Dasc.
• Procedure Name Procedure Name

I J I
I 8 0

t Region Size
Region Size
I
t JCL Oesc. • JCL Cards

800
I 0 I
1 0 JCL Card Images
I

I
New Password

t New Password Oesc. 8


I a
I I New Password

t System Attdbute Desc.

I
• System A l1ributes

16
I 0
I
Synem Al1rib. Bits
I
t User Attribute Dosc.

I
• User Attributes

16
I 0
I
I
User Attrib. Bits
I
.J
t Generic Unit Desc.

I
• Generic Unit

8 I 0 I
Generic Unit
I
t UPT Desc.
4 UPT Image
I
UPT I mage
I
I 192
I 192
I
t ECT Desc.
• ECT ECT (Actual)
I
448
I 448
t cancel ECB
CHCECB
I
t Lsst Step Completion Code
LWAATCD
I
t Performance Group Performance Value

t Defeult Sysout Dest. • Dest. StBtlonid Dest. StBtlonld


8
I 0 I
t
I
Group Oesc.
• Group
Group
8
I a
I I

F'&w'e 9. LOCON Pre-Prompt Parameters

Part I: TSO SenkeS 25


The exit routine must move the proper data to the data area, update the current length
field, and turn on the appropriate control switch bit, if it exists. The control switch bit
indicates to the LOGON processor that the exit routine has passed the corresponding
parameter in the data area. For example, if the JCL control switch bit is set to one, the JCL
data area must be supplied.

The data address field, the maximum length field, and the addresses in the address list must
not be altered. These fields are checked by the LOGON processor and must be the same upon
return as they were upon entry. If they are altered, an appropriate error message is issued and
the LOGON processor terminates.

Parameter Descriptions

Control S";tcbes: The control switch bits set by IKJEFLD indicate to the LOGON processor
that the exit routine has passed the corresponding parameter in the data area or indicate an
action to be taken by the LOGON processor. The control switch bits set by the LOGON
processor indicate to the exit routine that certain system conditions exist. The bit configuration
is as follows:

Byte Bit Field Name


o o Userid ENQ rail
I Reserved
2 Resource failure
3 Disconnect
4 Don't prompt
S No UADS
6 JCL
7 Reserved
o System attributes
I User attributes
2 Generic group
3 UPT
4 Don't ENQ userid
S Destination
6 Abend
7 Reserved

N_:

• Bytes 2 and 3 are reserved.

• If the don't-prompt bit is set to one, the values for userid, password, account, procedure,
region size, and performance group data areas must be supplied. If the no-UADS bit is
set to one also, then system attributes, user attributes, generic group, and UPT data areas
must be supplied.

• Maximum and current length are in bits.

Userid ENQ fail


bit is set to one by the LOGON processor to teU IKJEFLD that the ENQ on the userid was
unsuccessful, implying that the userid is in use.

Reserved
This bit is reserved.

Resource failure
bit is set to one by the LOGON processor to teU IKJEFLD that the LOGON processor was
unable to obtain a resource other than the userid.

Disconnect
bit is set to one by IKJEFLD to tell the LOGON processor to tenninate the session. The
LOGON processor sends no further message to the terminaL

26 OS/vSZ Sy"em ....... LIHwy, TSO


Don't prompt
bit is set to one by lKJEFLD to teU the LOGON processor that lKJEFLD has supplied
userid, password, procedure name, account number, region size, and, optionally, the
performance group, The user cannot be prompted,

No UADS
bit is set to one by IKJEFLD to teU the LOGON processor not to look at the UADS to
verify the userid, account number, etc, This bit is ignored if the don't-prompt bit is off. If
this bit is on, no access to the UADS is made by LOGON/LOGOFF processing.

JCL
bit is set to one by IKJEFLD to teU the LOGON processor that IKJEFLD has supplied a
maximum of ten SO-byte JCL cards (in standard format).

Reserved
This bit is reserved.

System attributes
bit is set to one by IKJEFLD to teU the LOGON processor that IKJEFLD has supplied the
system attribute bits.

User attributes
bit is set to one by IKJEFLD to teU the LOGON processor that IKJEFLD has supplied the
user attribute bits.

Generic group
bit is set to one by lKJEFLD to teU the LOGON processor that IKJEFLD has supplied a
generic group name.

UPT
bit is set to one by IKJEFLD to teU the LOGON processor that IKJEFLD has supplied the
UPT.

Don't ENQ
bit is set to one by IKJEFLD to teU the LOGON processor not to ENQ on the userid,
implying that. more than one user can log on with the same userid. The No-UADS bit must
also be set to one for this bit to have any effect.

Destination
set to one by IKJEFLD to tell the LOGON processor that IKJEFLD has supplied the
default SYSOUT destination.

Abend
set to one by the LOGON processor's ESTAI retry routine to indicate to IKJEFLD that an
abend has occured
r and the LOGON processor is retrying one more time.

Input buffer: Contains the text portion of the input line entered from the terminal. It is
obtained by the LOGON processor and passed to IKJEFLD. IKJEFLD may alter the input
buffer. Maximum and current length are in bytes.

Userid: IKJEFLD passes a userid to the LOGON processor. The don't-prompt bit must be set
to one in order for the LOGON processor to accept the userid. Maximum and current length
are in bytes.

Passwoni: IKJEFLD returns a password to the LOGON processor. The don't-prompt bit must
be set to one in order for the LOGON processor to accept the password. Maximum and
current length are in bytes.

Part 1: TSO Senices 27


Account: IKJEFLD passes an accounting string to the LOGON processor. The don't-prompt
bit must be set to one in order for the LOGON processor to accept the accounting string.
Maximum and current length are in bytes.

Procedure: IKJEFLD passes to the LOGON processor the name of a cataloged procedure
containing JCL to define the resources needed by the terminal job. The don't-prompt bit must
be set to one in order for the LOGON processor to accept the procedure name. Maximum and
current length are in bytes.

Region size: IKJEFLD passes to the LOGON processor a fullword containing the region size,'
in hexadecimal, for the terminal job. The don't-prompt bit must be set to one in order for the
LOGON Processor to accept the region size.

JCL: IKJEFLD provides JCL statements that define terminal job resources. This JCL is used
instead of the JOB and EXEC statements constructed by the LOGON processor. The JCL
field is 800 bytes (maximum) in length; therefore, ten card images (maximum) can be passed
to the LOGON processor. The LOGON processor expects the JCL data to be in card image;
each 80 bytes of the area should contain a full SO-byte JCL card in standard format. Updating
the current length field tells the LOGON processor the number of cards being passed (80 x N
cards). The JCL bit must be set to one by IKJEFLD for the LOGON processor to accept the
JCL supplied. Maximum and current length are in bytes.

New password: For RACF, returns a new password to the LOGON processor, which will
replace the current password. The don't-prompt bit must be set to one, in order for the
LOGON processor to accept the new password. Maximum and current length are in bytes.

System attributes: lKJEFLD returns a value to the LOGON processor for the PSCBATR I
string in the PSCB. Either the system-attributes bit is set to one or don't-prompt and
no-UADS bits are set to one. See OS/VSl Data Areas, (microfiche), for a descriptj'.ln of the
PSCB. Maximum and current length are in bits.

User attributes: IKJEFLD returns a value to the LOGON processor for the PSCBATR2 string
in the PSCB. Either the user-attributes bit is set to one or the don't-prompt and no-VADS bits
are set to one. See OS/VSl Data Areas, (microfiche), for a description of the PSCB. Maximum
and current length are in bits.

Generic group: IKJEFLD returns a value to tbe LOGON processor for the PSCBGPNM field
of the PSCB. The group name is initialized from the UADS by the LOGON processor unless
the generic-group bit is set to one or the don't-prompt and no·UADS bits are set to one by
IKJEFLD. See OS/VSl Data Areas, for a description of the PSCB. Maximum and current
length are in bytes.

UYI": The LOGON processor passes a UYI" containing binary zeros to IKJEFLD. This UYI"
can be updated and returned to the LOGON processor if tbe UYf bit is set to one or the
don't-prompt and no-UADS bits are set to one. See OS/VSl Data Ar.... for a description of
the UPT. Maximum and current length are in bits.

ECT: Passed to IKJEFLD, may be modified by lKJEFLD, and will be used by the LOGON
processor. This is the actual ECT built by the LOGON processor. IKJEFLD need not set any
bit to teU the LOGON processor to accept the ECT. Maximum and current length are in bits.

Cancel ECB: The BCB used by the system for cancel processing. This ECB can be read but
not altered by IKJEFLD. If cancel ECB is nonzero, the LOGON processor terminates the
present session.

18 OS/VSl S,....m ...... \Jbnory: TSO


Last step completion: During a re-LOGON, this is a rull word containing the completion code
for the userid that was just logged orr.

Performance group: [l{JEFLD passes to the LOGON processor a halfword containing a


number that associates tenninal user interactions with one or several performance groups. IJ a
performance group of zero is returned to the LOGON processor, then the LOGON processor
will use the system default performance group. For Curther information concerning
performance, refer to the System Programming Library: Initialixation and Tuning Guide.

Default SVSOUT destination: IKJEFLD returns to the LOGON processor the default
SYSOUT destination ror a userid. Maximum and current length are in bytes.

Group: For RACF. returns a group name to be used as the user's current connect group. The
don't-prompt bit must be set to one, in order Cor the LOGON processor to accept the RACF
group identification. Maximum and current length 3re in bytes.

Sample LOGON Pre-Prompt Exit ROlltine

A sample LOGON pre-prompt exit is shown in Figure 10. Besides perfonning housekeeping
functions and satisfying linkage conventions, the exit routine supplies two JCL statements
(JOB and EXEC) and updates the current length field to indicate that the data area contains
160 bytes of data. The exit routine also sets the JCL control switch bit to one to teU the
LOGON processor that the JCL parameter is being passed.

ROIKJEFLD EQU CSECT o

RSR6Rl EQUEQU 1
67 S

R7RC EQU EQU


EQU 1213
RDRE EQU 14S
RF EQU EQU *,RF 1
USING RE,RC,12(RDI
STM
LL R6,O(
R7,2S(R7RI) I SAVE REGISTERS
INITIALIZE REGDATA
SEVENAREATO
MVC O(SO,R6 I,OURJCL POINT
MOVE TO
JOB JCL
CARD
MVC
MVC SO(SO,R6
6(2,R7 I I,OUREXEC
,OURCNT MOVE EXEC
UPDATE CARD LENGTH
CURRENT
LL RS,O(
RS, O( RRS1 II INITIALIZE
POINT TO REG FIVESWITCHES
CONTROL TO

01
LM
O(RE,RC,
RS ),X'02'
12( RDI TURN ON JCL
RESTORE SWITCH
REGISTERS
OURJCL DCDCBR C'C'//IBMUSER
14
JOB
MSGCLASS=M,TIME=1439
EXIT
(D72598,9,OPR),IBM,MSGLEVEL=1 ' ,'
OUREXEC DCDC C'//STI
C' EXEC IKJACCNT
OURCNT DCEND H' 160' UPDATED CURRENT LENGTH
....e
.. to. Sample UstIne of a LOGON Pre-Prompt Edt

Part I: TSO Senk:es 19


Writing Installation Exits for the RENUM, MOVE and COPY
Subcommands of EDIT
The RENUM subcommand of EDIT assigns a line number to each record in a data set that
does not have line numbers; it also renumbers each record in a data set that has line numbers.
The MOVE subcommand of EDIT moves lines in a data set from one location to another,
renumbering the moved lines as necessary. The COPY subcommand of EDIT copies lines in a
data set, renumbering the copied lines as necessary.

However, the RENUM, MOVE and COPY subcommand processors cannot handle certain
data set types (for example, VSBASIC data sets) that can have embedded line references
(using a line number as a destination or statement "label" in a statement that passes control,
such as GOTO statements). Thus, an installation may want an exit routine that renumbers,
moves, records and copies records in an in-storage data set, adjusting line references as
necessary. An exit routine can also be used to nag a statement (for example, by adding a
comment at the end of the statement) or to use a non-standard numbering scheme.

IBM -Supplied Exit ROlltine - VSBASIC Data Set Type

If an installation-written exit routine is Dot supplied for the VSBASIC program product, an
mM-supplied exit routine (supplied with the VSBASIC program product) receives control. The
MOVE and COPY functions are not supported by the mM-supplied exit. For a RENUM
request, the exit routine renumbers the data set's records and scans the data set for statements
that contain line references. When it encounters a line reference, the routine updates the
reference to reflect the revised line number. Upon successful completion, the exit routine
passes return code 0 to the subcommand processor. If it fails, the exit routine issues a message
to the terminal user, sets the return code to 8, and returns control to the subcommand
processor. The name of the ffiM-supplied exit routine defaults to ICDQRNME during system
generation.

Installation-Written Exit Routine

The RENUM, MOVE and COPY subcommand processors issue LOAD and CALL macro
instructions for the exit routine, which can reside in a step library, in the LPA library, or in
any data set in LNKLSTxx. (The exit routine's name must previously have been specified on
the EDIT macro instruction during system generation as the DATEXIT value for the
applicable data set type(s). The default is to only have a DATEXIT for the VSBASIC data set
type.) The exit routine must follow standard linkage conventions. A work area is not passed to
the exit routine; it must obtain and release any storage needed. If storage is obtained, it must
be in subpool 1 . The routine has the use of all TSO service routines in its processing.
The exit routine receives an in-storage data set as input. After processing the data set, the
routine must return the data set to the subcommand processor. The subcommand processor
copies the data set to a new utility data set to complete the operation.

The routine is expected to periodically check the EDIT command's attention ECB for
function interruption. When an interrupt occurs, the exit routine must return control to the
subcommand processor with return code 0, after releasing all resources it has obtained.

30 OS/VSl System ...... LilNwy, TSO


Upon any completion, the exit routine must release any resources it has obtained. On
successful completion, the routine must return a pointer to the updated in-storage data set and
its length, if applicable. It must also update the current line pointer (in the subcommand
interface area). The exit routine indicates success or failure by the return code that it sets in
register 1 5 :

o indicates successful completion o r attention interrupt.

4 requests RENUM processing as if the exit routine were not available.

8 indicates function not performed, message sent to the terminal user.

Upon entry, register 1 contains the address of a parameter list:


Orlset (Hex) Length Contents
o 4 UPT address
4 4 Ecr address
8 4 EDIT attention ECB address
·C I Flags:
Bit 0 o . Records have standard line numbers
I Records do not have standard line numbers
.

Bit 1 o . Not RENUM function


I RENUM function
.

Bit 2 o . Not MOVE function


I . MOVE function
Bit 3 O · Not COPY function
1
• COpy function
Bit 4 o Nonnal line range specification
.

I . '. COUNT range notation


Bit .5 o Fixed length records
-

I . Variable length records


D l Address (in storage) of data set
10 4 Address of subcommand interface
14 4 Address of data attribute parameters

The in-storage data set contains all records in the current EDIT utility data set in the
format prescribed by the RECFM applying to the EDIT input data set. All variable record
lengths are described by the standard header word (LL/OO). FiXed record lengths are
described by the data attribute parameters. All records by the data set are back-to-back and
are contained in a single area of virtual storage, assigned from subpool 1 .

The subcommand interface area, which con� all values in binary, consists of:

RENUM format:
orrse. (Hex) I.e.gtb Contents
o 4 Line number position
4 4 Length of line number
8 4 First line to be renumbered (0 indicates lirst line of data set)
C 4 Last line to be renumbered (X'7FFFfffF requests renumbering through end of
data set)
to 4 Line number (0 be assigned to the first renumbered line
14 4 Increment to be used
18 4 Address of current line reference (updated by exit routine before it returns control
to the RENUM subcommand processor)

MOVE/COPY format:
orrse. (Hex) I.eogtb Contents
o 4 Line number position
4 4 Length of line number
8 4 First line of MOVE/COPY range
(0 indicates first line in data set)
c 4 Last line of MOVE/COPY range
(Bit 4 of flags_ I)
to 4 Line number of line prec::eding insertion point
14 4 Increment to be used
18 4 Current line pointer

Pm I: TSO SenIces 31
The ·data attribute parameters consist of a two�word list:
,
Offset (Hex) Lenith Contents
o 4 Logical record length (in bytes)
4 4 length of the data set On bytes)

Data Set Types and Syntax Checking


This section tells the system programmer how to:

• Define a data set type


• Write a syntax checker for an installation�defined data set type
• Write an exit routine for an installation-written syntax checker

Data Set Types and Syntax Checking

An installation can defme a data set type for the EDIT command in addition to the data set
types supplied by IBM. The installation-defined data set types, along with those supplied by
IBM, must be defined during system generation by using the EDIT macro instruction. (For the
list of ffiM-supplied data set types, see TSO Command Lanauage Rererence. For more
information on how to specify the EDIT macro instruction during system generation, see
Syslem Programming Library: System Generation Reference. The EDIT macro instruction builds a
table of constants that describes the data set attributes. The EDIT command processor
supports data sets that have the following attributes:
Data set organization Sequential or partitioned
Record format Fixed or variable
Logical record size Less than or equal to 2SS characters
Blocksize User-specified, must be less than or equal to track length
Sequence number For variable-length records, first eight characters
For fixed-length records, last eight characters

Syntax Checking

Each mM�supplied syntax checker is associated with one or more IBM-supplied data set types.
If an installation defines its own data set type(s) for the EDIT command, the system
programmer can write a syntax checker for each new data set type, if desired. Each syntax
checker and its associated data set type must be defined during system generation by using the
EDIT macro instruction (see System Programming Library: System Generation Rererence). Thus,
when a terminal user enters lines of input to an installation-defined data set type, he can
request that each line entered in input mode be immediately scanned for syntax errors.

Before a record is scanned by the appropriate syntax checker, the record is put into the
terminal user's data set. If a syntax error is found in the record just entered by the user, EDIT
displays an error message and switches from input mode to edit mode to enable the user to
correct the mistake. The formats of the records passed to the syntax checkers are described in
Figure 1 1 .

31 OS/VSl System ........- I..ibno1': 1'SO


D... Line Number line Number

De ..

Length

L- __
__ ���LL������-JL-------------�8�--JL--------------J
8 Bytes Bytes
(N umb8r� )

L Reco� �
Record Length Deta Line Number
Line Number

,--,-tr--r:;f---,c:>??;ry'7?7::i>7?'7.>r.f-r'---/-r--,,-r--r---, Variable­
Length
( N u mberect)

t�
Byte. _______ 1 �
Byte.
2
-.­
Byres
2

Record Deta

f1&w'e I I . Format of Records Passed to Synl." Checkers

A standard interface is provided to enable the EDIT modules to invoke any available syntax
checker. The EDIT modules that invoke syntax checkers, and the IBM-supplied syntax
checkers are shown with the standard interface in Figure 12. An installation-written syntax
checker can also use this interlace, which consistS of the syntax checker parameter list.

EDIT Module Standard Interface Syntax Checker


Syntax Checker
Common Module Data Set Module
Parameter List
N,me Neme Type Name
00 • Buffer
Pll PL1SCAN
SCAN - IKJEBESC
Syntax Checker
SCAN IKJEBESN R eg ' PL1-F PL1FSCAN
CHANGE - IKJEBECG
00 t Communication Area
FORTH IPOSNEXC
CHANGE IKJEBECN 00 Optioo Word FORTGI IPOSNEXC
INPUT IKJEBEIM GO FORT IPOSNEXC
INSERT IKJEBEIS BASIC IKJNC2 1 1
ITF TRANSLATION IPLI IKJNC2 1 1
- IKJEBEMR user type user module
I nsertiReplace/O eIete
IKJEBELI
RUN IKJEBERU
DELETE IKJEBEOE

Figure 12_ Interface Between EDIT Program and Syntax Checkers

Part 1: TSO Sen1ces 33


The following figures describe lbe contents of the control blocks pointed to by lhe syntax
checker parameter list.

Oisp Disp Field Field


Dec, Hex. Name Size Contents

0 0 C 1 Number of record. in buffer (maxlmum-1271; bit zero I. set


to 1 when the synta)l checker has .Dlnned all record. In the
buffer.

1 1 Chain 3 Address of next buffer; tet to zero if this I, last buffer In <tIeln.

4 4 Record Varl.ble Line or lines of source input data to be syntax checked; "'n be
fixed· or variable-length, numbered or unnumbered .

FIprt: 13. Coate.s of Ute &.frer CoatroI Block

Contents
Disp Disp Field Field
Dec. Hex. Name Size Meaning
Setting
(Instructions to Syntax Checker)

bits 0·3 (where n-o or 1 ) .

Onnn F irst entry - obtain and initialize work area; If .


buffer chIIin II supplied. the synta x checker will set
the releti..... IIn8 number counter to zero.

1" 1 n Last entry release the work erea and return; syntax
-

checking is not performed.

1000 Nor,.,.. 1 entry - set relative line number counter to


zero; perform syntax checking.

0 0 None 1 110n Entry after return code 8 (error - buffer checking


incompleta) - continue Iyntax checking.

1001 Entry after return code 12 ( complete ltatements have


bee n checked , but last statement in input buffer is
incomplete' : if there is no more input (chain address
of lest buffer or buffer eddren is zero), syntax c:heclc:
the Incomplete statement and return; if there Is a
new buffer chain, thet is, more input (chein address

or buffer address I, not zero!. resume- syntax checking

at the incomplete statement.

bits 4-7 Reserved.

1 1 None 4 XX)(X Address of work area stored by syntax checker on


first entry.

4 4 None 4 xxxx Initial entry - mlIximum statement size specified at


SYSGEN (if 0, checker a.urnes sufficient storage for
IarlJ8St lagal ltatement il evailable); entry .fter return
code 4 (error detected, syntax checking complete,
second level mItII8g8 presend, or 8 (error detected.
.

syntax checking Incomplete, - addre" of error


meHege .ree.

8 8 None 4 xxxx Initial entry - Temporary work .ree; subsequent


entries - address of second error m81-.ge;1f any.

12 C None 4 xxxx Temporary .torage aree used for GETMAIN.

n.-e 14. Coatnts of the Syatax Otecker COl


an
.·_....

t
....
.. A
....

34 OS/vSl System Pr
o .... LIInry: TSO
er
Contents
Disp Disp Field Field
Dec. Hex. Name Size Syntax
Setting Meani ng
Checker

0 0 None 1 X'OO' FORTRAN H level FORTRAN


X'03' GOFORT FORTRAN
X'04' FORTRAN G 1 FORTRAN

X'OO' IPLI level IPLI


X'O" BAS IC lellel BASIC

xxxx Value of left source margin PLIF

1 1 None 1 bits 0·5 Reserlled FORTRAN


bit 6-1 FORTRAN G1/H Code and Go FORTRAN
definition to be loaded on initial
entry
-0 FORTRAN G1/H Code and Go FORTRAN
definition not to be loaded on
initial entry

bit 0-1 Entry from INPUT, Insert, linenum, ., IPLI or BASIC


CHANGE

bit 1-1 Entry from DELETE IPLI or BASIC

bit 2"'1 Entry from MERGE or AENUM IPLI or BASIC

bit 3"'1 Translation already complete IPLI or BASIC

bit 4-1 Entry from RUN IPLI or BASIC

bit 5-7 Resel'\led IPll or BASIC

xxx x Value of right source margin PLiF

2 2 None 1 xxxx Reoord length of fixed -length records; All


binary zero, i f variable· length
records.

3 3 None 1 bit 0=0 CHAR 60 PLI or IPLI


-1 CHAR 48 P L l o r IPLt
bit 1-0 line-numbered data I18t All
-1 Date set not line -numbered All
bit 2 Reserlled All
bit 3eO Diagnose en incomplete statement All
-1 Delayed scan - return with code of All
12 if last statement in input buffer
is incomplete; immediate scan -

possible incomplete statement in


buffer.
bit 4-0 F i xed-length records All
-1 Variable·length records All
bit 5-0 Standard form source input All
-1 Free form source input All
bit 6:0
-1
bit 7"'0 SCAN or SCAN ON specified All
-1 NOSCAN or SCAN OFF specified All

Fipre 15. Contents of lhe Optton Word

Part 1: TSO Sen-Ices 35


Writillg Illstal/atioll Exits for SYlltax Checkers

For mM-supplied data set types and associated syntax checkers, each syntax checker
determines the attributes of the associated data set type by referring to information that EDIT
initialization sets in the option word, a fuUword in the syntax checker parameter list. However,
for an installation's own data set type and syntax checker, EDIT initialization does not place
the attribute information in the option word; the system programmer can write an exit routine
to fill in the option word for the syntax checker according to information entered by a terminal
user.

When a terminal user specifies the installation's data-set-type keyword on the EDIT
command, he can also specify a subfield. The subfield can contain any alphameric data defined
as valid, not exceeding 256 characters and not containing any blanks, tabulation characters, or
commas. This information is passed to the exit routine to be interpreted and encoded into
bytes 0 and 1 of the option word.

The exit routine name must be supplied during system generation as the USREXT value for
the applicable data set type(s) on the EDIT macro instruction. The routine receives control
from the EDIT command processor via a LINK macro instruction, and it must fonow standard
linkage conventions.

Upon entry, register 1 points to a three-word parameter list. The contents of the parameter
list are:

Word 1
Address of the subfield parameter descriptor element (POE) with the following format:

Bytes MeaniD&
4 Address of the character string (zero. if the character string is omitted)
2 Length of the character string
I Flag bits: High-order bit set to 0, the parameter is not present. High-order bit set to I.
the parameter is present. The other bits are unused.
Reserved

For more information on this POE, sec TSO Guide to Writing a TMP or CP for a description
of the IKJIDENT POE under "Format of the PDES Returned by Parse ."

Word 2
Address of bytes 0 and 1 of the syntax checker option word. Tbe installation-written syntax
checker can assign its own meanings for the bit settings.

Word 3
Address of the command processor parameter list (CPPL) passed to the EDIT command
processor from TMP . The format of the CPPL is:

Bytes Field name Meaning


4 CPPLCBUF The address of the command buffer.
4 CPPLUPT The address of the user profile table (UPT).
4 CPPLPSCB The address of the protected step control block (PSCB).
4 CPPLECT The address of the environment control table (ECT).

The exit routine uses this information to access the ECT and UPT to invoke Parse or a
TMP service routine.

The exit routine is expected to update bytes 0 and 1 of the option word and to issue a
return code: 0 if successful, 4 if unsuccessful.

36 OS{VSl System ProgrammlDa Ubrary: TSO


Adding Subcommands to the EDIT Command
When a terminal user enters an EDIT subcommand, the Edit controller (load module
IKJEBEMA) invokes the appropriate subcommand processor. IKJEBMA9, a CSECT within
load module IKJEBEMA, is reserved as a table of instaliation-written EDIT subcommand
names. Thus, if an instaUation requires an editing function not provided by the mM-supplied
EDIT subcommands, the system programmer can write one or more subcommand processors
and add their names to this table by using tbe lKJEBEST macro instruction. The operands of
the IKJEBEST macro instruction indicate the name of the subcommand, the abbreviation for
the subcommand name, the name of the module that processes the subcommand. and the
CSECT=USER operand. For example:

IKJEBEST (SWTCH,SW,XXXSWTCH ),CSECT=USER


To specify multiple subcommand processors via IKJEBEST, the format is:

IKJEBEST L CSECT=USER
(subcmdl, abbrl , mod-namel ) . . .] ,

NtJle: The names associated with an installation-written subcommand must not be the same as
the names associated with any ffiM-supplied subcommands.

When the IKJEBEST macro instruction is assembled, the CSECT_ USER operand causes
the resulting object module to be named IKJEBMA9. The system programmer must Jink·edit
the IKJEBMA9 module with the IKJEBEMA load module, performing a CSECT-replacement
operation for IKJEBMA9 object module. At that point, the instaDation-written EDIT
subcommands are available.

Part 1: TSO Sermes 37


Macro lKJEBEST can be obtained from PYTMACS or included in your macro library by
coding the following:

MACRO
IKJEBEST &CSECT=IBM
LCLA SA, &B, &C, &0, iE
LCLA &F
LCLC &CNAME , &SCNAME , &ABBR, &LDMOD , &LABEL, &LABEL 1 , &LABEL2 , &
AIF ( ' &CSECT ' NE ' IBM' ) . CONTO
&CNAME SETC ' IKJEBMAS ' DEFINE CSECT NAME FOR IBM TABLE .
IKJEBMA8 CSECT
ENTRY MA8IP002
ENTRY MA8LI002
AGO . CONTl
. CONTO ANOP
AIF ( ' &CSECT ' NE ' U SER' ) . ERROR2
&CNAME SETC ' IKJEBMA9' DEFINE CSECT NAME FOR USER TABLE.
IKJEBMA9 CSECT
. CONTl ANOP
&A SETA N I &SYSLIST
AIF ( &A EQ O ) . END
&B SETA 1
&F SETA 1
. CONT2 ANOP
&C SETA N ' &SYSLIST( &B )
AIF ( &C LT 2 OR &C GT 3 1 . ERRORl
&E SETA K ' &SYSLIST( &B, &C )
&0 SETA &E-l
* THE FOLLOWING FLAGGED INSTRUCTIONS WERE ADDED TO PROVIDE
* UNIQUE LABELS , EVEN IF MODULES HAVE IDENTICAL LAST TWO
* CHARACTERS IN ENTRY POINT NAMES . THE LABELS FOR MODULES
* IKJEBELI AND IKJEBEIP ARE UNCHANGED . SINCE THEY ARE
• REFERENCED WITHIN IKJEBEM A .
AlP ( ' &CSECT ' NE ' I BM l l . CONT 1 0
AlF ( ' &SYSLIST( &8, &C ) I ( &0, &E ) EQ ' LI 'OR X
' &SYSLIST( &B , &C ) ' ( &D , &E ) EQ ' I P ' ) . CONTl l
. CONT 1 0 ANOP
&LABELl SETC ' &eNAME I ( 6 , 8 ) . I Q) ' . I iF'
&F SETA SF+1
&LABEL2 SETC ' &CNAME ' ( 6 , 8 ) . ' . ' . ' &F '
&F SETA &F+1
AGO . CONT 1 2
. CONT l l ANOP
&LABELl SETC ' &CNAME ' ( 6 , 8 ) . ' tSYSLIST( &B , &C ) ' ( &D , &E ) . ' 0 0 1 '
&LABEL2 SETC I &eNAME ' ( 6 , 8 ) . ' &SYSLIST( &8, te l ' ( &0, &E ) . ' 0 0 2 '

. CONT 1 2 ANOP
&SCNAME SETC ' &SYSLIST( &B, 1 ) I
SPACE 2
DC AL1 ( &LABEL 1 - * - l ) LENGTH OF SUBCOMMAND NAME .
DC C ' &SCNAME ' SUBCOMMAND NAME .
&LABELl EQU *
DC AL1 ( &LABEL2-*- l ) LENGTH OF ABBREVIATION .
AIF ( K ' &SYSLIST( &B, 2 ) EQ O ) . CONTS
&ABBR SETC I &SYSLIST( &B 1 2 ) I
DC C ' &ABBR ' ABBREVIATION FOR SUBCOMMAND .
. CONTS ANOP
&LABEL2 EQU •

&LDMOD SETC , &SYSLIST( &B, &C I '


DC CL8 ' &LDMOD ' LOAD MODULE NAME .
AIF ( &B EQ &A ) . END
&B SETA &8+1
AGO . CONT2
. END ANOP
SPACE 2
DC AL 1 ( 2 SS ) END OF TABLE MARKER .
MEXIT
. ERROR 1 MNOTE 1 2 , ' I NVALID TABLE ENTRY '
MEXIT
. ERROR2 MNOTE 1 2 , ' INVALID KEYWORD VALU E '
MEND

38 OS/VS1 Sy".m � Ubnory: TSO


Authorized Program Execution
If tbe AITACH macro support in the system includes recognition of tbe RSAPF keyword and
if suitable installation access lists in CSECTs IKJEFTE2 and JKJEFTE8 are link edited with
the terminal monitor program, then TSO users can execute authorized and nonauthorized
programs within a single TSO session.

If either the keyword RSAPF is not recognized or the installation does not supply names in
lists APFCTABL (in JKJEFTE2) and APFPTABL (in JKJEFTE8) , then only nonauthorized
programs can be executed. This restriction on execution of authorized programs includes the
OS/YS utility programs IEHDASDR, IEBCOPY, IEHMOYE, IEHATLAS, IEHINIIT, and
IEHPROGM. TSO users can execute these utilities by using the SUBMIT command.

The ffiM-supplied lists for APFCTABL and APFPTABL contain blank entries which inhibit
the execution of APF-authorized programs. The APFCTABL list contains the names of
authorized command processors executed by the TMP. and tbe APFPTABL list contains the
names of authorized programs to be executed by CALL. The modules that are attached for
these names must be link-edited with APF authorization. If a name does not appear in these
lists, the program is attached without authorization. If a program is to be executed by both the
TMP and CALL, then its name must appear in both lists.

The format of the list is a sequence of eight-character command name entries. This list is
terminated by an entry consisting of eight blanks. Command name entries of less than eight
characters must be left-justified and padded to the right with blanks to fill the eight-character
entry.

The first entry to be examined by the TMP in either JKJEFTE2 or IKJEFTE8 will be that
entry associated witb the respective ENTRY name APFCT ABL or APFPTABL. If a command
has an abbreviation, it must appear as a separate entry. A nuD list consists of just the final
eight blanks.

For example:

If commands RI USER with abbreviation Rl and P3SRCH are to be executed with


autborization, then the list should look like:

IKJEFTE2 ENTRYT
CSEC APFCTABL
APFCTABL DCDCDC CLB
CLS'IIKJEFTE2
CLB'R1 76.133'
User
' DATE MAY CHANGE
.
DCDC CLB'Rl
CLS'P3SRCH
DCEND CLB'
If an installation wishes to allow access to IEBCOPY through CALL, then lhe list should
look like:

IKJEFTES ENTRY APFPTABL


DCDCCSECT CL8'
CL8' IKJEFTE8'
76,1 33', DATE MAY CHANGE
APFPTABL DC
DCEND CLS'
CL8' IEBCOPY

Part \, TSO 50...... 39


The lists in APFCTABL and APFPTABL must contain only the eight-character strings. The
installation can reserve extra space by additional terminal blank strings. Nonblank entries
following a blank entry are not examined.

mM modules IKJEFTE2 and IKJEFrE8 can be replaced by link-editing user modules with
these names into TMP load module IKJEFT02 in SYS l.LPALm. Consult the output from
stage I for correct link edit information. Any program which depends upon a job step
environment such as the TMP should not be placed in the lists.
Part 2: Reference - TSO Commands

This section describes the two 1'50 commands that should be installation controlled. The
ACCOUNT and OPERATOR commands should be totally restricted in use to system
programmers and installation-approved personnel. These commands are completely described in
this book.

Coding the Commands


The notation used to define the command syntax and format in this publication is described in
the following paragraphs.

I . The set of symbols listed below is used to define the syntax, but never use them in the
actual command.

hyphen
underscore
brace.
{}
brackets (]
ellipsis
The special uses of these symbols are explained in the following paragraphs.

2. Use uppercase letters, numbers, and the set of symbols listed below in an actual
command exactly as shown in the command syntax.

apostrophe
asterisk •
comma
equal sign
parentheses 0
period
3. Lowercase letters, and symbols appearing in a command syntax represent variables for
which you substitute specific information in the actual command.

Example: If name appears in a command syntax, substitute a specific value (for


example, ALPHA) for the variable when you enter the command.

4. Hyphens join lower-case words and symbols to form a single variable.

Example: If member-name appears in the command syntax, substitute a specific value


(for example, BETA) for the variable in the actual command.

S. An underscore indicates a default option. If you select an underscored alternative, you


need not specify it when you enter the command.

Example: The representation


A
B
C

indicates select A or B or C; however, if you select B, you need not specify it because it
is the default option.

6. Braces group related items, such as alternatives.

Pwt 2: R"� - TSO C _


... h
' 41
Example: The representation

ALPHA=! {�} , D)

indicates choose one of the items enclosed within the braces. If you select A, specify
ALPHA=(A,D).

7. Brackets also group related items; however, everything within the brackets is optional
and may be omitted.

Example: The representation

ALPHA=! [�J ,D)

indicates choose onc of the items enclosed within the brackets or omit all of the items
within the brackets. If you select only 0, specify ALPHA= (,D).

8. An ellipsis indicates that the preceding item or group of items can be repeated more than
once in succession.

Exnmple:
ALPHA [ , BETAI • • .

indicates that ALPHA can appear alone or can be followed by ,BETA any number of
times in succession.

9. Alphameric characters: unless otherwise indicated, an alphameric character is one of the


following:

• alphabetiC: A-Z

• numeric: 0-9

• national: $#@

Continuation Lines
Continue a command or subcommand, except the SLIP subcommand of OPERATOR, on one
or more lines by following this rule:

Use either a hyphen (minus sign) or a plus sign as the last character on the line you wish to
continue. If you use a plus sign, precede it by at least one blank to prevent the concatenation
of character strings from line to line. (The plus sign causes TSO to delete leading delimiters
(blanks, commas, tabs, and comments on the continuation tine.)

Continue the SLIP subcommand of OPERATOR on one or more lines by following this
rule:

Use a blank as the last character on the line you wish to continue.

You can end a line of input anywhere except:

• an equal sign and its preceding keyword must appear on the same line

• the binary indicator: (b) in the DATA keyword must appear on the same Line.
• the complete keyword must appear on the same Line

42 OS/VSl System Programming Ubrary: TSO


Delimiters
For all subcommands, except the SLIP subcommand of OPERATOR, the following rule on the
use of delimiters applies: unless otberwise indicated, use a blank (or blanks) as the delimiter
between .3 subcommand and a foUowing parameter, and between parameters.

For the SLIP subcommand of OPERATOR, the following rule applies; blanks are not
allowed except between SLIP and SET, MOD, or DEL.

Parameter Defmitioos
Two types of parameters are described under ACCOUNT and OPERATOR: positional and
keyword. Positional parameters must appear in a command exactly as shown in the command
syntax. Keyword parameters may appear in any order.

.'

Part 1: RefereKe -
TSO CC__.
ds 43
ACCOUNT Command

Use the ACCOUNT command and subcommands to create and to update the entries in the
user attribute data set (UADS) and. simultaneously. the broadcast data set
(SYS1 .BRODCAST). This command can be executed as either a time-sharing or a batch job.
Basically. the UADS is a list of terminal users who are authorized to use TSO. The UADS
contains information about each of the users. The information in the UADS is used to regulate
access to the system. SYSI.BRODCAST can contain notices and mail for aU userids which are
defined to it.

The syntax of the ACCOUNT command is:

ACCOUNT

The SYSI. UADS data set must be allocated as SHR prior to using the ACCOUNT
command. You cannot accomplish any work with the ACCOUNT command until you use a
subcommand to define the operation that you want to perform. The subcommands and the
operations that they define are:
ADD Add new entries to the UADS and SYS I.BRODCAST; add new data to existing entries.
CHANGE Change data in specified fields of UADS entries; change userids in SYS1 .BRODCAST.
DELETE Delete entrics or parts of entries from the DADS; delete userids from SYS1. BRODCAST.
END Terminate the ACCOUNT command.
HELP Obtain help from the system (not available (or batch jobs),
LIST Display the contents of an entry in the UADS.
LlSTIDS Display the user identifications for all entries.
SYNC Build a new SVSI.BRODCAST data set and synchronize it with the UADS.

.. OS/VSZ Syst... P
...
."'_
... _ , LIIonwy: TSO
'.
ADD Subcommand of ACCOUNT

Use the ADD subcommand to create new userids for prospective users of TSO. As you create
a new userid, a corresponding entry is created in the UADS and SYS1.BRODCAST for that
user. For each Dew userid that you create, the system builds a "typical" user profile in the user
profile table (UPT) for that user.

You can also use ADD to add additional data to an existing entry in the UADS. Do not use
ADD to change any existing data in a UADS entry; use the CHANGE subcommand instead.

When adding a new entry to the UADS, you can also select the following options for the
new user:

• The region size that he can request at logon

• The authority to use the ACCOUNT command

• The authority to use the OPERATOR command

• The authority to use the SUBMIT, STATUS, CANCEL, and OUTPUT commands

• The authority to specify performance groups at logon

• The authority to specify dynamic aUocation requests for volume mounting

• The authority to specify remote work stations for SYSOUT data sets

• The installation defined data to be added to the entry

When making additions to the VADS, ADD ensures that no duplications will exist in the
UADS structure. U an item to be added is found to already exist at the specified location in an
entry. no addition takes place.

ADD S
SoIo
_ ,_..
-4 ol ACCOUNT 45
The syntax of the ADD subcommand of ACCOUNT is:

{�D} ( {US;rid} [pa: SWOrd [ ac;t-nmbr [prOC] ] ] )


[DATA [[ [paS :WOrd] aCC;-nmbr ] proc)] [SIZE (rgn-size) ] [UNIT(name)]
[ ACCT ] [DEST(id) ] [ JCL ] [MAXSIZE (regiOn) ] [MOUNT ]

[ )]
NOACCT NODEST NOJCL NOLIM NOMOUNT

PERFORM[perf-grOup[ {�} perf-grOup ] • • •

[ OPER ] NOPERFORM
NOOPER
[USEROATA(data) ]
The first parameter (enclosed within parentheses) is a positional parameter; all others are keyword
parameters.
To create a new entry in the UAOS and SYS1.BRODCAST. specify:
A (usefid password or * acct-nmbr or - proc)
When you create a new entry. an asterisk (.) indicates a nuU field; that is. passwords and/or account
numbers are not supported under that werid. Any subsequent explicit specification in either the
positional or DATA parameter of password and/or acct-nmbr for that userid is invalid.
If you create a new entry with explicit specification in the positional parameter for password
and/or acct-nmbr, the specification of an asterisk (.) for the cofTCSpondioa: item in the DATA
parameter is invalid.
If you specify less than four items in the positional parameter, information is to be added to an
existing entry (or entries); and you must specify those items omitted from the positional parameter in
the OATA parameter.
The specification of SIZE and/or UNIT is valid only if you specify proc in either the positional or
DATA parameter.

userid
the user identification of a new entry in the UADS and SYSI.BRODCAST or an existing
entry in the UADS to whicb information is to be added. (Note: If the specified userid
already exists in SYSI.BRODCAST, all messages for tbat userid are deleted; the userid is
not.)

value: 1-7 alphameric cbaracters, beginning with an alpbabctic or a nationa[ cbaracter

information is to be added to all existing entries in the UADS

paJJworti
a password that is part of a new entry or a password under the indicated userid(s) in an
existing entry (or entries)

value: 1-8 alpbameric cbaracters

.,; OS/VSl Syot•• Pr


"""
... _
.... , lbory: TSO
·.

a null field in a new entry. or passwords are not supported under the indicated userid(s) in
an existing entry (or entries), or all the passwords under the indicated userid(s) in an
existing entry (or entries)

accl-nmbr
an account number that is part of a new entry or an account number under the indicated
password(s) under the tndicated userid(s) in an existing entry (or entries)

value: 1-40 alphameric characters, not containing a blank, tab, quotation mark,
apostrophe, comma, semicolon, or line control character

a null field in a new entry. or account numbers are not supported under the indicated
userid(s) in an existing entry (or entries), or all the account numbers under the indicated
password(s) under the indicated userid(s) in an existing entry (or entries)

proc
a procedure name that is part of a new entry

value: 1-8 alphameric characters, beginning with an alphabetic character

DATA
infonnation is to be added to an existing entry (or entries) in the UADS

password
a password or list of passwords to be added to an existing entry (or entries)

value: 1-8 alphameric characters

passwords are not supported under the indicated userid(s)

acct-nmbr
an account number or list of account numbers to be added to an existing entry (or
entries). No more than 255 identical account numbers may exist under any one userid.

value: 1-40 alphameric characters, not containing a blank, tab, quotation mark,
apostrophe. comma, semicolon, or line control character

account numbers are not supported under the indicated userid(s)

proc
a procedure name or list of procedure names to be added to an existing entry (or
entries). No more than 255 identical procedure names may exist under any one userid.

value: 1·8 alphameric characters, beginning with an alphabetic character

When you specify a list of passwords and/or account numbers and procedure names,
separate each item in the list by a comma or a blank and enclose each list within a separate set
of parentheses embedded within the set required for the DATA parameter. If you specify only
a list of procedure names, the embedded parentheses are optional.

..
...
ADD S
S IH
,. ....... of ACCOUNT
,, .7
S[ZE
the minimum region size that will be assigned to a procedure if the user does not specify a
region size at logon. If you do not specify SIZE or specify S[ZE(O), the minimum region
size available at logon is assigned to the user. If you specify in SIZE a minimum region size
that is larger than MAXSIZE for the userid, SIZE is set equal to MAXSIZE. You can
specify a SIZE parameter for each unique combination of password, account number,
procedure name under a userid.

rgn·size
number of 1024�byte units of virtual storage for this user's private area

value: an integer in the range of O�65535

UNIT
predefined specification of device use by a procedure. (Data sets allocated via the catalog
are an exception. See the ALLOCATE command in the 1'80 Command Language Reference.)
You can specify a UNIT parameter for each unique combination of password, account
number. procedure name under a userid.

name
the name of a device or group of devices (for example, SYSDA)

value: 1-8 alphameric characters,

• Use the following parameters only when you create a new entry in the VADS.

ACcr
the user is authorized to Use the ACCOUNT command

NOACcr
the user is not authorized to use the ACCOUNT command

DEST
SYSOUT data sets, dynamically allocated by the user, are to be routed to a default
destination. By allowing SYSour to be processed at the .default destination, the user can
eliminate ROUTE cards from his submitted batch jobs. The default destination can be
overridden by tbe user through the use of the ALLOCATE, FREE, and other commands.

id
the default destination (remote work station)

value: t -7 alphameric characters, beginning with an alphabetic or a national character

NODEST
the user must explicitly route his SYSOUT data sets for processing

JCL
tbe user is authorized to use the SUBMIT, STATUS, CANCEL, and OUTPUT commands

NOJCL
the user is not authorized to use the named commands

MAXS[ZE
the maximum region size that the user may request at logon. If you do not specify
MAXSIZE or specify MAXSIZE-O, NOLIM is assumed.

.. OS/VSl Sy..... ...... LIbnory: TSO


region
the number of l024-byte units of virtual storage for the user's private area

value: an integer in the range of 0-65535

NOLIM
the user is not restricted to a maximum region size at logon

MOUNT
dynamic allocation requests for this userid are authorized to cause volume mounting as
necessary. (Note: The volume request can be either explicit (for example, when the
ALLOCATE command is issued) or implicit (for example, with commands that cause
temporary space to be allocated).) No message is sent to the user indicating that operator
action has been requested at the time the volume is mounted. The user will sit in a "locked
out" condition at the terminal until the operator responds to the request. Therefore, the user
should send a message to the operator prior to issuing the command requesting a particular
volume.

NOMOUNT
dynamic allocation requests for this userid are not authorized to cause volume mounting

OPER
the user is authorized to use the OPERATOR command

NOOPER
the user is not authorized to use the OPERATOR command

PERFORM
the user is authorized to explicitly request a pedormance group (or groups) at logon

perf-group
the identification of the performance group (or groups)

value: an integer in the range of 1 -255

NOPERFORM
an installation-defined pedormance group will be assigned to the user at logon. (The user is
not authorized to explicitly request a pedormance group. )

USERDATA
instaUation-<lefined data is to be added under this userid. The two-byte field in the UADS is
the hexadecimal representation of the contents of data. The meaning of the field is defined
by the user.

data
the data to be added

value: 4 EBCDIC characters

Example 1

OpuvtltNI: Add a new entry to the UADS and SYS1.BRODCAST.


add (warner1 xaybzc
size(BO
maxsize ( 1 S 0 ) ) mylog ) ) noacct
32058
unit(sysda nooper jcl -
userd�ta( 1 fa* ) perform ( 1 ,5,6,2,Q)
dest(deptout) mount
llcc
ADD Su WiDd of ACCOUNT .9
Example 2

o,..iotI: Add a new password, account number, and procedure name to an existing entry in
the UADS. Also include the region size requirements for the procedure.
add (warnerl) data(mz3tii 711 6 1 66 amabala) size(20)
Example 3

OpnrdiOlf: Continuing Example 2, add a new account number and procedure name to an
existing entry in the UADS.
add (warner' mz3tii) data(288104 mylog) size( 114) unit(sysda)
Example 4

{)ptrtItiott: Add a new procedure name, and the region size requirements for it, to all entries
in the UADS.
add ( * • • ) data(mcqlg) size (73)
Example S

Opt!lYlliol:l Add a new account number and procedure name to all structures under an existing
entry in the UADS.

add (warner' *) data(5707571 logproc) size( 100)

50 .. ... .....- iJbrvy: TSO


OS/VSl Sy
CHANGE Subcommand of ACCOUNT

Use the CHANGE subcommand to cbange existing fields of data within entries in the UADS
and userids in SYS l.BRODCAST.

When making changes to the UADS, CHANGE ensures that no identical (redundant) paths
will exist in the UADS structure after the change operation. On the other hand, if an
'impossible merge' situation arises (identical procedure names associated with different data),
CHANGE cannot determine which data to retain. Therefore, it terminates processing of the
current structure and issues an explanatory message.

The syntax of the CHANGE subcommand of ACCOUNT is:

[ DATA {password
USerid } �
(. ����-nmbr )
[SIZE( rgn-size l) [UNIT( name l)

NODESTid l] [JCL
NOACCTJ fDEST(
[ACCT NQJCLJ [MAXSIZE( NOMOUNT ]
NOLIM region l] [MOUNT
[OPER ] [ PERFORM(
NOOPER NOPERFORM perf-group [ {�} perf-group . . . l ] ]

[USERDATA( data l)

The first parameter (enclosed within parentheses) is a positional parameter; all others are keyword
parameters.
To change a userid in the UADS and SYSI.BRODCAST, explicitly specify usefUl as the only item
in the positional "P aramcter and specify userid in the DATA parameter. (The specifications c( -) or
c(-) data (userid) are invalid.)
To change password(s), account number(s), or procedure name(s) in an entry (or entries) in the
UADS, specify the item (either explicitly or as an asterisk (-» as the final item in the positional
parameter, and specify the corresponding item in the DATA parameter.
If you created (with the ADD subcommand) an entry in the VADS with an asterisk ( -) specification
for password and/or account number, an explicit specification in either the positional or DATA
parameter of password and/or accl-nmbr for the particular userid is invalid.
If you change MAXSIZE for a userid. the specification of a region size smaller than an existing SIZE
for any procedure under that userid is invalid.
The specification of SIZE and/or UNIT is valid only if you specify proc or - in the positional
parameter. or proc in the DATA parameter.
If you specify in the SIZE parameter for a procedure a minimum region size larger than MAXSIZE
for the userid. SIZE is set equaJ to MAXSIZE.

userid
the user identification is the UADS and SYSI.BRODCAST to be changed or the UADS
entry to be changed

CHANGE s.I:Icm encl of ACCOUNT 51


value: 1 7 alphameric characters, beginning with an alphabetic or a national character

Note: In SYSl .BRODCAST. the effect of

c userid 1 data (userid 2 )


is as follows:
If userid 1 and· userld1 do not exist, add userid 2 as a new entry.
If userid t exists and userid 1 does not, delete userid t .. add userid 1 as a new entry; chain
messages for userid I to userid 1 .
If userid t and userid 1 both exist, delete userUl 1 " chain messages for userid 1 to userid 1 .

aU entries in the UADS are to be changed

password
the password to be changed or the password under the indicated userid(s)

value: 1 �8 alphameric characters

all passwords are to be changed, or passwords are not supported under the indicated
userid(s). or aU the passwords under the indicated userid(s)

acct-nmbr
the account number to be changed or the account number under the indicated password(s)
under the indicated userid(s)

value: 1-40 alphameric characters, not containing a blank, tab, quotation mark,
apostrophe, comma, semicolon, or line control character

all account numbers are to be changed, or account numbers are not supported under the
indicated userid(s). or aU the account numbers under the indicated password(s) under the
indicated userid(s)

proc
the procedure name to be changed or the requirements of the procedure are to be changed
(indicated by the specification of SIZE and/or UNIT without the specification of DATA)

value: 1-8 alphameric characters, beginning with an alphabetic character

all procedure names are to be changed or the requirements of all procedures in the indicated
entry (or entries) are to be changed (indicated by the specification of SIZE and/or UNIT
without the specification of DATA)

DATA
data is to be changed in an existing entry (or entries)

userid
a user identification to replace an existing userid

value: 1-7 alphameric characters, beginning with an alphabetic or a national character

51 OS/vS2 S,.,.... ...... LIIInry, TSO


password
a password to replace an existing password(s)

value: 1-8 alphameric characters

acct-nmber
an account number to replace an existing account number(s)

value: 1-40 alphameric characters, not containing a blank, tab, quotation mark,
apostrophe, comma, semicolon, or line control character

pro<
a procedure name to replace an existing procedure name(s)

value: 1-8 alphameric characters, beginning with an alphabetic character

SIZE
the minimum region size that will be assigned to a procedure if the user does not specify a
region size at logon. If you do not specify SIZE or specify SIZE(O), the minimum region
size available at logon is assigned to the user. If you specify in SIZE a minimum region size
that a larger than MAXSIZE for the userid, SIZE is set equal to MAXSIZE. You can
specify a SIZE parameter for each unique combination of password, account number,
procedure name under a userid.

rgn-size
number of 1024-byte units of virtual storage for the user's private area

value: an integer in the range of 0-65535

UNIT
predefined specification of device use by a procedure. (Data sets allocated via the catalog
are an exception. See the ALLOCATE command in the TSO Command Lancuqe Reference.)
You can specify a UNIT parameter for each unique combination of password, account
number, procedure name under a userid.

name
the name of a device or group of devices (for example, SYSDA)

value: 1-8 alphameric characters

• Use the following parameters only when you change the attributes of a userid(s). All
attribute changes must be explicitly specified.

ACCT
the user is authorized to use the ACCOUNT command

NOACCT
the user is not authorized to use the ACCOUNT command

DEST
SYSOUT data sets, dynamically allocated by the user, are to be routed to a default
destination. By allowing SYSOUT to be processed at the default destination, the user can
eliminate ROUTE cards from his submitted batch jobs. The default destination can be
overridden by the user through the use of the ALLOCATE, FREE, and other commands.

CHANGE 9IIb IMIMd of ACCOUNT 53


id
the default destination (remote work station)

value: 1-7 alphameric characters, beginning with an alphabetic or a national character

NODEST
the user must explicitly route his SYSOUT data sets for processing

ICL
the user is authorized to use the SUBMIT, STATUS, CANCEL, and OUTPUT commands

NOICL
the user is not authorized to use the named commands

MAXSIZE
the maximum region size that the user may request at logon. If you do not specify
MAXSIZE or specify MAXSIZE�O, NOLIM is assumed

region
the number of l024-byte units of virtual storage for the user's private area

value: an integer in the range of 0-65535

NOLIM
the user is not restricted to a maximum. region size at logon

MOUNT
dynamic allocation requests for this userid are authorized to cause volume mounting as
necessary. (Note: The volume request can be either explicit (for example, when the
ALLOCATE command is issued) or implicit (for example, with commands that cause
temporary space to be allocated),} No message is sent to the user indicating that operator
action has been requested at the time the volume is mounted. The user will sit in a 'locked
out' condition at the terminal until the operator responds to request. Therefore, the user
should send a message to the operator prior to issuing the command requesting a particular
volume.

NOMOUNT
dynamic allocation requests for this userid are not authorized to cause volume mounting

OPER
the user is authorized to use the OPERATOR command

NOOPER
the user is not authorized to use the OPERATOR command

PERFORM
tbe user is authorized to explicitly request a performance group (or groups) at logon

perf-group
the identification of the performance group (or groups)

value: an integer in the range of 1-255

54 OS/VSl S,...... "


"
",
011'
_ _''I
. JJOnoy, TSO
NOPERFORM
an installation-defined performance group will be assigned to the user at logon. (The user is
not authorized to explicitly request a performance group.)

USERDATA
installation-defined data is to be added under this userid. The two-byte field in the UADS is
the hexadecimal representation of the contents of data. The meaning of the field is defined
by the user.

data
the data to be added

value: 4 EBCDIC characters

Example 1

Opmztiolt: Change an account number for an entry in the UADS and authorize the user to
issue the ACCOUNT and OPERATOR commands.
change (slcOS aox3p se2970S) data(2e26705) acct oper
Example 2

O�trJtI",,: Authorize aU users to issue the SUBMIT, CANCEL, STATUS, and OUTPUT
commands.
change ( * ) jel
The asterisk in the first positional parameter position specifies that all user identities are
considered valid for the operation of this subcommand.

Example 3

()pmIt.",: Change the user identification for an entry in the UADS.


change (warner) data(renwar)
Example 4

Opev:ttlotr: Change the name of a procedure for an entry that consists of a user identification,
a procedure name, and attributes (passwords and account numbers are not supported under the
indicated userid).
change ( ja195 * • oldproc) data(newproc)
Example 5

OpaGtiotl: Change the default destination for an entry in the UADS.

change (ceh01 ) dest(rmtl )

.t0
CHANGE s eM of ACCOUNT !!
DELETE Subcommand of ACCOUNT

Use the DELETE subcommand to delete data from the UADS and userids from
SYS I .BRODCAST. Each terminal user has an entry in the UADS; and each entry contains
several items of data. The data that you want to delete may be a part of an existing entry. or
may be an entire existing entry.

The syntax of the DELETE subcommand of ACCOUNT is:

password [{h, } password]


acct-nrnbr W} acct-nrnbrJ . : :
I
[DATA ( )]
proc [{� } proc] . . .
.

The first parameter (enclosed within parentheses) is a positiona1 parameter,


To delete an entire entry in the UADS and a userid (with associated messages) in
SYS1 .BRODCAST, specify:
d(userid)
To delete: aU entries in the UADS and all userids (and aU messages) in SYSl .8RODCAST, specify:
d(*)
When you delete an item in an entry in the UADS, all lower-level items under that item are also
deleted.
When you delete the only password, account number; or procedure name under a userid, the userid
is also deleted.
The explicit specification or the same item in both the positional and DATA parameters is invaJid.
If you created (with the ADD subcommand) an entry in tbe UADS with an asterisk (-) specification
(or password and/or account number, an explicit specification in either the positional or DATA
parameter of password and/or acc/-nmbr for the particular userid s i invalid.

userid
the entry in the UADS and the userid in SYSI .BRODCAST to be deleted or the entry in
the UADS from which data is to be deleted

value: J·7 alphameric characters, beginning with an alphabetic or a national character

aU entries in the UADS and aU userids and aU messages in SYS I . BRODCAST are to be
deleted or some data in all the entries in the VADS is to be deleted

password
tbe password to be deleted or the password under the indicated userid(s)

valUe: J �8 alphameric characters

passwords are Dot supported under the indicated userid

56 OS/VSl System ........--. lJbngy, TSO


acct-nmber
the account number to be deleted or the account number under the indicated password
under the indicated userid(s)

value: 1-40 alphameric characters, not containing a blank:, tab, quotation mark,
apostrophe, comma, semicolon, or line control character

account numbers are not supported under the indicated userid

DATA
data is to be deleted from an existing entry in the UADS

password
the password or list of passwords to be deleted

value: 1 -8 alphameric characters

acct-nmbr
the account number or list of account numbers to be deleted

value: 1-40 alphameric characters, not containing a blank, tab, quotation mark,
apostrophe, comma, semicolon, or line control character

proc
the procedure name or list of procedure names to be deleted

value: 1-8 alphameric characters, beginning with an alphabetic character

Example 1

0pmB1tm: Delete an entire entry from the UADS.


delete (early08 )
Example 1

(}pttrtIitM:
I Delete a procedure name Crom an entry in the UADS having the following
structure.

delete (schrdny egclon 3707656 ) data(procd )


SCHRDNY

TG2A7

PROCA PRoce PRoce PRoeo

ooI
DELETE SooII
....._..
od
·' of Aeeo.t 57
Example 3

OJlBGiitJlf: Delete an account number and all procedure names under that account number
from an entry in the UADS having the following structure.
delete (alpha2 drahcir 32757 )
ALPHA2

PAOCA PRoeo

5& OS/VSl S,..... Pr


P..
...
...._.. 1..IiMuy, TSO
END Subcommand of ACCOUNT

Use the END suheommand to terminate operation of the ACCOUNT command. After
entering the END subcommand, you may enter new commands.

The syntax of the END suheommand of ACCOUNT is:

END
HELP Subcommand of ACCOUNT

Use tbe HELP subcommand to find out bow to use the ACCOUNT subcommands. When you
enter the HELP subcommand, the system responds by printing out explanatory information at
your terminal. You may request:

• A list of available subcommaDds

• An explanation of the function, syntax, and parameters (both positional and keyword) of
a specific subcommand

The HELP subcommand actually causes the system to execute a function of the HELP
command; therefore, you may consult the discussion of the HELP command in TSO Command
Language Reference.

The syntax of the HELP subcommand of ACCOUNT is:

OPERANDS[ ( parm [{� } parmJ ]


subcmd-name [���CTION
SYNTAX . . . 11

ACCOUNT
If you specify HELP with no parameters, a list of available subcommands o(
at your terminal.
is displayed

subcmd-name
the subcommand you want clarified

value: any valid subcommand of ACCOUNT

ALL
a description of the function, syntax, positional parameters, and keyword parameters of
the subcommand is displayed

FUNCTION
a description of the function of the subcommand is displayed

SYNTAX
a description of the proper syntax of the subcommand is displayed

OPERANDS
a description of the positional and keyword parameters of the subcommand is displayed

parm
only a description of the indicated keyword parameter(s) of the subcommand is
displayed
value: any valid keyword parameter of the subcommand

6G OS{VSl s,..... "'''''''011_-'., .....,., TSO


Example 1

Optnlllo.: Have a list of available subcommands displayed at your terminal.


help
Example 2

Operation: Obtain all available information about the ADD subcommand.


h add
Example 3

Optnlllo.: Have, a list of the positional and keyword parameters for the CHANGE
subcommand displayed at your terminal.
h change operands
Example 4

OpertlliOlt: Have a list of the indicated keyword parameters for the ADD subcommand
displayed at your terminal.
h add operands ( data mount userdata)

HELP S
S....
... _ ...
. ..
• d of ACCOUNT 61
UST Subcommand of ACCOUNT

Use the LIST subcommand to display entries in the UADS or to display fields of data from
within particular entries.

The syntax of the LIST subcommand of ACCOUNT is:

The parameter enclosed within parentheses is positional.


If you created (with the ADD subcommand) an entry in the UADS with an asterisk (") specification
for password and/or account number. an explicit specification in the positional parameter of
ptnSword and/or acct-nmbr is invalid.

userid
the userid or the UADS entry to he listed

value: 1·7 alphameric characters. beginning with an alphabetic or a national character

all userids or all UADS entries are to he listed

password
the password to he listed or the password under the indicated userid(s)

value: 1-8 alphameric characters

all passwords are to he listed, or passwords are not supported under the indicated userid(s),
or all the passwords under the indicated userid(s)

accJ-nmbr
the account number to be listed or the account number under the indicated password(s)
under the indicated userid(s)

value: 1-40 alphameric characters, not containing a blank, tab, quotation mark,
apostrophe, comma, senticoloD, or line control character

aU account numbers are to be listed, or account numbers are not supported under the
indicated userid(s), or all the account numbers under the indicated password(s) under the
indicated userid(s)

proc
the procedure Dame to he listed

value: 1-8 alphameriC characters, beginning with an alphabetic character

all procedure names are to be listed

61 OS/vSZ System PliOP •i �: TSO


Implicit specifications:

• The specification of L (userid) implies L (userid • • • )


• The specification of L (userid password) implies L (userid password • )

• The specification of L (userid password acct-nmbr) implies


L (userid password acct-nmbr .)

The LIST processor generates the necessary asterisks and that information is also listed.

Example 1

O!"trJliOlf: List the contents of the UADS.


list ( * )

Example 2

OP'trJtiOlf: List all of a particular entry in the UADS.


list , wrrid )

Example 3

OpBGtiOlf: List aU of the account numbers under a specific password for a particular entry.
list ( wrrid roolf * )

Example 4

OpBGtiOlf: List all references to a specifiC procedure for all entries.


1 ' * * * procO l )

LIST s
..
.."
.......
" ..
... of ACCOUNT 63
USTIDS Subcommand of ACCOUNT

Use tbe LISTIDS subcommand to bave a list of the user identifications in tbe UADS displayed
at your terminal.
The syntax of the LISTIDS subcommand of ACCOUNT is:

{ LlST'DS
LIST'
}

Example 1

OpmBlOfl: List all user identifications in the UADS.


listids

� OS/vS2 System Plop 52 U...,.: TSO


SYNC Subcommand of ACCOUNT

When the VADS is created, use the SYNC subcommand to build a new SYS1 .BRODCAST
data set and synchronize it with the VADS. (All userids from the VADS are entered into
SYS1.BRODCAST.)

If you use SYNC when the VADS exists, all messages (MAIL) are deleted from
SYS1.BRODCAST.

SYNC also formats the NOTICES section of SYS1 .BRODCAST to reserve room for the
maximum number of messages. (The maximum number of messages is specified at system
generation in the SCHEDULR macro.)

The syntax of the SYNC subcommand of ACCOUNT is:

SYNC

..
.
SYNC s .
oe
,__• of ACCOUNT 65
OPERATOR Command

Use the OPERATOR command (along with its subcommands) to regulate and maintain 1'80
from a terminal. The authority to use OPERATOR is normally given to personnel responsible
for system operation. When an entry is created (or changed) in the UADS. OPER is specified
for the userid.

The OPERATOR command is fully supported only for tenninals that have the
transmit-interruption capability; that is, this command is supported only for those tenninals for
which the BREAK parameter of the TERMINAL command is valid.

The syntax of the OPERATOR command is:

{ OPERATOR
OPER
}
The OPERATOR command, through the use of its subcommands, allows the tenninal user
to control TSO as follows:
CANCEL Cancel a terminal session.
DISPLAY Display the number of TSO uscrs. the number of batch jobs, the TSO job messages that
are awaiting a reply from the system operator, the time of day and the date, and summary
or detailed information about SLIP traps.
END Terminate the OPERATOR command (thereby removing the user's terminal from
OPERATOR mode).
HELP Get a list of the subcommands of the OPERATOR command. along with the function,
syntax, and parameters of the subcommand!.
MONITOR Monitor both terminal and background job activities within the system. Informational
messages will be displayed.
SEND Send a message to other terminal users or operators.
SLIP Control SLIP/PER (serviceability level indication processing/program event recording).
STOPMN Terminate the monitoring operations of the MONITOR subcommand; the display of
information messages at the user's terminal will be stopped.

" OS/VSl Sy..... P


...,
...
o ...._I.
, I.anory, TSO
CANCEL Subcommand of OPERATOR

Use the CANCEL subcommand to terminate the current activities of a terminal user. When
you use the CANCEL command to terminate a tenninal session, accounting information will
be presented to the user.

The syntax of the CANCEL subcommand of OPERATOR is:

{gANCEL } U=userid [, DUMP]


u
a terminal session is to be terminated

userid
the user identification of the time-sharing user whose tenninal session you are terminating

value: 1·7 alphameric characters, beginning with an alphabetic or a national character

DUMP
an abnormal-end·of-job storage dump is taken. (The dump is printed on the system
output device.)

Example 1

Opl!lVlfiolt: Terminate a user's terminal session with a dump.


c u�slcid, dump

CANCEL S
.bc ..
Oll .... or OPERATOR 67
DISPLAY Subcommand of OPERATOR

Use the DISPLAY subcommand to obtain a listing of:

• The number of batch jobs executing


• The messages from time sharing jobs that are awaiting replies from an operator
• The time of day and the date
• Summary or detailed information about SLIP traps

The syntax of the DISPLAY subcommand of OPERATOR is:

{{�OBS}
TSLIP [=xxxx]
TS IST
�t ]
}
T
the local time of day and the date are displayed

SLIP
summary information about aU the SLIP traps in the system is displayed. (The information
consists of the trap ids and whether a trap is enabled or disabled.)

XXX>:
detailed information about the SLIP trap identified by xxxx is displayed. (See the SLIP
subcommand for details about xxxx. )

value: 1�4 alphameric characters

TS
the total number of TSO users currently logged on the system is displayed. In addition, if
TSO/VTAM is ruorting, the number of users logged on, and the maximum Dumber allowed
to be logged on, under TSO/VTAM are displayed.

LIST or L
a list of TSO userids currently logged on the sytem is displayed

R
the identification numbers of messages awaiting replies, the unit addresses of devices waiting
for mount requests to be fulfilled, and the unit addresses of devices waiting for operator
intervention are displayed

LIST or L
the text of all outstanding requests along with the message identification is displayed. If
the message text is greater than 65 characters and the 66th character is not a blank. the
text is truncated at the last blank preceding the 65th character.

JOBS or J
the number of active batch jobs (MOUNT commands in execution are treated as jobs),
started tasks, and active initiators are displayed

.. OS/VSl 5y..... "'- U""", , TSO


LIST or L
the jobnames, stepname, procedure stepname, and V-R region boundaries are displayed

Example 1

OJ1MlllOll: Display the number of, and a list of, the TSO users currently logged on.
d ts , l ist

Example 2

OJ1MlllOll: Display the time of day and the date.


d t

Example 3

OpmUiOll: Display detailed information about SLIP trap 502X.


d s l ip=502x

DISPLAY SuIIeo.....ud of OPERATOR '9


END Subcommand of OPERATOR

Use the END subcommand to terminate operation of the OPERATOR command. After
entering the END subcommand, you may enter new commands.

The syntax of the END subcommand of OPERATOR is:

END

70 . OS/VSl s,..... ....... l.Ibnuy, TSO


HELP Subcommand of OPERATOR

Use the HELP subcommand to find out how to use the OPERATOR subcommands. When
you enter the HELP subcommand, the system responds by printing out explanatory
infonnation at your terminal. You may request:

• A list of available subcommands

• An explanation of the function, syntax, and parameters of a specific subcommand

The HELP subcommand actually causes the system to execute a function of the HELP
command; therefore, you may consult the discussion of the HELP command in TSO Command
Language Reference, if you desire more detailed information.

The syntax of the HELP subcommand of OPERATOR is:

]
subcmd-name t
[� �CTION

[{�} }
SYNTAX

OPERANDS ( ( parm parm • . 11

If you specify HELP with no parameters, a list of available subcommands of OPERATOR is


displayed at your terminaL

subcmd-name
the subcommand you want clarified

value: any valid subcommand of OPERATOR

ALL
a description of the function, syntax, positional parameter, and keyword parameters of
the subcommand is displayed

FUNCTION
a description of the function of the subcommand is displayed

SYNTAX
a description of the proper syntax of the subcommand is displayed

OPERANDS
a description of the positional and keyword parameters of the subcommand is displayed

parm
a description of only the indicated keyword parameter( s) of the subcommand is
displayed

value: any valid keyword parameter of the subcommand

HELP Subeommutd of OPERATOR 71


Example 1

OJNlflliotl: Have a list of a�ailable subcommand. displayed at your terminal.


help
Example 2

Op#l'llliolt: Obtain available information about a particular subcommand.


h monitor
Example 3

OJNlflliotl: Have a list of the parameters for a particular subcommand displayed at your
terminal.
h display operands

71 OS/VSl Syst.m ....... LIbnry, 1'50


MONITOR Subcommand of OPERATOR

Use the MONITOR subcommand to monitor terminal activities and job activities within the
system. Informational messages will be displayed. The content of the messages will pertain to
tbe type of information indicated by the parameter included with the MONITOR subcommand.
The system will continue to issue these informational messages until halted by a STOPMN
subcommand or until you terminate tbe OPERATOR command.

The syntax of tbe MONITOR subcommand of OPERATOR is:

JOBNAMES
the name of each job is displayed both when the job starts and terminates, and unit record
allocation is displayed when the job step starts. If a job terminates abnormally. the jobname
appears in the diagnostic message; the message "jobname ENDED" does not appear.

SESS
the userid is displayed whenever a terminal session is initiated or terminated. If a terminal
session terminates abnormally. the userid appears in the diagnostic message. If a tenninal
session is canceled, the message "user LOGGED OFF" does not appear.

T
tbe local time of day is displayed in the following format:

hh.mm.ss

The variable are:

hh-hours (00-23)
mm-minutes (00-59)
ss-seconds (00-59)

Note: After the initial specification (by any user) of the T parameter in the MONITOR
subcommand, all subsequent users of MONITOR receive the time of day at their terminals,
whether or not they specify T.

STATUS
the names and volume serial numbers of data sets with dispositions of KEEP, CATLG, or
UNCATLG are displayed whenever the data sets are freed

Example 1

{)pt:tvtitm: Have the system notify you whenever a terminal session begins or' ends.
monitor sess

Example 2

Op."ltitHf: Have displayed at your terminal the name of each job wben the job starts and
when it terminates. Also have the time displayed with the johname.
ron jobname s ., t

ui!00 ...... of OPERATOR


MONITOR S 73
SEND Subcommand of OPERATOR

Use the SEND subcommand to send a message to one or more terminal users, to save a
message in the SYSI.BRODCAST data set. to list. delete. or send a specified message from
the notices section of SYSl .BRODCAST. and to list all messages in the notices section of
SYS I.BRODCAST. Messages sent via the SEND subcommand will have the characters OPER
appended to the message text before it is directed to a user terminal.

Messages are also sent to the console operator and other terminals in operator mode. The
characters specified in the eN parameter are appended to a message sent to a console
operator.

The syntax of the SEND subcommand of OPERATOR is:

LIST
'm.g' } [,ALL >J [.LOGON
,NOW
USER=<userid[IUSeridJ . . . ,SAVE
]}
{msg-nmbr
,OPERATOR=rte-code \
.BRDCST
,CN=console-id
msg-nmbr · [,LIST
.DELETE ]
LIST
a list of all messages stored in the notices section of SYSI .BRODCAST is displayed at your
terminal. (Each message displayed is preceded by a system-assigned number.)

�nug'
the message to be sent. Enclose the text of the message within single quotation marks, and
ensure that it is a one-line message. If you want a quotation mark as part of the message,
enter two quotation marks in the original text.

value: 1 - 1 1 5 alphameric characters

msg-nmbr
the identification number of a message in the notices section of SYS1.BRODCAST. (The
identification number is systemMassigned.) If you specify msg-nmbr with no other operands,
the associated message in the notices section is sent.

value: an integer

ALL
the message is to be sent to all terminal users.

USER
the message is to be sent to the indicated terminal user(s)

userid
the user identification of one or more terminal users who are to receive the message.
(The maximum number of userids allowed is 20.)

value: 1·7 alphameric characters, beginning with an alphabetic or a national character

7. OS/VSl S,..... ......-- Uhvy, TSO


LOGON
the message is sent immediately to the terminal user(s) logged on and accepting
messages; otherwise,

users logged on, but not receiving messages, receive it upon requesting messages.

if you specify ALL, the message is stored in the notices section of


SYSI.BRODCAST; sent to every user as he logs on and requests messages; and
retained in SYSI .BRODCAST until you delete it.

if you specify USER, the message is stored in the mail section of


SYS1 .BRODCAST; sent to each indicated user as he logs on and requests
messages; and deleted by the system after all indicated users have received it.

NOW
the message is sent immediately

if you specify ALL, the message is sent to all terminal users currently logged on,
and then deleted by the system

if you specify USER, the message is sent to the indicated terminal user(s) currently
logged on. If any indicated terminal user is not logged on, you are notified; and the
system deletes the message.

SAVE
the message is stored in the appropriate section of SYS1 .BRODCAST. The message is
not sent immediately. even to those terminal users currently logged on and receiving
messages.

if you specify ALL, the message is stored in the notices section of


SYSI.BRODCAST, and assigned an identification number by the system. The
identification number is displayed at your terminal. The message is sent to terminal
users as they log on and request messages; and retained in SYS1 .BRODCAST until
you delete it.

if you specify USER, the message is stored in the mail section of


SYS 1.BRODCAST, and sent to the indicated terminal user(s) as they log on and
request messages. After the last indicated user has received the message, it is
deleted by the system.

BRDCST
the message is queued to all active operator consoles

eN
the message is queued to a particular operator console

console-id
the identification number of an operator console. If you specify eN=0 or an invalid
id. the message is sent to the master console. (You can use the console configuration
message issued at IPL for reference to determine the valid and appropriate ids.)
value: an integer in the range of 0-99

OPERATOR
the message is queued to the console associated with the routing code

SEND _....... of OPERATOR 75


fie-code
the identification number of a functional console

value: as shown in the following table


Routine Code Coosole
I Master console action
2 Master console information
3 Tape pool
4 Direct access pool
S Tape library
6 Disk library
7 Unit record pool
8 Teleprocessing control
9 System security
10 System error/maintenance
11 Programmer information
12 Emulators
13 Reserved for your use
14 Reserved (or your use
IS Reserved for your use
16 Reserved for future expansion

DELETE
the message identified by msg-nmbr is deleted from the notices section of
SYS 1.BRODCAST

LIST
the message identified by msg-nmbr is displayed at your terminal

Example 1

O,..ioI:I Send a message to all terminal users currently logged on.


send 'tso to shut down at 9:55 p.m. est 9/14/70'
Example 2

(}pt!Ntiotl: Send a message to two particular terminal users currently logged on.
send 'your acct no. invalid after this session' ,user=(heus75,jul65)
Example 3

Op.riIitM: Delete a message.


send 8, delete
Example 4

Op.riIitM: Have aU messages displayed at your terminal.


send list

76 OS/vSZ Sy..... ..."


...
....
.. _ , 1JIoowy, TSO
••
SLIP Subcommand of OPERATOR

Use the SLIP subcommand to control SLIP (serviceability level indication processing), a
diagnostic aid designed to intercept or trap certain system events. You can indicate what kinds
of events you want trapped and what the system should do when these events occur.

The kinds of events you can intercept are:

Program event recording (PER) events

Instruction fetch PER interruption

Successful branch PER interruption

Storage alteration PER interruption

• Error events

Paging error

Dynamic address translation error

Machine check associated software error

Address space termination error

SVC 13 issued by a task

SVC error

Program check interruption

Restart interruption

When one of these events occurs, you can take one of the following actions:

• Request an SVC dump tailored specifically to your needs

• Cause a GTF trace record to be written

• Suppress dumps (for error events only)

• Ignore the event

The PER and error events you can trap are quite general, and you probably do not want to
take one of those actions each time such an event occurs. To Darrow the scope of SLIP
processing, qualify the event by specifying exactly what state the system must be in when the
error or PER event happens for the action to occur. The system checks each specified
condition to see if it corresponds to the system condition at the time of the error or PER
interruption. The conditions you specify serve as filters to screen out those events you are not
interested in. When conditions specified are the same as those in the system, a match occurs.

When conditions specified are not the same as those in the system, a no-match occurs. Only
when all the conditions you specify match will your action be taken. Among the conditions
you can specify are:

• The type of error the system is processing

The system mode at the time of the error or PER interruption

• A user or system completion code associated with the error

The name of a job that must be in control at the time of the error or PER interruption

SLIP Subcommand of OPERATOR 77


• The name of the job step program that must be in control at the time of the error or
PER interruption

• The module name or address range where the error or PER interruption must occur

• The address space that must be in control at the time of the error or PER interruption

• The contents of specific storage locations and/or registers at the time of the error or
interruption

IJ you do not specify a particular condition, then the system makes no checks for that
condition.

There are three types of SLIP subcomrnands:

• SLIP SET subcommand defines SLIP traps.

• SLIP MOD subcommand enables or disables previously defined SLIP traps.

• SLIP DEL subcommand deletes previously defined SLIP traps.

Refer to OS/VS2 System Programming Library: Supervisor for more information about the use
of SLIP to intercept software errors. For more information about designing an effective SLIP
trap, sec OS/VS2 System Programming Library: MVS Djagnostic Techniques.

Parameter Relationships
SLIP SET parameters fall into six functional groups: trap-type parameters, event filter
parameters, action related parameters, lrap control parameters, dump and trace tailoring
parameters, and specialized parameters.

The trap-type parameters are IF, SA, and SB. Each defines a specific type of PER
interruption trap. Omitting aU trap-type parameters also has meaning: defines an error
detection (or non-PER) trap.

The event filter parameters are ADDRESS, COMP, DATA, ERRTYP, JOBNAME, JSPGM,
LPAMOD, MODE, PVfMOD, and RANGE. Event filter parameters define the sco!,e of the
event, or events, the trap is to monitor.

The action related parameter is ACTION. The operands of ACTION (IGNORE,


NODUMP, RECOVERY, SVCD, TRACE, and TRDUMP) specify what you want done when
the trap matches.

The four trap control parameters are DISABLE, ENABLE, MATCHLfM, and PRCNTLfM.
They control the operation of the trap by indicating whether the trap is enabled or disabled;
how many times the trap should match and produce the desired action before it is
automatically disabled; or what percentage of the system can be used when monitoring a PER
trap.

The dump tailoring parameters are AS!DLST, LIST, SDATA, and SUMLIST. The trace
tailoring parameter is TRDATA. The parameters enable you to tailor the contents of a dump
or a trace record.

The specialized parameters are DEBUG, END, !D, and RBLEVEL. DEBUG is used to
diagnose a SLIP trap that is apparently not working according to your specifications; it
indicates that you want some trap information recorded each time the trap is checked rather
than each time it matches. END marks the end of a SLIP SET command. ID assigns an
identifier to a trap. RBLEVEL indicates which request block the system is to use for error
detection traps.

78 OS/VSl System Pr� l.Jbnry: TSO


..... ., GC28-0629-3
As updated Mardi 15, 1979
By TNL: GN2I-2971 '0< 5752-864

Indirect Addressing Used with SLIP


Indirect addressing used with SLIP is similar to that used with TSO TEST except:

• unlimited levels of indirection are permitted

• symbols are not allowed

• absolute addresses are not followed by a period

• address modifiers must be hexadecimal

You can use indirect addresses with the following SLIP command parameters: DATA, LIST,
SUMLlST, and TRDATA. The addresses refer to the address space in which the event occurs.
For DATA, SUMLlST, and TRDATA, the storage areas referred to must be paged in; if they
are paged out, they are ignored. For LIST, the storage areas referred to will be paged in if
they are paged out.

The elements of an indirect address are:

1 . a direct address: 1-8 hexadecimal digiis optionally followed by one or more


displacements.

2. a displacement: a plus (+J or minus (-J sign followed by 1-6 hexadecimal digits.

3. a general purpose register: xR where x is an integer in the range 0-15.

4. an indirection indicator or pointer: a percent sign ("). A pointer is always 4 bytes long.

An indirect address is either of tbe following forms:

{direct.addreSS%[%] . . . [ [displacementJ . . . [%[%J .. . J] . . .


}
xR%[%] . . . [[displacementJ . . . [%]%J . . . ]] . . .
The following expressions illustrate some indirect addresses.
1 2C"+4+8+C

Graphically:

location 12C
I r-.

+18
data
2R'+4'

Graphically:

GPR2 h�
1 L'"r----
[ data --,
__--,
+4

SLIP S
S ,_
...
.... ..
.
..
d . of OPERATOR 79
March IS, 1979

SRU+4

Graphically:

GPRS h..,
I

___,
h'r------,
+4 - -i
'--
. d ata

A 1 2U+BU

Graphically:

location A 1 2

I
I I-�_----,
+8 r-----l
'------'I--
�---,
I
I d at a I
Each complete address is composed of two parts: the base and the displacement. The base
is defined as everything except the last displacement. For example, the address
2R%+4%+8+4+6-2 has the following component parts:
2R%+4%+8 + 4 + 6 - 2
�----�----�}�

If a complete address is entered without a final + or - displacement, a +0 is assumed. For


example, 2R%+4% is treated as 2R%+4%+O.

The ·following discussion applies to the LIST, SUMLIST, and TRDATA parameters when
multiple start,end specifications are made.

After entering the first complete address (direct or indirect), you can use a form of
shorthand for subsequent addresses. The first address establishes the base address. Subsequent
addresses are written as plus or minus displacements from the base and are separated by
commas. For example, the following set of addresses

2R% + 4% + 4,2R% + 4% + 7 , 2 R % + 4% + e,2R% + 4% + E

!::
t? $l>

can be written using the shorthand form as

2R% + 4% +4,7,+ e,+ E

t � f: �
tf Q.i � Q.i

80 OS/VS2 System Programr:nma Ubrary: TSO


Graphically:

I GPR2

+4
f---..,.
+4
+7
data } 4 bytes
+B
+E
data } 4 bytes

Note that the shorthand form allows you to use control block offsets directly from the
DebuaIDI llaDdbook without performing any calculations.

The following discussion applies to the DATA parameter when multiple /D'1Ie/ specifications
are made.

After entering the first target address (direct or indirect). you can use a form of shorthand
for subsequent target addresses. The first target address establishes the b... address.
Subsequent target addresses are written as plus or minus displacemonts from the b.... For
example, the follOwing

2R% + 4.EO,A24.2R% + B.NE,B66

i � ;l.� k .# �;;
6 � � .$ �1fI �
o,r <I 0,r <I

can be written using the shorthand form as

2R% + 4,EO,A24, +B,NE,A66

1; �r} .),,� �
� 1; �d- G�

.:!i I Q '"
o 0
tf

However, if you specify the first target as the contents of a general purpose register, the
shorthand form is invalid. For example. the following specification is invalid.
2R,EQ,C12,+6,NE,001
Once the base address is established. subsequent target addresses may include both the
shorthand form and the contents of a genen) purpose register. For example. the following
specification is valid.
2R�+4,NE,Dl ' ,5R,EQ,'5R,+6,GT,Cl0
Parameter Descripdons
The maior positional and keyword parameters are described in alphabetical order. The
subparameters are described under the major parameters in alphabetical order.

ACTION or A
the action that is to occur when a trap matches. H you do Dot specify ACTION,
AGnON.SVCD is assumed.

IGNORE
the system is to resume normal processing when the trap matches

SUP 5
5"" _...
.... ' of OPERATOR 11
NODUMP
the following dumps are suppressed '.

SVC dumps requested by ESTAE and FRRs

all SYSABEND, SYSUDUMP, and SYSMDUMP dumps

Note:

I. When you specify ACTION= NODUMP, ensure that the SLIP trap is specific. Ii the
trap is too general, you might suppress dumps needed for other problems. For
example, if you specify only a system completion code, all dumps for that code are
suppressed. However, if you specify both a completion code and a jobname, other jobs
that abend with that completion code produce dumps.

2.Ii a second error occurs during processing for an event witb ACTION- NODUMP
specified, any dump requested for the second error is also suppressed. You can
determine if a second error occurred by checking both the job output messages and
SYS1.LOGREC output. If either one indicates morc than one abend, a second error
occurred. Ii you need a dump for the second error, disable tbe SLIP trap that specifies
ACTION=NODUMP and rerun the falling job.

RECOVERY
force PER traps to initiate recovery processing for the interrupted process after the specified
action is taken. (System completion code 06F is generated.)

Note: Use the RECOVERY keyword carefully to avoid unexpected results. Before using
RECOVERY, be tboroughly familiar with MVS recovery principles. In particular,
make sure that recovery procedures exist at the point where you are forcing
recovery processing. Know what the recovery routines will do under the
circumstances in which you are forcing recovery processing.

SVCD
scbedule an SVC dump when the trap matches. (Ii an address space is falling and you did
not specify a list of ASIDs to be dumped, SLIP tries to dump the falling address space. Ii
tbe falling address space cannot be dumped, SLIP dumps the current address space.)

TRACE
write or maintain a SLIP GTF trace record when the trap matches. The record may be
written to external storage or maintained in virtual storage according to the GTF options
selected. (For detailed information on GTF (unctions, refer to SPL: Service Aids.) If you do
not specify TRDATA, a SLIP standard trace record is collected wben the trap matcbes.
(For TRACE to be active, GTF with the SLIP option must be active.)

TRDUMP
collect SLIP GTF trace records each time a trap matcbes and schedule an SVC dump wben
the trap is disabled or deleted. If you do not specify TRDATA, a SLIP standard trace
record is collected when tbe trap matcbes. (For TRDUMP to be active, GTF with the SLIP
option must be active.)

TRDATA or TR
tailor the type and contents of a SLIP GTF trace record

STD
collect a standard SLIP GTF tracc record when the trap matches

11 OS/VSl Sy..... l'l


P.
"'
... _
.... . .. Ukuy, TSO
..... 01 GOI-0619-3
At _... M_ 15. 1979
B, TNL: GN�m I f. 5151-864

REGS
collect the contents of the 1 6 GPRs into the SLIP GTF trace record when the trap
matches

Slart,end
collect the contents of the address range, or ranges, into the SLIP GTF trace record
when the trap matches. The address range can be:

I. a virtual address (direct address)

value: 1-8 hexadecimal digits for slarl and end. (The ending address must be greater
than or equal to the starting address.)

2. an indirect address
value: refer to the paragraph 'Indirect Addressing Used with SLIP'. (The ending address
must be greater than or equal to the starting address.)

If the data from the address range (or address ranges) exceeds the foUowing length
restrictions, the trace record is truncated.

• For TRDATA-(STD ....lar1.end[ ..larl.endj .. ) - a maximum of 136 bytes of data (includes a


.

I-byte length field for each address range specified)

• For TRDATA-(STD.REGS,slarl.end[..lar1,endj... ) - a maximum of 7 1 bytes of data


(includes a I-byte length field for each address range specified)

For TRDATA-(REGS. slarl,end[,slar1,endj. . ) - a maximum of 191 bytes of data


.

(includes a I-byte length field for eacb address range specified)

• For TRDATA=(slarl,end["lar1,endj .. ) - a maximum of 256 bytes of data (includes a


I-byte length field for each address range specified)

ASIDLST or AL
the address space, or spaces, to be dumped when the trap matches.

n
an address space identifier. (The maximum number of identifiers allowed is IS.)
value: 1-4 hexadecimal digits. (A value of 0 indicates the current address space. The
value specified must not exceed the maximum value set by your installation.)

LIST or LS
the address range, or ranges, to be included in an SVC dump when the trap matches

start,end
the starting and ending addresses. The address range can be:

1 . a virtual address (direct adchess)

value: 1 -8 hexadecimal digits for start and end. (The ending address must be greater
than or equal to the starting address.)

2. an indirect address

value: refer to the paragraph 'Indirect Addressing Used with SLIP'. (The ending address
must be greater than or equal to the starting address.)

Two error conditions may arise when using LIST. The first involves the resolution of an
indirect address, U, for any reason, an indirect address cannot be converted to a direct address
(for example, a page fault occurs while retrieving a pointer or registers are unavailable for

SLIP Sub
co•••geI or OPERATOR 83
..... of GC1II-G619·]
At ........ . M_ 15, 1979
By TNL: GN:z3.197. ro< 5151-860

conversion), the characters ·RC-4· are dumped instead of the address range requested to
indicate that the address pair was Dot successfully converted. The second condition occurs

when a pair of indirect addresses are successfully converted but the second address (ending
address) is less than the first address (starting address) of Ihe pair. The characters 'Al >A2'
are dumped instead of the address range requested (and SDUMP is prevenled from abending).

SDATA or so
the system control information to be included in an SVC or summary dump when the trap
matches

83.0 OS/vSl S,lte. Pr


..."
...
....
_. UInry: TSO
March IS, t 979

SLIP Subcommand of OPERATOR 83.i


Pace of GC28-0629-J
As updated March 15. 197'
By 'tNL: GNl8-297. (or 5752-864

option
an area of storage or type of dump

value: as indicated in the following list:


ALLPSA - prdix storage area for all CPUs
CSA - common storage area
LPA - link pack area
LSQA - local system queue area
NOALLPSA or NOALl - not ALLPSA
NOSQA - not SQA
NOSUMDUMP or NOSUM - not SUMDUMP
NUC - resident nucleus
PSA - prefix storage area of dumping CPU
RGN - entire private area
SQA - system queue area
SUMDUMP or SUM - summary dump (unction
SWA - scheduler work area
TRT - GTF or supervisor trace data

• For ACTlON=SVCD, if SDATA is not specified, the foUowing is assumed:


SDATA=(ALLPSA,CSA,LPA,NUC,RGN,SQA,SUM,TRT )
• For ACTlON=TRDUMP, if SDATA is not specified, the foUowing is assumed:
SDATA=( TRT)
If any SDATA options are explicitly specified, any alterations to those options specified
on the CHNGDUMP command are ignored. However, if CHNGDUMP is set with the
NODUMP option, no dump is produced when the trap matches. (For more detailed
information relative to SDATA, CHNGDUMP� and SDUMP. refer to MVS Diagnostic
Techniques.)

SUMLIST or SL
the address range, or ranges, to be included in a summary dump when the trap matches. (If
SDATA=(NOSUMDUMP) is specified, the specification of SUMLIST is invalid.)

start,end
an address range. The address range can be:

t . a virtual address (direct address)

value: 1-8 hexadecimal digits for start and end. (The ending address must be greater
than or equal to the starting address.)

2. an indirect address

value: refer to the paragraph 'Indirect Addressing Used with SLIP'. (The ending address
must be greater than or equal to the starting address.)

Two error conditions may arise when using SUMLIST. The first involves the resolution of
an indirect address. If, for any reason, an indirect address cannot be converted to a direct
address (for example, a page fault occurs while retrieving a pointer or registers are unavailable
for conversion), the characters *RC ... 4* are dumped instead of the address range requested to
indicate that the address pair was not successfully converted. The second condition occurs
when a pair of indirect addresses are successfully converted but the second address (ending
address) is less than the first address (starting address) of the pair. The characters *Al >A2*
are dumped instead of the address range requested (and SDUMP is prevented from abending).

ADDRESS or AD
the event must occur at a virtual address, or within a range of virtual addresses, to satisfy
the match test

... OS/VSI System � Ubrary: TSO


Pace of GCl8-86:z9..3
As updaled March I�, 19'9
By TNL, GN�1971 f... 5752-864

stan
a virtual address ( I-byle range)

SLIP Subcommand of OPE RATOR


.
84.1
March 15, 1979

84.2 OS/VS2 System Programmins Library: TSO


Pate of GC1I-0619-3
As ..teel Mardi 15. 1979
By TNL: GN:za,..2971 for 5752-864

values: 1-8 hexadecimal digits

slarl,end
a virtual address range

value: 1-8 hexadecimal digits for s/art and end (The ending address must be greater
than or equal to the starting address.)

ASID or AS
the event must occur within an address space, or spaces. to satisfy the match test. If you do
not specify ASID for a non-ignore PER trap, PER monitoring is active in all address spaces
unless you limit it by specifying JOBNAME.

id
an address space identifier. (The maximum number of ids allowed is 16.)

value: 1-4 hexadecimal digits. The value specified must not exceed the maximum. value
set by your installation.)

COMP or C
a system or user completion code to be associated with an error. If you specify a set of
codes, the occurrence of any one satisfies the match test.

hhh
a system completion code or a set of system completion codes

value: 1 . 3 hexadecimal digits (a unique cnde)

2. 0-2 hexadecimal digits and 1-3 occurrences of X (a set of codes), valid


specifications - XxX. xXX. xxX. XXx. xXx. Xxx. XXX (For example. X I I
means 0 1 1 . 1 1 1 • ...• F11)

Nolte: H you specify any o f the fonowing system completion codes, the match test always
fails:
1 1A, 12E, 15D,200,212,279, 282,402,42A,57D,6FC,700,72A,AOO,800,X22
Most of the preceding codes occur originally as a program check (OC4) and are converted to
the indicated code by the system. SLIP can detect the original code (OC4). but not the
con...rted code. To specify a program check. use COMP-OC4 or ERRTYP _ PROG. To avoid
satisfying the match test for all program checks, specify a program name, module name, or
other qualifier.

In addition. the specification of 13E or 33E prevents a trap match because those completion
codes occur for any active subtasks associated with a task that is abending. The secondary
abends occur for the purpose of clean-up only and are not detected by SLIP."

Udddd
a user completion code or a set of user completion codes

value: 1 . 4 decimal digits (a unique code)

2. 0-3 decimal digits and 1-4 occurrences of X (a set of codes). valid


specifications -
UdddX UXXXdd UddXd
UddXX UXXXd UXXdX
UdXXX UdXdd UXdXX
UXddd UdXXd UXddX

SLIP S..
..
....
_ ...
. of OPERATOR 85
Pile of GClI-0629�3
As ....ed
.. Marcb I�, 1979
By TNL: GNu..2971 for �7�1-864

Nole: If any user completion code is changed in a user recovery routine with the SETRP
macro instruction, specify the original completion code in the COMP keyword parameter.

85.0 OS/VSl Sy..... "..


...
.......
_ .. Ukuy, TSO
Much 15, 1979

SLIP Subcommand or OPERATOR 85.1


Mardi IS, 197'

DATA or DA
logically compare the contents of a target location to a specified value. The comparison
must be successful to salisfy the match test. (If a DATA= target location is paged out, a no
match is assumed. You are notified by message IEA4 1 3I, and a 'data unavailable' count is
updated in the SCVA. For a PER trap. you are notified only the first time the data is
unavailable. However. the 'data unavailable' count is readily available by displaying the trap
or in the standard portion of a SLIP trace record.)

target
the address of a storage location or a general purpose register (GPR). The target can be:

I . a virtual address (direct address)

value: 1-8 hexadecimal digits

2.a GPR in the form xR

x
a register designation

value: an integer in the range of 0-15

3.an indirect address

value : refer to the paragraph 'Indirect Addressing Used with SLIP'

b
target modifier that indicates where a binary comparison is to start

value: I. an integer in the range of 0-7 (storage localions)

2 . an integer in the range of 0-3 1 (GPRs)

operator
a logical operator

value : as indicated in the foUowing list:


EQ equal
NE not equal
GT · greater than
LT · less than
NG · not greater than (less than or equal to)
NL · not less than (greater than or equal to)

preva/
the data to which the contents of larget are to be compared

value: I . binary digits - maximum length of 8 bits (b specified)


2 . hexadecimal digits -maximum length of 4 bytes (b not specified)

DEBUG
provides infonnation to allow you to determine why a trap you sel is not working as you
expected. (For DEBUG to be active, GTF with the SLIP option must be active.)

Each time the trap is tested a trace record, containing the standard SLIP trace data plus two
bytes of match/no match bit indicators, is written. Each bit corresponds to a possible test
made to determine a match for the trap. If a test is successful, the corresponding indicator is
set to O. If a test is unsuccessful, the corresponding indicator is set to 1 . After the first
unsuccessful test, no further tests are made and aU the remaining indicators are set to O. For

86 OS/VSl System Prog:rammAaa Ubrary: TSO


March IS, .9"

a description of the SLIP DEBUG trace record and the bit indicators, refer to SPL: Deb,,",..
Handbook, Volume 1.

DISABLE or D
a defined SLIP trap is initiaUy disabled

ENABLE or EN
a defined SLIP trap is iniliaUy enabled

END or E
the end of a SLIP command

ERRTYP or ER
an error condition must occur to satisry the matc� test. Ir you specify more than one error
condition, the occurrence of any one satisfies the match test. If you do nol specify
ERRTYP, ALL is asswned.

type
an error condition
value: as indicated in the following list:
ALL all of the following error conditions
ABEND task issued SVC13
DAT dynamic address translation error
MACH software error caused by machine check
MEMTERM abnormal address space termination
POlO paging I/O error
PROG program check interruption
REST restart interruption
SVCERR SVC error (issuing an SVC while holding a lock, executing disabled. or
executing in SRB mode)

ID
an identifier is to be assigned to a trap. If you do not specify ]D, the system assigns a
unique four-character identifier beginning with 000 1 . You are notified of the
system-assigned identifier by message I£E7271.

xxxx
trap identifier
value: 1-4 alphameric characters

IF
monitor an instruction fetch PER trap

JOBNAME or J
the initiated job, started task. or TSO session that must be in control to satisfy the match
test. For PER traps, JOBNAME limits PER monitoring to the address space in which the
specified job runs. If neither JOBNAME nor ASIO is specified for a non-ignore PER trap,
PER monitoring is active in all address spaces in the system

j-name
the ;obname, started task id, or TSO userid. (The jobname is the one specified on the
JOB statement; the started task id is the procname specified on the START command;
the TSO userid is the userid specified on the LOGON command.)

SLIP Subcomo ad of OPERATOR 87


..... of GClI-G619-3
As ..... . � 15, .'"
By TNL, GNl&-1971 to. 5751464

value: 1 . 1-8 alphameric characters, beginning with an alphabetic or a national character


(jobname and started task id)

2. 1-7 alphameric characters, beginning with an alphabetic or a national character


(TSO userid)

JSPGM or JS
the job step program that must be in control to satisfy the match test. If you specify
JSPGM for an error trap and any address space abnormally terminates, a oo--matcb
condition for the trap occurs.

js-name
the job step program name. (This name is the one specified on the EXEC statement in
the PGM=program-nome parameter.)
value: 1-8 alphameric characters, beginning with an alphabetic or a national character

LPAMOD or L
the event must occur within a link pack area load module to satisfy the match test. If start
and end are not specified, the monitored range is the entire module. If only start is
specified, the monitored range is one byte at the offset 'start', If both slart and end are
specified, the monitored range is between the offset 'start' and the offset 'end'.

mod-name
the module name

value: 1-8 alphameric characters

start
the offset into the module (I -byte range)

value: 1-6 hexadecimal digits

start.end
the starting and ending offsets into the module

value: 1-6 hexadecimal digits for Slarr and end. (The value specified for end must be
greater than or equal to the value specified for slart , )

MATCHLlM or ML
a SLIP trap is automatically disabled after the specified number of matches. If you specify
ACTION -SVCD for a PER trap and do not specify MATCHLIM, I is assumed. For all
other traps, if you do not specify MATCHLlM, no limit is assumed; that is, no
MATCHLIM test is made.

When the specified number of trap matches occurs, an enabled trap is disabled and message
IEA4 1 1 1 is issued. If you specified ACTION-TRDUMP, an SVC dump is scheduled.

m
number of trap matches

value: integer in the range of 1-65535

MODE or M
the system must be in a particular mode, or modes, to satisfy the match test. If you do not
specify MODE, ALL,ANY is assumed

II OS/VSl SY.bII PI.... ' C Uiwary: TSO


cond
a system mode

value: as indicated in the following list:

ALL all of the rollowing modes

DIS physically disabled ror I/O and external interruptions


GLOC holding any global lock
GLOCSD holding a global suspend lock
GLOCSP holding a global spin lock
LLOC holding a local lock
LOCK holding any lock
PKEY problem program key (key 8 or higher)
PP problem program
RECV recovery routine in control (RECV is an invalid specification for all PER traps.)
SKEY system key (key 0-7)
SRB SRD mode
SUPER supervisor state
SUPR supervisor control mode (any bit set in PSASUPER)
TCB TeD mode
TYPI type I SVC in control

ANY
any mode specified must occur to satisfy the match test

EVERY
every mode specified must occur to satisfy the match test

PRCNTLlM or PL
the percentage limit of system processing that can be devoted to monitoring PER traps. At
least 33.55 seconds must have elapsed since the first PER interruption before a trap is
disabled because of this Limit. If you do not specify PRCNTLIM for a non-ignore PER trap,
l O is assumed

When the processing limit is surpassed, a non-ignore enabled PER trap is disabled and
message IEA4 1 1 1 is issued. If you specified ACTION-TRDUMP, an SVC dump is
scheduled.

p
the percentage limit

value: an integer in the range of 1-99. (The value computed to test PRCNTLIM is an
approximation. In addition, the value computed is truncated to an integer before
the test is made.)

Note: Use caution in specifying a percentage limit of 99 because no percent limit checking
is performed.

PVTMOD or P
the event must occur within a private area load module to satisfy the match test. If slart
and end are not specified, the monitored range is the entire module. If only start is
specified, the monitored range is one byte at the offset 'start'. If both start and end are
specified, the monitored range is between the offset 'start' and the offset 'end',
If PVTMOD is specifed for an error trap, certain conditions cause the match test to fail
when executing in non task mode.

• local lock not held or obtained prior to the search of the CDE chain

• MEMTERM error

• DAT error

SLIP Subcommand of OPERATOR 89


• an address space fails and SLIP is not currently running in that address space

mod-name
the module name
value: 1 -8 alphameric characters

start
the offset into the module (I -byte range)
value: 1-6 hexadecimal digits

slarl,end
the starting and ending offsets into the module
value: 1-6 hexadecimal digits for slart and end. (The value specified for end must be
greater tban or equal to the value specified for start.)

RANGE or RA
the event must occur at a virtual address, or within a range of virtual addresses, to satisfy
the match test. If you specify IGNORE in the ACTION keyword parameter for a PER
storage alteration trap. the specification of RANGE is invalid.

start
a virtual address (I-byte range)
value: 1-8 hexadecimal digits

start,end
a virtual address range
value: 1-8 hexadecimal digits for start and end. (No test is made to ensure tbat end is
greater than start because tbe specification of a starting address greater than an
ending address is valid. (See IBM System/370 Principles of Operation for detailed
information.)

RBLEVEL or RB
the registers for use in resolving indirect addresses and the PSW for use by LPAMOO.
PVTMOD, ADDRESS, and MODE are taken from a particular RB. (RBLEVEL applies
only to unlocked task mode errors.) If the RB specified by RBLEVEL is not found, a
no-match condition for the trap exists.

ERROR
the PSW is obtained from the RB prior to the SVC 1 3 (ABEND) RB (RB2 in Figure
16). The registers are obtained from the SVC 1 3 RB (RBI in Figure 16).

PREVIOUS
the PSW and registers are obtained from one RB prior to the one used in ERROR. (PSW
from RB3 in Figure 16; registers from RB2 in Figure 16.)

NOTSVRB
the PSW is obtained from the most recent non-SVRB; the registers from the associated
SVRB. (For example in Figure 16, if RB I, RB2, and RB3 are SVRBs, the PSW is
obtained from RB4 and the registers from RB3.)

90 OS/VSl Sy..... Pr"llJ'1U"llllo iJbnry: TSO


SA
monitor a storage alteration PER trap

SB
monitor a successful branch PER trap

SET
define a SLIP trap. If IF, SA, or S8 are not specified, a non-PER trap (error trap) is
defined and monitored.

TCB
RBl RB2 RB3 RB4

L-_----l

H SVC 1 3

Figure 16. RB Structure


H H H,---....J
Example 1

Op<ratiOlf: Setting a SLIP trap using the instruction fetch PER event.
s1 s et , i f , en , action=svcd , r ange= (cd 3 1 0 0 ) , end

Example 2

()p6ation: Setting a SLIP trap using the storage alteration PER event.
s 1 set, sa , en , action=svcd , range� (cd3 1 0 0 , cd 3 0 1 3 ) ,
data: (cd30 1 0 , eq , O O O O O O O O ) , � nd

Example 3

OpmlliOlf: Setting a SLIP trap to obtain a dump with queue elements and control blocks.
s 1 set, id=50cx, a=svcd, comp�x 3 0 , errtyp=abend , j sP9m=comrtn .
sdata= ( sqa , rgn , t r t , 5um) , end

SLIP s.
s ""'
..
.. _ _d of
.. OPERATOR 91
92 OS/VSl System � Ubnry: TSO
""

"'5
;

Di :

.:-.�

�I , f;-;
1
,

!
Ii ! I Ii 1
'I 'I
i i! -.!
!

'i
IP
=

'ITI
" - ­
-�

. . .

� I
i I
N OS/vD s,.- ..
..
. _
. ... lAnI7: TIO

� �

'i 'I
,� ..l
iU il! !�
,
lid
-=
-

�I
j

'!

i .

':;::
"

-. 'j
� .:,'i

!
!
!

I
" OS/VSl Sy..... __ ....,....,. TSO
• • • •

""
""
...!

1
H l
Li
.
g -

'I 'I
, ,
. ..

a �
! !
.....::.... ...::...

'! T!
-.! - -
.

f

-
iii

.�
.
g
.
!

::;::

'I
i

I " ;
97.0 OS/VSl Sy... m Pro,..mmin. Ubruy: TSO
This page intentionally left blank.

SUP Subcommand 01 OPERATOR 97.1


DEL
delete an existing SLIP trap, or traps. (If TRDUMP is active, an SVC dump is scheduled. )

MOD
change the status of an existing SLIP trap, or traps

ENABLE or EN
a disabled trap. or traps, is enabled

DISABLE or D
an enabled trap. or traps, is disabled, (If TRDUMP is active, an SVC dump is
scheduled.)

ALL
the status of all traps is changed or all traps 3re deleted.

ID
the status of ! trap is changed or .! trap is deleted

=
trap identifier

value: 1 �4 alphameric characters

Example 1

OpmBlon: Delete a previously defined trap.


sl de1,id=50CB ,

Example 2

OpmBlon: Enable a previously defined trap.


sl mod,en,id=61 DB

98 OS/VSl System ProcramminK ....rary: TSO


• Deleting PnYiousIy Defined Traps

{ILIPI {= I
l.bUng or Disabling Previously �fined Traps

II::'"U1 1 {=
'"""}� 'H gn"'!J! } , I"'�
1
S� I>2L, ,,,.""""

II pilameters are poliitional paramcten, • All pi.tametcr$ are positional paramctc/1.


more than one uscr of SLIP hu defined traps In the 5yUem, • If more than one user of SUP hu defmed traps In the sy:ttem,
lelr actions to enable Or disable traps must be <»ardlnated to their actions 10 delete traps must be coordinated to prevent
cevent undesirable results. For example, you can unknowingly undesIrable results. For example, you can unknowingly delete
,able traps previously disabled by another user by Issuing the traps previously defined by another Uler by issuing the foDowing
.lJowing command; command;

SUP MOD, EN, ALL SUPDEL,ALL

J fmd out ifother traPl have been set and wh81 thelr status is, use To fllld out if other traps have �n xt and what their status Is,
,e DISPLAY SUP SlIbcommand. Another way to ayoid use the DISPLAY SLIP subcommand. Another way to avoid

Idesirable resulllis to enable or disable tnlp$ explldlly by undesIrable results Is to delete tliPS explldtly by spedfYlng II>­
-ecifylng II>-. When I trap Is deleted by a TSO userid other than the one who
hen a trap is enabled or disabled by a TSO userid other than the set the trap, the originator of the tnlpis informed of the tIiP'S
Ie who sct the trap, the originator of the trap U Infomled of the changing status and Ihe userid responsible via message IEE7271.
ap's changing st-,us and the userld ruponsible via me5$lge
iE7271.

SLIP s.. I., OPERATOR "


'00 OS/VSl S_ "'
'''
..
.......
_ , ....'... TSO
.
STOPMN Subcommand of OPERATOR

Use the STOPMN subcommand to terminate the monitoring operations of the MONITOR
subcommand. This subcommand will halt the display of information at your terminal.

The syntax of the STOPMN subcommand of OPERATOR is:

JOBNAMES
STOPMN SESS
PM STATUS

lOBNAMES
the system stops displaying the names of jobs as they start and terminate

SESS
the system stops displaying TSO userids as terminal sessions are initiated and terminated

STATUS
the system stops displaying the names and volume serial numbers of data sets with
dispositions of KEEP, CATLG, or UNCATLG when the data sets are freed

Example 1

OpnatiOlf: Stop the display of the names of jobs as they start and terminate.
stopmn jobnames
Example 2

Optndlo,,: Stop the display of TSO userids as tenninal sessions are initiated and tenninated.

pm sess

STOPMN _ 01 OPERATOR 101


10:1 OS/VSl S,..... 1'1
"... _.. LIInoy, TSO
...
Index

A (ADD) subcommand 45 with a batch job 13


ACCOUNT command 44 CN parameter 15
ADD subcommand of ACCOUNT 45 coding commands 41
CHANGE subcommand of ACCOUNT 51 command procedure library
DELETE subcommand of ACCOUNT 56 inclusion in LOGON cataloged procedure 5
END subcommand of ACCOUNT 59 communication area, syntax checker 34
HELP subcommand of ACCOUNT 60 communication lines dedicated to TCAM 2
LIST subcommand of ACCOUNT 62 COMP parameter, SLIP subcommand of OPERATOR 85
LlSTIDS subcommand of ACCOUNT 64 (5752-164)
SYNC subcommand of ACCOUNT 65 content and structure of UADS 8
ACCT parameter continuation lines 42
ADD subcommand of ACCOUNT 48 converting broadcast data set to MVS format 12
CHANGE subcommand of ACCOUNT 53 converting VADS to MVS format 12
ACTION parameter, SLIP subcommand of OPERATOR COPY subcommand of EDIT
81 (5752-864) IBM·supplied for VSBASIC data set type 30
ADD subcommand of ACCOUNT 45 installation exit for
ADDRESS parameter, SLIP subcommand of OPERATOR parameter list 31
84 (5752-864) return codes 31
ALL parameter create and update UADS (ACCOUNT) 44-58
HELP subcommand of ACCOUNT 60 creating VADS and broadcast data sets
HELP subcommand of OPERATOR 71 from a terminal 11
SEND subcommand of OPERATOR 74 with a batch job II
SLIP subcommand of OPERATOR 98 (5752-864)
allocation, TSO 12
alphameric characters 42 D (DELETE) subcommand or ACCOUNT 56
ASIO parameter, SLIP subcommand of OPERATOR 85 D (DISPLAY) subcommand of OPERATOR 68
(5752-864) DADSM. eliminating overhead of data attribute parameters
ASIDLST parameter, SLIP subcommand of OPERATOR (RENUM) 31-32
83 (5752-864) DATA parameter
ADD subcommand of ACCOUNT 41
CHANGE subcommand of ACCOUNT 52
batch job DELETE subcommand of ACCOUNT 51
creating VADS and broadcast data sets with II SUP subcommand of OPERATOR 86 (5752.-864)
TMP executing as 12 data set attributes. as supported by EDIT command 32
SRDCST parameter 14 data set types
broadcast data set IBM-supplied, reference to book on 32
ACCOUNT command 44 installation-<lefined 32
creating DATEXIT 30
from a terminal II D D DYNAM statements 3
with a batch job II DO statements
format restriction 8 optional data sets in LOGON cataloged procedure 5
maintaining DEBUG parameter, SLIP subcommand of OPERATOR
from a terminal 12 86 (5752-864)
with a batch job 13 default
reformatting to MVS format 12 meaning 41
burter control block 34 DEL parameter, SLIP subcommand of OPERATOR 98
(5752-864)
DELETE parameter, SEND subcommand of OPERATOR
C (CHANGE) subcommand of ACCOUNT 51 76
C (CANCEL) subcommand of OPERATOR 61 DELETE subcommand 56
CANCEL command delimiters 43
IBM-supplied exit routine 21 DEST parameter
installation·written exit routine 21 ADD subcommand of ACCOUNT 48
parameter list 22 CHANGE subcommand of ACCOUNT 53
return codes 21 determining TSO user size 4
CANCEL subcommand 61 DISABLE parameter, SLIP subcommand of OPERATOR
cataloged procedures 87 (5752-864)
for starting TSO/VTAM 14 DISPLAY subcommand of OPERATOR 68
LOGON 3 DPRTY parameter 2
message control program 2 DUMP parameter
CHANGE subcommand of ACCOUNT 51 CANCEL subcommand of OPERATOR 61
changing UADS entries DYNAMNBR parameter 4
from a terminal 12

ECT (environment control table)


as parameter in LOGON pre-prompt 28

Index 103
EDiT Access Method IBMUSER userid II
space allocation 6 10 parameter, SLIP subcommand of OPERATOR 87
EDIT utility data sets 6 (5752·864)
EDIT command IEALIMIT control 4
IBM-supplied exit for RENUM subcommand 30 IF parameter. SLIP subcommand of OPERATOR 87
installation-written exit for COpy, MOVE and RENUM (5752-864)
subcommands 30 IGNORE parameter, SLIP subcommand of OPERATOR
relurn codes 31 8 1 (5752-864)
parameter list 31 IKJACCNT LOGON procedure II
EDIT subcommands. adding 37 IKJEBEST macro instruction
eliminating wasted space in UADS 8 code 38
ENABLE parameter, SLIP subcommand of OPERATOR format 37
87 (5751-864) subcommand naming restriction 37
end address Ro..8 1 {5752-864) IKJEFFIE mapping macro instruction
END parameter, SLIP subcommand of OPERATOR 87 used in installation exit for OUTPUT, STATUS and
(5752-864) CANCEL commands 22
END subcommand used in installation exit for SUBMIT command 19
ACCOUNT command 59 IKJEFLD 24
OPERATOR command 70 IKJEfTOI 4
environment control table (ECT) IKJPRMOO 2
as a parameter in LOGON pre-prompt 28 indirect addressing 79-8 1 (.5'752-864)
error traps 77 (.5752-864) initializing time sharing
ERRTYP parameter, SLIP subcommand of OPERATOR TSO/TCAM 13
87 (5751-864) TSO/VTAM 14
examples installation-derined data set types 32
ADD of ACCOUNT 49-50 installation-written EDIT subcommands 37
CHANGE of ACCOUNT 55 installation-written exit routines (He exit routines)
DELETE of ACCOUNT 57-58 instruction fetch t.rap 77 (57.52-864)
HELP of ACCOUNT 61
L1�, of ACCOUNT 63
L1STIDS of ACCOUNT 64 J parameter 68
CANCEL of OPERATOR 67 JCL parameter
DISPLAY of OPERATOR 69 ADD subcommand of ACCOUNT 48
HElP of OPERATOR 72 CHANGE subcommand of ACCOUNT 54
MONITOR of OPERATOR 73 JOBNAME parameter, SLIP subcommand of OPERATOR
SEND of OPERATOR 76 87 (5751-864)
SLIP of OPERATOR 91,98 (5752-864) JOBNAMES
STOPMN of OPERATOR 101 MONITOR subcommand of OPERATOR 73
EXEC parameters 4 STOPMN subcommand of OPERATOR 101
IKJEFTO I 4 JOBS parameter 68
executing authorized under TSO 39 JSPGM parameter, SLIP subcommand of OPERATOR 88
executing the TMP as a batch job 12 (5751-864)
exit routines
for COPY, MOVE. and RENUM subcommand of EDIT
keyword parameters 43
30
for LOGON pre-prompt 23-24
for OUTPUT. STATUS, and CANCEL commands 21 L (LIST) S1Jbcommand of ACCOUNT 62
for SUBMIT command 18 implicit specifications 63
for syntax checkers 36 L parameter
for TSO/VTAM 14 DISPLAY subcommand of OPERATOR 68-69
L1NEGRP macro instruction, reference to book on 2
LI5rr parameter
format. record
DlSPLAY subcommand of OPERATOR 68--69
passed to synlax checkers 33
SEND subcommand of OPERATOR 74,76
FUNCTION parameter
SLIP subcommand of OPERATOR 83 (5751-864)
HELP subcommand of ACCOUNT 60
LIST subcommand of ACCOUNT 62
HELP subcommand of OPERATOR 71
L1STI subcommand of ACCOUNT 64
L1STIDS subcommand of ACCOUNT 64
H (HELP) subcommand LOGON cataloged procedure 3
ACCOUNT command 60 IKJACCNT "
OPERATOR command 71 sample procedure 6
HELP subcommand LOGON parameter 75
ACCOUNT command 60 LOGON pre-prompt exit routine 23
OPERATOR command 71 parameter list 25
control switches 26
sample LOGON pre-prompt routine 29

104 OS/VSl SYRem Prognunndl18 1..JI)1'llI}': TSO


M_ 15, 1979

LPAMOD parameter, SLIP su bcommand of OPERATOR OPER (OPERATOR) command 66


88 (<752-864) OPER parameter
ADD subcommand of ACCOUNT 49
CHANGE subcommand of ACCOUNT 54
maintaining broadcast data set OPERANDS parameter
from a terminal 12 HELP subcommand of ACCOUNT 60
with a batch job 13 HELP subcommand of OPERATOR 71
maintaining UADS data sct OPERATOR command 66
from a terminal 12 CANCEL subcommand of OPERATOR 67
with a batch job 13 DISPLAY su bcom mand of OPERATOR 68
mapping macro for installation exits 19,21 END subcommand of OPERATOR 69
MATCHLIM parameter, SLIP subcommand of HELP subcommand of OPERATOR 71
OPERATOR 88 (5752-864) MONITOR subcommand of OPERATOR 73
MAXSIZE parameter SEND subcommand of OPERATOR 74
ADD subcommand of ACCOUNT 48 SLIP subcommand of OPERATOR 77 (5751-864)
CHANGE subcommand of ACCOUNT 54 STOPMN subcommand of OPERATOR 101
MCP (sn message control program) OPERATOR parameter 75-76
message control program (MCP) 2 option word 3.5.36
cataloged proced ure 2 optional data sets
adding procedure name to PPT 2 during a TSO session .s
tailoring, reference to book on 2 OUTPUT command
MN (MONITOR) subcommand of OPERATOR 13 IBM-supplied exit routine for 21
MOD parameter, SLIP su bcommand of OPERATOR 98 ins tallation wri tten exit routine for
- 21
(5752-864) parameter list 22
MODE parameter, SLIP subcommand of OPERATOR g8 return codes 21
(5752-864)
MODIFY command
used with TSO/TCAM 14 parameter definitions 43
used with TSO/VTAM 14 parameter list. syntax checker 32-35
modifying TeAM 14 parameter relationships (SLIP) 78 (5752-864)
modifying VTAM 14 PERFORM parameter
MONITOR subcommand of OPERATOR 73 ADD subcommand of ACCOUNT 49
MOUNT parameter CHANGE subcommand of ACCOUNT S4
ADD subcommand of ACCOUNT 49 performance group
CHANGE subcommand of ACCOUNT 54 as a parameter to LOGON pre-prompt exit 29
MOVE subcommand of EDIT PER traps 77 (5752-864)
IB M-supplied for VSBASIC data set type 30 PM (STOPMN) subcommand of OPER..<\TOR 101
installation exit for 30 positional parameters 43
parameter list 31 PRCNTLIM parameter, SLIP subcommand oC OPERATOR
relUrn codes 31 89 (5752-864)
preparing for TSO processing 2
procedure for starting TSO/VTAM 14
NOACCT parameter protected step control block (PSCO) values 28
ADD subcommand of ACCOUNT 48 supplied by user 28
CHANGE subcommand or ACCOUNT 53 generic group name (PSCBGPNM) 28
NODEST parameter system attributes (PSCBATRO 28
ADD subcommand of ACCOUNT 48 user attributes (PSCBATR2) 28
CHANGE subcommand of ACCOUNT 54 PSCB (protected stcp control block) values 28
NODUMP parameter. SLIP subcommand of OPERATOR supplied by user 28
82 (5752-864) PVTMOD parameter, SLIP subcommand of OPERATOR
NOJCL parameter 89 (5752-864)
ADD subcommand of ACCOUNT 48
CHANGE subcommand of ACCOUNT 54
NOLIM para.meler R parameter 68
AOD subcommand of ACCOUNT 49 RANGE parameter, SLIP subcommand of OPERATOR
CHANGE subcommand of ACCOUNT 54 90 (5752-864)
NOMOUNT parameter RBLEVEL parameter, SLIP subcommand of OPERATOR
ADD subcommand of ACCOUNT 49 90 (5752-864)
CHANGE subcommand of ACCOUNT 54 records, format of
NOOPER parameter passed syntax checker 32
ADD subcommand of ACCOUNT 49 RECOVERY parameter, SLIP subcommand of
CHANGE subcommand of ACCOUNT 54 OPERATOR 82 (5752-864)
NOPERFORM parameter reference - TSO commands 41-101
ADD subcommand of ACCOUNT 49 reformatting a broadcast data set II
CHANGE subcommand of ACCOUNT 55 reformatting UADS 8,12
NOW parameter 75 region size, determining 4

lade" 105
Pace of GC28-061'·3
As ...ted March 15, 19"
By TNL, GNlII-2971 lor 5751-8<>4

regulate TSO from a terminal (OPERATOR) 66-101 successful branch trap 17 (5752-864)
RENUM subcommand of EDIT 30 SUMLIST parameter, SLIP subcommand of OPERATOR
IBM-supplied for VSBASIC data set type 30 84 (5751-8<>4)
installation exit for 30 SVCD parameter, SLIP subcommand of OPERATOR 82
parameter list 31 (5752-864)
return codes 31 symbol
meaning 41
SYNC subcommand of ACCOUNT 1 1 ,65
SA parameter, SLIP subcommand of OPERATOR 91 syntax checkers 32-36
(5751-8<>4) IBM-supplied 32
SAVE parameter 7S installation-written 32
SAVE subcommand of EDIT 14 parameter list 3�3S
SB parameter, SLIP subcommand of OPERATOR 91 exit routine for 36
(5751-8<>4) syntax checker communication area 34
SDATA parameter, SLIP subcommand of OPERATOR syntax checker parameter list 32-35
83.0 (5751-8<>4) syntax checker standard interface 33
SE (SEND) subcommand of OPERATOR 74 syntax checking 32
SEND subcommand of OPERATOR 14 SYNTAX parameter
SESS parameter HELP subcommand of ACCOUNT 60
MONITOR subcommand of OPERATOR 13 HELP subcommand of OPERATOR 11
STOPMN subcommand of OPERATOR 101 SYSPROC DO statement
SET parameter, SLIP subcommand of OPERATOR 91 inclusion in LOGON cataloged procedure 5
(5751-8<>4) system attributes
SIZE parameter as PSCB parameter to LOGON prc-prompt exit 28
ADD subcommand of ACCOUNT 48 system modification program (SMP) 24
CHANGE subcommand of ACCOUNT 53 SYSUADS DO statement
SLIP parameter, DISPLAY subcommand of OPERATOR inclusion in LOGON cataloged procedurc 5
68 (5751-8<>4) SYS1.CMDLlB, including in LNKLSTxx mcmber of
SLIP subcommand of OPERATOR 11 (575l-8U) SYSI .PARMLIB 2
SLIP traps 11 (5152-864) SYSI .PARMLIB
SMP (sec system modification program) adding IKJPRMOO to 2
standard interface for syntax checker 33 adding SVSI.CMDLlB to 2
START command, to initia1ize time sharing adding TSOKEYOO to 2
TSO/TCAM 13 SYS1 .PROCLIB
TSO/VTAM 14 adding LOGON cataloged procedure to 2
starting TCAM t3 adding MCP cataloged procedure to 2
starting time sharing
TSO/TCAM 13
TSO/VTAM 14 T paramcter
start address 80-8 I (5752-864) DISPLAY subcommand of OPERATOR 68
starting VTAM 14 MONITOR subcommand of OPERATOR 13
STATUS command lailoring an Mep. reference to publication on 2
IBM-supplied exit routine 21 target address 8'1,86 (5752-864)
installation-written exit routine 21 TeAM, modifying 14
parameter list 22 TeAM, starting 13
return codes 2I TeAS activating 14
STATUS parameter tcrminal
MONITOR subcommand of OPERATOR 73 creating UADS and broadcast from 11
STOPMN subcommand of OPERATOR 101 tenninal I/O controller (TIOe) parameter, rderencc to
step library 5 book on 2
inclusion in LOGON cataloged procedure 5 terminal monitor program (TMP)
STEPLIB DO statement as a batch job 13
inclusion in LOGON cataloged procedure 5 tcrminating time sharing
STOP command, to stop TSO/VTAM 14 TSO/TCAM 14
STOPMN subcommand of OPERATOR 101 TSO/VTAM 14
stopping time sharing time-sharing
TSO/TCAM 14 starting
TSO/VTAM 14 TSO/TCAM 14
storage alteration trap 11 (5752-864) TSO/VTAM 14
subcommand interface area (RENUM) 31 stopping
subcommands of EDIT command, adding 31 TSO/TCAM 13
SUBMIT command TSO/VTAM 14
IBM-supplied exit routine 18 TIOe (terminal I/O conlroUer) parameter, reference to
installation-written exit routine 11 book on 2
control switches 19 TMP (terminal monitor program)
parameter list 19 as a balch job 8.13
return codcs 18

106 OS/VSl SYMcm ProgrammIDa 1.Jbrary: TSO


TRACE parameter, SLIP subcommand of OPERATOR user attribute data set (UADS)
82 (5752-864) ACCOUNT command 7
translation tables 17 content and structure 8
TRDAT·A parameter, SLIP subcommand of OPERATOR creating 44
82 (5752-864) from a terminal II
TRDUMP parameter, SLIP subcommand of OPERATOR with a batch job 11
82 (5752-864) elimi.nating wasted space 8
TS parameter format restriction 8
to start and SlOp time-sharing 14 mai.ntaining from a terminal 12
DISPLAY subcommand of OPERATOR 68 maintaining with a batch job II
TSOKEYOO 2 reformatting (UADSREFM program) 8,12
TSO allocation 4 updating 44
TSO commands user attributes, as PSCB parameter in LOGON
ACCOUNT 44 pre-prompt 28
OPERATOR 66 USER parameter, SEND subcommand of OPERATOR
TSO environment created by TMP as a batch job 8 7'
TSO processing, preparing for 2 user profile table (UPT)
"
TSO, regulating from a terminal 66-101 as parameter to LOGON pre-prompt exit 28
TSO user region size 4 user region size 4
user-written EDIT subcommands 37
user-written exit routines (see installation-written exit
U parameter 67 routines)
UAOS (see user attribute data set) USERDATA parameter
UADSREFM program 8 ADD subcommand of ACCOUNT 49
UNIT parameter CHANGE subcommand of ACCOUNT SS
ADD subcommand of ACCOUNT 48 USREXT value 36
CHANGE subcommand of ACCOUNT 53
updating broadcast data set
from a terminal 12 VSBASIC program product
with a batch job 13 IBM-supplied RENUM exit routine 30
updating UADS VTAM, starting 14
from a terminal 12 VTIOC (VTAM terminal I/O coordinator, reference to
with a batch job 13 book on) 2
UPT (user profile table)
as a parameter to LOGON pre-prompt exit 28

[Hex 107
"

108 OS/VS2 Sy..... ....... Ubnry, TSO


OS/ VS2 MVS System READER'S
Programming Library: TSO COMMENT
GC28-0629-3 FORM

This manual is part ora library that serves as a reference source for s yst em s a na l ys ts, programmers,
and ope rato rs of IBM systems. This form may be used to communkatc you r views about this
p ub li ca tion . They will be sent to the author's depart me n t for whatever review and action, if any,
i s deemed app ro p ria te .
IBM may use or distribute any of the information you supply in any way it believes appropriate
without incurring any obligation whatever. You may, of course, continue to usc the information
y o u supply.
Note: Copies of IBM publicalions are nol siocked al lh. location 10 which Ihis form is addressed.
Please direct allY requests for copies of publications. or for assistance in llsing your IlJM system.
to your IBM representative or 10 tlte IBM branch office serJling your locality.

Possible topics for co mmen ts a re :

Clarity Accuracy Completeness Organization Coding R e t rieva l Legibility

If comments apply to a Selectable Unit, please provide the name of the Selectable U ni t ____

I f you wish a reply, give your na me and mailing address:


o
Z

Please circle the description that most closely describes your occupation.

(Q) (U) (X) (V) (z) (F) (I) (l)

CuSCom�r Install System System System Applica. Systcm 1/0 Tcrm. Other
M�r.

(S)
Consult.

(P)
Analyst

(A)
Prog.

(D)
Pros·

(e)
Oper.

(D)
Orcr.

(R)
Oper.

(G) (J) (E) (N)


G: ("
Systcm Prog. System SY.\tem Applica. 01:.... Cump. System I/O t::d . euse Tech.
18"
Eng. Sys. Analyst Prop.. Prog. Prog. Prog. Oper. Oper. Ot=v. F.ng. Staff
Rep. Rep. Rep.

Number of lalcst Newsletter associated with this pu b licat ion : ______________

Thank you for your cooperation. N o postage stamp necessary if mailed in the U.S.A. (E lsew he re ,
an IBM office or representative wil l be happy to forward your comments.)
GC28-0629-3

Reader's Comment Form

FOld ind lilPO Please Do NOt Staple FOld and upe

I II I I
F irst Class
Permit 40
Armonk
New York

Busi ness Reply Mail


No postage stamp necessary if mailed in the U .S .A.

Postage will be paid by:

I nternational Business Machines Corporation


ul
o

Department 058, Building 706-2


PO Box 390
Poughkeepsie, New York 1 2602

=l'
-I ,

FOld and upe Pleiils. Do Not Staple Fold and t<lpe [


1 3'
c
I '"


I Cl
()
I '"
co
6
- -
- -
-
- -
- I Ol

III
- -
-
- -
--
OJ
- -- -
- - - - - -
- - - - -
- - - - -

International Business Machines Corporation


Dlla Processing Division
1 1 33 Westchester Avenue, White Plains, N.V. 10604

IBM World Trade Americas/Far East Corporation


Town of Mount Pleasant, Route 9, North Tarrytown, N.V" U.S.A. 10591

IBM World Trade Europe/Middle east/Africa Corporation


360 Hamilton Avenue, White Pralns, N.Y., U.S.A. 10601
- - - -
- - - -
- - - - -
- - --

Technical Newsletter
- - ---
- - - - - -

= � = ':' =
, This Newsletter No. GN28·2971
Date March 1 5, 1979

Base Publication No. GC28·0629·3


File No. 5370-39

Prerequisite Newsletters None

OS/VS2 MVS System Programming


Library: TSO

© Copyright IBM Corp. 1974, 1975, 1976, 1978

This newsletter contains replacement pages for SPL: TSO.

Before inserting any of the attached pages into SPL: TSO, read t:fInfully the
instructions on this cover. They indicate when and how you should insert the pages.

Pages to Attached Pages


be Removed to be Inserted·

Cover · Edition Notice Cover · Edition Notice


vii • viii vii viii

79 · 80 79 · 80
83 · 88 83 · 88
105 · 106 105 · 1 06

-If you are inserting pages from different Newsletters/Supplements and i(kndCtlI page
numbers are involved, always use the page with the latest date (shown in the slug at the
top of the page ). The page with the latest date contains the most complete information

A change to the text or to an illustration is indicated by a vertical line to the left


of the change.

Summary of Amendments

This update reflects technical corrections to the SUP subcommand of OPERATOR.

Note: Please file this cover letter at the back of the base publication to provide a
record of changes.

IBM Corporation, Publications Development, Department 058, Building 70,6·2,


PO Box 390, Poughkeepsie, New York 12602

Printed in U,S.A..

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy