Programming Interface Information: This information is NOT intended to be
used as Programming Interfaces of z/VM.

CMDBK

Prolog  

Control Block Contents  

CMDBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  

CMDBK Prolog

NAME : HCPCMDBK DESCRIPTION: Command Table Entry Block STATUS : VM/ESA Version 2, Release 1.0 DSECT : CMDBK FUNCTION : The Command Table Entry Blocks are used to control and to locate the modules that are called when a CP command is issued. LOCATED BY : HCPCOMEA for 'CP' commands HCPSETEA for 'CP SET' commands HCPQUYEA for 'CP QUERY' commands HCPQUYEL for 'CP QUERY VIRTUAL' commands CREATED BY : Assembly of HCPCOM Assembly of HCPQUY Assembly of HCPSET HCPDCM - Processing the command DEFINE COMMAND HCPCMU - Processing the command DEFINE COMMAND DELETED BY : HCPDCM - Processing the command DEFINE COMMAND HCPCMU - Processing the command DEFINE COMMAND REFERENCES : HCPCLASS - Privilege class definitions The CMDBK begins with storage that is mapped by the ICRBK DSECT. This storage is followed by the real CMDBK fields that define and control the diagnose code. SERIALIZED : Changes to the contents of CMDBKs are typically done by diagnose A0 and by User Class Restructure, and under the SYSLCKC4 lock. NOTES :

 

CMDBK Control Block Content


CMDBK DSECT

Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure CMDBK Command Table Entry Block These fields map the Indirect Call Request Block. These fields must match the analogous fields in the ICRBK. The fields are defined explicitly here in order that BLOCKDEF and BLOCKMAP can correctly describe them. 0000 0 Character 8 CMDEPNAM Name of the entry routine 0008 8 Address 4 CMDADDRL Address of the ICLBK, or 0. MODIFY RESET will need to clear this field to zero. 000C 12 Bitstring 1 CMDATTR Attributes for HCPCALL 000D 13 Bitstring 1 * Reserved 000E 14 Bitstring 1 * Reserved 000F 15 Bitstring 1 * Reserved Thus ends the Indirect Call Request Block fields The user fields should remain at the front of the block 0010 16 Dbl-Word 8 CMDUSRD1 Reserved for non-IBM use 0018 24 Dbl-Word 8 CMDUSRD2 Reserved for non-IBM use 0020 32 Signed 4 CMDUSRF1 Reserved for non-IBM use 0024 36 Signed 4 CMDUSRF2 Reserved for non-IBM use 0028 40 Signed 2 CMDUSRH1 Reserved for non-IBM use 002A 42 Signed 2 CMDUSRH2 Reserved for non-IBM use 002C 44 Bitstring 1 CMDUSRX1 Reserved for non-IBM use 002D 45 Bitstring 1 CMDUSRX2 Reserved for non-IBM use 002E 46 Bitstring 1 CMDUSRX3 Reserved for non-IBM use 002F 47 Bitstring 1 CMDUSRX4 Reserved for non-IBM use 0030 48 Character 12 CMDNAME Command name 003C 60 Address 4 CMDFWD Addr of another CMDBK on chain 0040 64 Address 4 CMDADDR Address of routine. If non-zero, then call CMDEPNAM indirectly 0044 68 Signed 4 CMDCOUNT Command issued this many times. There is no relationship between this field and any particular CMDBK. This means that this field in a CMDBK for a command with IBM class A does not mean that the command was executed for the class A command and not the class B or the class G command. Only the sums of the CMDCOUNT fields and the CMDMSECS fields for a command name are meaningful. 0048 72 Signed 8 CMDMSECS Time (in micro-seconds) that the routines that comprise this command were active. There is no relationship between this field and any particular CMDBK. This means that this field in a CMDBK for a command with IBM class A does not mean that the time was spent executing for the class A command and not the class B or the class G command. Only the sums of the CMDCOUNT fields and the CMDMSECS fields for a command name are meaningful. 0050 80 Address 4 CMDPUSHD Address of pushed CMDBK 0054 84 Signed 4 CMDOVRDE For use by MODIFY and OVERRIDE 0058 88 Signed 4 CMDCLASS Class mask 005C 92 Signed 4 CMDCNTER Creation counter, for HCPDA0 0060 96 Address 4 CMDALIAP If an alias, then this is the address of the alias CMDBK. 0064 100 Bitstring 1 CMDIBMCL IBM class 1... .... CLASSA X'80' CLASS A FUNCTIONS .1.. .... CLASSB X'40' CLASS B FUNCTIONS ..1. .... CLASSC X'20' CLASS C FUNCTIONS ...1 .... CLASSD X'10' CLASS D FUNCTIONS .... 1... CLASSE X'08' CLASS E FUNCTIONS .... .1.. CLASSF X'04' CLASS F FUNCTIONS .... ..1. CLASSG X'02' CLASS G FUNCTIONS .... ...1 CLASSH X'01' CLASS H FUNCTIONS 0065 101 Bitstring 1 CMDTRUNC Minimum truncation 0066 102 Bitstring 1 CMDFLAG Command flags 1... .... CMDALOG X'80' Command allowed before LOGON .1.. .... CMDOLOG X'40' Command allowed only at LOGON ..1. .... CMDALIAS X'20' Entry is an 'ALIAS' ...1 .... CMDENABL X'10' This CMDBK is enabled .... ..1. CMDONLY X'02' Only one version (IBMCLASS) .... ...1 CMDNOCL X'01' Command is class 'ANY' Security bits defined for CMDFLAG1: CMDPROC - Indicates that no call to the ESM will be made in the command router. This means that all required security calls to the ESM must be made by the command processor. If CMDPROC is set for one version, then it must be set for all versions. CMDVPROT - This flag indicates that the 'PROTECT' setting (CMDPROT) of this command may be dynamically altered by the External Security Manager (ESM). CMDXLOG - Indicates that the command may be disabled prior to logon. This bit can only be dynamically altered by the ESM. CMDVMAC - Indicates that the 'MAC' setting (CMDMAC) for this command may be dynamically altered by the ESM. 0067 103 Bitstring 1 CMDFLAG1 Command flags 1... .... CMDPROC X'80' Command processor performs further privilege class checks .1.. .... CMDXLOG X'40' Command can be turned off prior to logon ..1. .... CMDVPROT X'20' Command can be protected ...1 .... CMDVMAC X'10' Command may be Mandatory Access Controlled Security bits defined for CMDSECUR: CMDAUDIT - Indicates that the command will be 'AUDITED' by the ESM. This bit can be initialized when the table entry is created and can be dynamically altered by the ESM. CMDPROT - Indicates that the command will be 'PROTECTED' by the ESM. This bit can be initialized when the table entry is created. CMDMAC - Indicates that the command will be Mandatory Access Controlled. This bit can only be dynamically altered by the ESM. 0068 104 Bitstring 1 CMDSECUR Command security flags 1... .... CMDAUDIT X'80' Command is to be audited .1.. .... CMDPROT X'40' Command is to be protected ..1. .... CMDMAC X'20' Command is to be Mandatory Access Controlled 0069 105 Character 1 * (3) Reserved 006C 108 Signed 4 * Reserved 0070 112 Dbl-Word 8 CMD$END (0) The end 00000070 CMDBSIZE *-CMDBK Size of CMDBK in bytes 0000000E CMDSIZE (*-CMDBK+7)/8 Size in double words 0058 88 Bitstring 1 CMDCLB0 1... .... CLASSA X'80' CLASS A FUNCTIONS .1.. .... CLASSB X'40' CLASS B FUNCTIONS ..1. .... CLASSC X'20' CLASS C FUNCTIONS ...1 .... CLASSD X'10' CLASS D FUNCTIONS .... 1... CLASSE X'08' CLASS E FUNCTIONS .... .1.. CLASSF X'04' CLASS F FUNCTIONS .... ..1. CLASSG X'02' CLASS G FUNCTIONS .... ...1 CLASSH X'01' CLASS H FUNCTIONS 0059 89 Bitstring 1 CMDCLB1 1... .... CLASSI X'80' CLASS I FUNCTIONS .1.. .... CLASSJ X'40' CLASS J FUNCTIONS ..1. .... CLASSK X'20' CLASS K FUNCTIONS ...1 .... CLASSL X'10' CLASS L FUNCTIONS .... 1... CLASSM X'08' CLASS M FUNCTIONS .... .1.. CLASSN X'04' CLASS N FUNCTIONS .... ..1. CLASSO X'02' CLASS O FUNCTIONS .... ...1 CLASSP X'01' CLASS P FUNCTIONS 005A 90 Bitstring 1 CMDCLB2 1... .... CLASSQ X'80' CLASS Q FUNCTIONS .1.. .... CLASSR X'40' CLASS R FUNCTIONS ..1. .... CLASSS X'20' CLASS S FUNCTIONS ...1 .... CLASST X'10' CLASS T FUNCTIONS .... 1... CLASSU X'08' CLASS U FUNCTIONS .... .1.. CLASSV X'04' CLASS V FUNCTIONS .... ..1. CLASSW X'02' CLASS W FUNCTIONS .... ...1 CLASSX X'01' CLASS X FUNCTIONS 005B 91 Bitstring 1 CMDCLB3 1... .... CLASSY X'80' CLASS Y FUNCTIONS .1.. .... CLASSZ X'40' CLASS Z FUNCTIONS ..1. .... CLASS1 X'20' CLASS 1 FUNCTIONS ...1 .... CLASS2 X'10' CLASS 2 FUNCTIONS .... 1... CLASS3 X'08' CLASS 3 FUNCTIONS .... .1.. CLASS4 X'04' CLASS 4 FUNCTIONS .... ..1. CLASS5 X'02' CLASS 5 FUNCTIONS .... ...1 CLASS6 X'01' CLASS 6 FUNCTIONS

 

CMDBK Storage Layout

          
*** CMDBK - Command Table Entry Block
*
*     +-------------------------------------------------------+
*   0 |                       CMDEPNAM                        |
*     +---------------------------+------+------+------+------+
*   8 |         CMDADDRL          |:ATTR |//////|//////|//////|
*     +---------------------------+------+------+------+------+
*  10 |                       CMDUSRD1                        |
*     +-------------------------------------------------------+
*  18 |                       CMDUSRD2                        |
*     +---------------------------+---------------------------+
*  20 |         CMDUSRF1          |         CMDUSRF2          |
*     +-------------+-------------+------+------+------+------+
*  28 |  CMDUSRH1   |  CMDUSRH2   |:USRX1|:USRX2|:USRX3|:USRX4|
*     +-------------+-------------+------+------+------+------+
*  30 |                       CMDNAME                         |
*     |                           +---------------------------+
*  38 |                           |          CMDFWD           |
*     +---------------------------+---------------------------+
*  40 |         CMDADDR           |         CMDCOUNT          |
*     +---------------------------+---------------------------+
*  48 |                       CMDMSECS                        |
*     +---------------------------+---------------------------+
*  50 |         CMDPUSHD          |         CMDOVRDE          |
*     +---------------------------+---------------------------+
*  58 |         CMDCLASS          |         CMDCNTER          |
*     +---------------------------+------+------+------+------+
*  60 |         CMDALIAP          |:IBMCL|:TRUNC|:FLAG |:FLAG1|
*     +------+--------------------+------+------+------+------+
*  68 |:SECUR|////////////////////|///////////////////////////|
*     +------+--------------------+---------------------------+
*
*** CMDBK - Command Table Entry Block
          
*** Overlay for CMDCLASS in CMDBK
*
*     +------+------+------+------+
*  58 |:CLB0 |:CLB1 |:CLB2 |:CLB3 | 5C
*     +------+------+------+------+
*
*** Overlay for CMDCLASS in CMDBK

 

CMDBK Cross Reference

(contains links to field and bit definitions)
Symbol         Dspl Value
-------------- ---- -----

CLASSA 0064 80

CLASSA 0058 80

CLASSB 0064 40

CLASSB 0058 40

CLASSC 0064 20

CLASSC 0058 20

CLASSD 0064 10

CLASSD 0058 10

CLASSE 0064 08

CLASSE 0058 08

CLASSF 0064 04

CLASSF 0058 04

CLASSG 0064 02

CLASSG 0058 02

CLASSH 0064 01

CLASSH 0058 01

CLASSI 0059 80

CLASSJ 0059 40

CLASSK 0059 20

CLASSL 0059 10

CLASSM 0059 08

CLASSN 0059 04

CLASSO 0059 02

CLASSP 0059 01

CLASSQ 005A 80

CLASSR 005A 40

CLASSS 005A 20

CLASST 005A 10

CLASSU 005A 08

CLASSV 005A 04

CLASSW 005A 02

CLASSX 005A 01

CLASSY 005B 80

CLASSZ 005B 40

CLASS1 005B 20

CLASS2 005B 10

CLASS3 005B 08

CLASS4 005B 04

CLASS5 005B 02

CLASS6 005B 01

CMD$END 0070

CMDADDR 0040

CMDADDRL 0008

CMDALIAP 0060

CMDALIAS 0066 20

CMDALOG 0066 80

CMDATTR 000C

CMDAUDIT 0068 80

CMDBSIZE 0070 00000070

CMDCLASS 0058

CMDCLB0 0058

CMDCLB1 0059

CMDCLB2 005A

CMDCLB3 005B

CMDCNTER 005C

CMDCOUNT 0044

CMDENABL 0066 10

CMDEPNAM 0000

CMDFLAG 0066

CMDFLAG1 0067

CMDFWD 003C

CMDIBMCL 0064

CMDMAC 0068 20

CMDMSECS 0048

CMDNAME 0030

CMDNOCL 0066 01

CMDOLOG 0066 40

CMDONLY 0066 02

CMDOVRDE 0054

CMDPROC 0067 80

CMDPROT 0068 40

CMDPUSHD 0050

CMDSECUR 0068

CMDSIZE 0070 0000000E

CMDTRUNC 0065

CMDUSRD1 0010

CMDUSRD2 0018

CMDUSRF1 0020

CMDUSRF2 0024

CMDUSRH1 0028

CMDUSRH2 002A

CMDUSRX1 002C

CMDUSRX2 002D

CMDUSRX3 002E

CMDUSRX4 002F

CMDVMAC 0067 10

CMDVPROT 0067 20

CMDXLOG 0067 40


This information is based on z/VM V3R1.0.
Last updated on 10 Jan 2001 at 07:30:13 EDT.
Copyright IBM Corporation, 1990, 2001