Verb Control Blocks (VCB)
Programming Note: The base operating system optimizes performance by executing some subsystems in the calling application's address space. This means that incorrect use of local descriptor table (LDT) selectors by application programs that have not been fully or correctly debugged can cause improper operation, or perhaps system failures.Accordingly, application programs should not perform pointer arithmetic operations that involve changing the LDT selector field of a pointer.
The segment used for the verb control block (VCB) must be a read/write data segment. Your program can either declare the VCB as a variable in your program, allocate it or suballocate it from a larger segment. It must be sufficiently large to contain all the fields for the verb your program is issuing.
An application program should not change any part of the verb control block after it has been issued until the verb completes. When management services finishes the execution of a verb, it copies a complete, modified VCB back onto the original block. Therefore, if your program declares a verb control block as a variable, consider declaring it in static storage rather than on the stack of an internal procedure.
Management services returns the INVALID_VERB_SEGMENT primary return code when the VCB is too short or the incorrect type of segment is used.