OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide
C Program Example
OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide—424822-001
B-14
 if (( local_rc == OM_RC_SUCCESS ) || ( local_rc == ZGPI_RC_WARNING 
))
 {
 if ( local_rc == ZGPI_RC_WARNING )
 printf (" WARNING! number: %d \n", local_rc );
 printf (" Object IPM IDENTIFIER\n");
 local_rc = build_and_insert_ipmid_object (root_id,local_object);
 if (( local_rc == OM_RC_SUCCESS ) ||
 ( local_rc == ZGPI_RC_WARNING ))
 {
 if ( local_rc == ZGPI_RC_WARNING )
 printf (" WARNING! number: %d \n", local_rc );
 printf (" ");
 printf ("Insert the object into the root object\n");
 descriptor_count = 1;
 descriptor_list[0].type = MH_T_CONTENT;
 descriptor_list[0].syntax = OM_S_OBJECT;
 descriptor_list[0].value.object.padding = 0;
 descriptor_list[0].value.object.object = local_object;
 local_rc = GPI_OM_INSERT_(root_id, /* Root object */
 /* identifier */
 IGNORED_FOR_SINGLE_VALUED_ATT,
 descriptor_list,
 descriptor_count);
 } /* if */
 } /* if */
 } /* if */
 } /* if */
 return (local_rc);
} /* build_and_insert_ipm_object */
#pragma page
/**************************************************************************/
/* Function Name: build_and_insert_trace_object */
/* */
/* Arguments: root_id IN */
/* */
/* Return: Return code from the function call */
/* */
/* Description: This function creates the mh_c_external_trace_entry */
/* with the initial value parameter set to FALSE. The */
/* function then inserts all the required attributes */
/* into the object. It then inserts the object into */
/* the root object. */
/**************************************************************************/
unsigned short build_and_insert_trace_object (unsigned long root_id)
{
 unsigned short
 local_rc; /* Return code from the function call */
 unsigned long
 descriptor_count = 5, /* Count of the elements */
 local_object; /* Local object identifier */
 OM_descriptor










