OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide
Recovering From Errors
OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide—424822-001
6-11
Information Buffer
Each of the other four structures also has the 32-bit identifier and the subordinate data
structure. However, each of the other four subordinate structures contains different data
fields. For additional details on the make-up of each structure, refer to the
GPI Reference Manual.
The five structure types relate to different errors. ZGPI-INFO-1 and ZGPI-INFO-2
relate to client problems. The other three structures relate to problems within OSI/MHS
or the Compaq NonStop operating system.
ZGPI-INFO-1 is returned for errors related to inbound or outbound processing.
ZGPI-INFO-2 is returned for errors related to a dangling object. A dangling object is a
subobject that has been created but not inserted into its superobject. Generally, errors
related to dangling objects occur when calling GPI_MT_TRANSFER_OUT_ .
Errors indicated by the other three structures are not immediately recoverable. Data
related to these internal problems should be analyzed by a Compaq representative.
Reading Buffer Structures
The format of each of the five buffer structures is known to the client. The starting
address of the buffer also is known. These facts are the basis for an algorithm to read
the buffer.
Figure 6-5 expands the “Report info buffer” box first shown in Figure 6-2. As shown, a
pointer is set at the start of the buffer (buffer_address). The print_info_buffer routine is
called to read the first structure in the buffer. The structure_size is subtracted from
actual_info_length to find the length of remaining information. If there is information
left, structure_size is added to buffer_address to advance the pointer. The loop
continues until the last structure is read and displayed.
Figure 6-4. The Structure of the Information Buffer
604CDT .CDD
Information Buffer
ZGPI-INFO-1
ZGPI-INFO-3
ZGPI-INFO-2
ZGPI-INFO-5
ZGPI-INFO-4
ZGPI-INFO-1
Z-STRUCT-TYPE
ZGPI-ERROR-ATTR-DATA
Z-ATTR-DSCR
ZGPI-ERROR-ATTR-DATA
Z-OBJ-ID
Z-OBJ-CLASS
Z-ATTR-STRING-VALUE
(ZGPI-ST-ERROR-ATTR)