Programming Interface Information: This information is NOT intended to be
used as Programming Interfaces of VM/ESA. It is to be used for diagnosis only.

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 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 EQU X'08' Reserved EQU X'04' Reserved .... ..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 EQU X'08' Reserved EQU X'04' Reserved EQU X'02' Reserved EQU X'01' Reserved 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 EQU X'10' Reserved EQU X'08' Reserved EQU X'04' Reserved EQU X'02' Reserved EQU X'01' Reserved 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 0059 89 Bitstring 1 CMDCLB1 005A 90 Bitstring 1 CMDCLB2 005B 91 Bitstring 1 CMDCLB3

 

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|////////////////////|///////////////////////////|
*     +------+--------------------+---------------------------+
*  70 |                                                       |
*     =                       CMD$END                         =
*     |                                                       |
*     +-------------------------------------------------------+
*
*** 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
-------------- ---- -----

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 VM/ESA 2.4.0.
Last updated on 3 Aug 1999 at 12:11:30 EDT.
Copyright IBM Corporation, 1990, 1999