EXCBK Back to Index page
 
Prolog 
Control Block Contents 
   EXCBK DSECT
   EXCVROBJ DSECT
Storage Layout 
Cross Reference (Contains links to field and bit definitions)
Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.


  EXCBK Prolog Top of page
 
 NAME       : HCPEXCBK
 DESCRIPTION: DIAGNOSE X'280' exec() block
 DSECT      : EXCBK
 FUNCTION   : This DSECT maps the control block which
              describes the input for DIAGNOSE X'280'.
 LOCATED BY : Guest version: diagnose X'280' parameter list
              Host version:  registers in HCPEXC
 CREATED BY : Guest version: the diagnose X'280' issuer
              Host version:  HCPEXC
 DELETED BY : Guest version: the diagnose x'280 issuer
              Host version:  HCPEXC
 SERIALIZED : Instruction-stream on the dispatched vCPU
 RELOCATION CONSIDERATIONS : None
 COMMENTS   :
   This control block is conceptually one piece of data
   mapped by two structures. There is a fixed-length
   portion and a variable-length portion, both described
   in greater detail below. In storage, these must be
   adjacent, and in the order:
    1) Fixed-length area
    2) Object token information.
   The fixed-length section is set up as containing a header
   and function-specific sections. The header contains only
   general control block information, and is frozen at the
   defined length. CHANGING THE LENGTH OF THE HEADER SECTION
   WILL RESULT IN MAKING THE CONTROL BLOCK INCOMPATIBLE WITH
   PREVIOUS RELEASES OF THE BLOCK.
   The function-specific sections are different, but the
   length of that section is determined by the length of
   the longest of the set of function-specific sections.
   A field in the header contains this execution-time-
   calculated length so that fields can be added to the
   function-specific section in future releases while still
   allowing the new blocks to coexist with the old ones.
   A variable-length section may contain no data; in this
   case, the length field contains the length of itself
   alone (a 4-byte length field, for example, would contain
   the value '4' if the length of the corresponding data
   field is zero).
   For future expansion, function-specific fields can be
   added to the function-specific area, or other
   function-specific sections can be added. Variable-length
   sections can be added after the last variable length
   section.
 
 
  EXCBK Control Block Content Top of page
 

 EXCBK DSECT Top of page
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure EXCBK DIAGNOSE X'280' exec() block Header information 0000 0 Dbl-Word 8 EXCHDR (0) EXCBK header 0000 0 Signed 2 EXCDIAGC Diagnose code eyecatcher EXCDIAGC EXCDIAGV X'0280' EXCDIAGV Required value for EXCDIAGC 0002 2 Signed 2 EXCFUNCD Diagnose function code: 00000000 EXCSETID 0 EXCSETID 0 = Request that CP set the appropriate POSIX security values for an exec() function call. 00000001 EXCSSID 1 EXCSSID 1 = Request that CP set only the saved-set ids for an exec() function call. 0004 4 Signed 2 EXCDWLEN Length (unsigned) of EXCBK in doublewords 00000200 EXCMAXST 4096/8 Maximum length of the EXCBK is one page (512 DWs). 0006 6 Signed 2 EXCRSV00 Reserved for IBM use 0008 8 Signed 4 EXCFFXLN Length (unsigned) in bytes of of the fixed-length portion of the function-specific section of the block. The application creating the block may use the value EXCFIXLN to fill in this field. 000C 12 Signed 4 EXCRSV01 Reserved for IBM use 00000010 EXCHDRLN (*-EXCHDR) Header length Function-specific parameter list information 0010 16 Signed 4 EXCFLIST (0) Start of function-specific parameter list information Function EXCSETID 0010 16 Signed 4 EXCFSTID (0) 0010 16 Signed 4 * Reserved for IBM use. 0014 20 Signed 4 EXCTPNLN Length (unsigned) in bytes of the TPN. 00000001 EXCTPNMN 1 Minimum length of the TPN. 00000040 EXCTPNMX (L'EXCTPN) Maximum length of the TPN. 0018 24 Character 64 EXCTPN TPN (target resource name) 0058 88 Character 16 EXCLOCLU (0) Locally-known LUname 0058 88 Character 8 EXCLUQUL LU name qualifier 0060 96 Character 8 EXCLUTGT Target LU name .... 1... EXCLULEN L'EXCLUQUL EXCLULEN Length of either part one (the luname qualifier) or part two (the target luname) of the LU name. 0068 104 Character 8 EXCMODE SNA modename 0070 112 Signed 4 EXCSRET Return code from the server. This field is copied from the IRCBK. 0074 116 Signed 4 EXCSREAS Reason code from the server. This field is copied from the IRCBK. 0078 120 Signed 4 EXCNUID New UID. This is the UID to which the user's eUID and ssUID were set. 007C 124 Signed 4 EXCNGID New GID. This is the GID to which the user's eGID and ssGID were set. 00000070 EXCSTFLN *-EXCFSTID Minimum length of the fixed-length portion of the SETID information, in bytes. Function EXCSSID 0010 16 Signed 4 EXCFSSID (0) 0010 16 Signed 4 EXCSSUID Saved-set UID. This is the UID to which the user's ssUID was set. 0014 20 Signed 4 EXCSSGID Saved-set GID. This is the GID to which the user's ssGID was set. 00000008 EXCSSFLN *-EXCFSSID Minimum length of the fixed-length portion of the SSID information, in bytes. 00000003 EXCSSLEN (((*-EXCFSSID)+EXCHDRLN+7)/8) Length of the SSID information in doublewords. Reset ORG and calculate the length of the longest of the fixed-length portions of the function-specific sections. 00000070 EXCFIXLN (*-EXCFLIST) Length of the longest of the function-specific sections. These return code values are applicable to all function codes of DIAGNOSE X'280' unless otherwise noted. Return code values not applicable to function EXCSETID: None. Return code values not applicable to function EXCSSID: EXCBDTPL EXCBDOBL EXCINVLU EXCNOGAT EXCNORES EXCNORPY EXCNOSRV EXCSVREJ EXCSVERR EXCSVINV EXCUAUTH EXCESMRJ EXCTERM Function EXCSETID - variable-length portion mapping. Note that this mapping is not part of the EXCBK DSECT and must be properly based in order to be used. The object length must immediately follow the last field in the function-specific section of the EXCSETID function. The proper calculation is: (address of EXCBK + length of header section + length of function-specific section) or (EXCBK @ + EXCHDRLN + EXCFFXLN).
 EXCVROBJ DSECT Top of page
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure EXCVROBJ DIAGNOSE X'280' exec() block 0000 0 Signed 4 EXCOBJLN Length (unsigned) in bytes of the object token, including the length field itself. Must be at least EXCOBJMN. 00000004 EXCOBJMN L'EXCOBJLN Minimum length permitted to be specified in EXCOBJLN. This minimum represents a EXCOBJTK length of zero. 00000204 EXCOBJMX 516 Maximum length permitted to be specified in EXCODJLN. This represents a maximum EXCOBJTK length of 512 bytes. 0004 4 Bitstring 1 EXCOBJTK (0) Object token. The object token represents the object for which the UID/GIDs are being queried. For example, this could represent a setid file residing in the byte file system.
 
 
  EXCBK Storage Layout Top of page
 
          
*** EXCBK - DIAGNOSE X'280' exec() block
*
*     +-------------+-------------+-------------+-------------+
*   0 |  EXCDIAGC   |  EXCFUNCD   |  EXCDWLEN   |  EXCRSV00   |
*     +-------------+-------------+-------------+-------------+
*   8 |         EXCFFXLN          |         EXCRSV01          |
*     +---------------------------+---------------------------+
*
*** EXCBK - DIAGNOSE X'280' exec() block
          
*** Overlay for EXCFLIST in EXCBK
*
*     +---------------------------+---------------------------+
*  10 |///////////////////////////|         EXCTPNLN          |
*     +---------------------------+---------------------------+
*  18 |                                                       |
*     =                        EXCTPN                         =
*     |                                                       |
*     +-------------------------------------------------------+
*  58 |                       EXCLUQUL                        |
*     +-------------------------------------------------------+
*  60 |                       EXCLUTGT                        |
*     +-------------------------------------------------------+
*  68 |                       EXCMODE                         |
*     +---------------------------+---------------------------+
*  70 |         EXCSRET           |         EXCSREAS          |
*     +---------------------------+---------------------------+
*  78 |         EXCNUID           |         EXCNGID           |
*     +---------------------------+---------------------------+
*  80
*
*** Overlay for EXCFLIST in EXCBK
          
*** Overlay for EXCFLIST in EXCBK
*
*     +---------------------------+---------------------------+
*  10 |         EXCSSUID          |         EXCSSGID          |
*     +---------------------------+---------------------------+
*  18
*
*** Overlay for EXCFLIST in EXCBK
          
*** EXCVROBJ - DIAGNOSE X'280' exec() block
*
*     +---------------------------+
*   0 |         EXCOBJLN          |
*     +---------------------------+
*
*** EXCVROBJ - DIAGNOSE X'280' exec() block
 
 
  EXCBK Cross Reference Top of page
 
 
Symbol         Dspl Value
-------------- ---- -----
EXCDIAGC       0000
EXCDIAGV       0000 EXCDIAGC
EXCDWLEN       0004
EXCFFXLN       0008
EXCFIXLN       0014 00000070
EXCFLIST       0010
EXCFSSID       0010
EXCFSTID       0010
EXCFUNCD       0002
EXCHDR         0000
EXCHDRLN       000C 00000010
EXCLOCLU       0058
EXCLULEN       0060 08
EXCLUQUL       0058
EXCLUTGT       0060
EXCMAXST       0004 00000200
EXCMODE        0068
EXCNGID        007C
EXCNUID        0078
EXCOBJLN       0000
EXCOBJMN       0000 00000004
EXCOBJMX       0000 00000204
EXCOBJTK       0004
EXCRSV00       0006
EXCRSV01       000C
EXCSETID       0002 00000000
EXCSREAS       0074
EXCSRET        0070
EXCSSFLN       0014 00000008
EXCSSGID       0014
EXCSSID        0002 00000001
EXCSSLEN       0014 00000003
EXCSSUID       0010
EXCSTFLN       007C 00000070
EXCTPN         0018
EXCTPNLN       0014
EXCTPNMN       0014 00000001
EXCTPNMX       0014 00000040
 
This information is based on z/VM 7.3.0 Last updated on 22 Jun 2022 at 15:50:21 EDT.
Copyright IBM Corporation, 1990, 2022