HP-UX SNAplus2 R7 LUA Programmer's Guide
LUA VCB Structure
LUA Verb Control Block (VCB) Format
Note
The LUA VCB contains many parameters marked as “reserved”; some of these are used
internally by the SNAplus2 software, and others are not used in this version but may be
used in future versions. Your application must not attempt to access any of these reserved
parameters; instead, it must set the entire contents of the VCB to zero to ensure that all of
these parameters are zero, before it sets other parameters that are used by the verb. This
ensures that SNAplus2 will not misinterpret any of its internally-used parameters, and also
that your application will continue to work with future SNAplus2 versions in which these
parameters may be used to provide new functions.
To set the VCB contents to zero, use
memset:
memset(vcb, 0, sizeof(vcb));
3.1.1 LUA_VERB_RECORD Data Structure
typedef struct
{
struct LUA_COMMON common;
struct LUA_SPECIFIC specific;
} LUA_VERB_RECORD;
3.1.2 Common Data Structure
UNIX
struct LUA_COMMON
{
AP_UINT16 lua_verb; /* Verb Code */
AP_UINT16 lua_verb_length; /* Length of Verb Record */
AP_UINT16 lua_prim_rc; /* Primary Return Code */
AP_UINT32 lua_sec_rc; /* Secondary Return Code */
AP_UINT16 lua_opcode; /* Verb Operation Code */
AP_UINT32 lua_correlator; /* User Correlation Field */
unsigned char lua_luname[8]; /* Local LU Name */
AP_UINT16 lua_extension_list_offset; /* Offset of DLL Extention List*/
AP_UINT16 lua_cobol_offset; /* Offset of Cobol Extension */
AP_UINT32 lua_sid; /* Session ID */
AP_UINT16 lua_max_length; /* Receive Buffer Length */
AP_UINT16 lua_data_length; /* Data Length */
char * lua_data_ptr; /* Data Buffer Pointer */
unsigned long lua_post_handle; /* Posting handle */
struct LUA_TH { /* LUA TH Fields */
BIT_FIELD_TYPE flags_fid : 4; /* Format Identification Type 2 */
BIT_FIELD_TYPE flags_mpf : 2; /* Segmenting Mapping Field */
BIT_FIELD_TYPE flags_odai : 1; /* OAF-DAF Assignor Indicator */
BIT_FIELD_TYPE flags_efi : 1; /* Expedited Flow Indicator */
BIT_FIELD_TYPE : 8; /* Reserved Field */
unsigned char daf; /* Destination Address Field */
unsigned char oaf; /* Originating Address Field */
unsigned char snf[2]; /* Sequence Number Field */
} lua_th;
54