Programming Interface Information: This page documents intended Programming Interfaces that allow the customer to write programs to obtain the services of z/VM.

#### SHVBLOCK

Prolog

Control Block Contents
SHVBLOCK DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### SHVBLOCK Prolog

     Name       : SHVBLOCK
     Description: Control BLocks for accessing shared variables
     DSECT      : SHVBLOCK
     Function   : Defines the CMS EXECCOMM Shared Variable Block
                  Structure and some common declares for use.

#### SHVBLOCK Control Block Content

#### SHVBLOCK DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      SHVBLOCK       Control BLocks for accessing
                                            shared variables
    0000    0 Address      4 SHVNEXT        (+0) CHAIN POINTER (0 IF LAST)
    0004    4 Address      4 SHVUSER        (+4) NOT USED, AVAILABLE FOR
                                            PRIVATE use EXCEPT DURING 'FETCH
                                            NEXT'
    0008    8 Character    1 SHVCODE        (+8) INDIVIDUAL FUNCTION CODE
    0009    9 Bitstring    1 SHVRET         (+9) INDIVIDUAL RETURN CODE FLAG
    000A   10 Signed       2 *              RESERVED, SHOULD BE ZERO
    000C   12 Signed       4 SHVBUFL        (+12) LENGTH OF 'FETCH' VALUE
                                            BUFFER
    0010   16 Address      4 SHVNAMA        (+16) ADDR OF PUBLIC VARIABLE
                                            NAME
    0014   20 Signed       4 SHVNAML        (+20) LENGTH OF PUBLIC VARIABLE
                                            NAME
    0018   24 Address      4 SHVVALA        (+24) ADDR OF VALUE BUFFER (0 IF
                                            NONE)
    001C   28 Signed       4 SHVVALL        (+28) LENGTH OF VALUE (SET BY
                                            'FETCH')
              00000020       SHVBLEN        *-SHVBLOCK (LENGTH OF THIS BLOCK
                                            = 32)
         FUNCTION CODES (SHVCODE):
              000000C6       SHVFETCH       C'F' COPY VALUE OF SHARED VAR TO
                                            BUFFER
              000000E2       SHVSTORE       C'S' STORE GIVEN VALUE IN SHARED
                                            VARIABLE The following function
                                            codes only apply to the System
                                            Product Interpreter.
         (Note that the symbolic name codes are lowercase)
              000000C4       SHVDROPV       C'D' DROP VARIABLE
              1... .11.      SHVSYFET       X'86' =C'f' SYMBOLIC NAME FETCH
                                            VARIABLE
              1.1. ..1.      SHVSYSET       X'A2' =C's' SYMBOLIC NAME SET
                                            VARIABLE
              1... .1..      SHVSYDRO       X'84' =C'd' SYMBOLIC NAME DROP
                                            VARIABLE
              000000D5       SHVNEXTV       C'N' FETCH 'NEXT' VARIABLE
              000000D7       SHVPRIV        C'P' FETCH PRIVATE INFORMATION
         RETURN CODE FLAGS (SHVRET):
              .... ....      SHVCLEAN       X'00' EXECUTION WAS OK
              .... ...1      SHVNEWV        X'01' VARIABLE DID NOT EXIST (SP
                                            interpreter only)
              .... ..1.      SHVLVAR        X'02' LAST VARIABLE TRANSFERRED
                                            (FOR N)
              .... .1..      SHVTRUNC       X'04' TRUNCATION OCCURRED FOR
                                            'FETCH'
              .... 1...      SHVBADN        X'08' INVALID VARIABLE NAME
              ...1 ....      SHVBADV        X'10' INVALID VARIABLE VALUE,
                                            e.g. too long (EXEC 2 ONLY).
              1... ....      SHVBADF        X'80' INVALID FUNCTION CODE
                                            (SHVCODE)

#### SHVBLOCK Storage Layout

    *** SHVBLOCK - Control BLocks for accessing shared variables
    *
    *     +---------------------------+---------------------------+
    *   0 |         SHVNEXT           |         SHVUSER           |
    *     +------+------+-------------+---------------------------+
    *   8 |:CODE |SHVRET|/////////////|         SHVBUFL           |
    *     +------+------+-------------+---------------------------+
    *  10 |         SHVNAMA           |         SHVNAML           |
    *     +---------------------------+---------------------------+
    *  18 |         SHVVALA           |         SHVVALL           |
    *     +---------------------------+---------------------------+
    *  20
    *
    *** SHVBLOCK - Control BLocks for accessing shared variables

#### SHVBLOCK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    SHVBADF        001C 80
    SHVBADN        001C 08
    SHVBADV        001C 10
    SHVBLEN        001C 00000020
    SHVBUFL        000C
    SHVCLEAN       001C 00
    SHVCODE        0008
    SHVDROPV       001C 000000C4
    SHVFETCH       001C 000000C6
    SHVLVAR        001C 02
    SHVNAMA        0010
    SHVNAML        0014
    SHVNEWV        001C 01
    SHVNEXT        0000
    SHVNEXTV       001C 000000D5
    SHVPRIV        001C 000000D7
    SHVRET         0009
    SHVSTORE       001C 000000E2
    SHVSYDRO       001C 84
    SHVSYFET       001C 86
    SHVSYSET       001C A2
    SHVTRUNC       001C 04
    SHVUSER        0004
    SHVVALA        0018
    SHVVALL        001C

This information is based on z/VM V4R3.0.
Last updated on 1 May 2002 at 14:28:22 EDT.
Copyright IBM Corporation, 1990, 2002