OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide
C Program Example
OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide—424822-001
B-9
 */
 local_rc = GPI_OM_INSERT_ ( local_object,
 IGNORED_FOR_SINGLE_VALUED_ATT,
 descriptor_list,
 descriptor_count);
 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_BILATERAL_INFORMATION;
 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 */
 IGNORED_FOR_SINGLE_VALUED_ATT,
 descriptor_list,
 descriptor_count);
 } /* if */
 } /* if */
 } /* if */
 return (local_rc);
} /* build_and_insert_bilateral_object */
#pragma page
/**************************************************************************/
/* Function Name: build_and_insert_ipmid_object */
/* */
/* Arguments: root_id IN */
/* object_id IN */
/* */
/* Return: Return code from the function call */
/* */
/* Description: This function creates the im_c_ipm_identifier object */
/* 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 im_c_interpersonal_message object. */
/**************************************************************************/
unsigned short build_and_insert_ipmid_object
 (unsigned long root_id, /* Root object identifier */
 unsigned long object_id) /* Object identifier from */
 /* the layer above */
{
 unsigned short
 local_rc; /* Return code from the function call */
 unsigned long
 descriptor_count = 1, /* Count of the elements */
 local_object; /* Local object identifier */
 OM_descriptor
 descriptor_list[] =
 {










