OSI/AS Programming Manual

Example 1: Session Layer
Sample Programs
E–20 056783 Tandem Computers Incorporated
zaps_ddl_appl_addr_def remote_appl_2;
zaps_ddl_l5_rqmnts_def session_rqmnts;
zaps_ddl_l5_rqmnts_def session_rqmnts_1;
zaps_ddl_l5_rqmnts_def session_rqmnts_2;
struct user_data_def user_data;
struct user_data_def user_data_1;
struct user_data_def user_data_2;
/* */
/* Source in APS external declarations. */
/* */
/* This program assumes that the CEXTDECS file is in this */
/* program's volume and subvolume unless you ASSIGN it to */
/* be elsewhere. */
/* */
#include "CEXTDECS ( DEBUG ) " NOLIST
#include "CEXTDECS ( APS_ASSOC_ATTACH_ )"
#include "CEXTDECS ( APS_ASSOC_CONNECTREQ_ )"
#include "CEXTDECS ( APS_ASSOC_CONNECTRSP_ )"
#include "CEXTDECS ( APS_ASSOC_GETPARAM_ )"
#include "CEXTDECS ( APS_ASSOC_RELEASEREQ_ )"
#include "CEXTDECS ( APS_ASSOC_RELEASERSP_ )"
#include "CEXTDECS ( APS_DATA_GETPARAM_ )"
#include "CEXTDECS ( APS_DATA_REQ_ )"
#include "CEXTDECS ( APS_DISCARD_ )"
#include "CEXTDECS ( APS_EVENT_RECEIVE_ )"
#include "CEXTDECS ( APS_INITIALIZE_ )"
#include "CEXTDECS ( APS_STATUS_ )"
#pragma PAGE
/*--------------------------------------------------------*/
/* */
/* Display an error message for those APS procedures that */
/* return 'error'. */
/* */
/*--------------------------------------------------------*/
void display_aps_error( error_proc )
int error_proc; /* i : aps proc label */
{
char *proc_name;
switch( error_proc )
{
case error_assoc_getparam_proc :
proc_name = "APS_ASSOC_GETPARAM_";
break;
case error_data_getparam_proc :
proc_name = "APS_DATA_GETPARAM_";
break;
case error_initialize_proc :
proc_name = "APS_INITIALIZE_";