FTAM/9000 Programmer's Guide

Chapter 10 371
Example Programs
Using LLCS Functions Example
/*
** Get the parameters for ft_deselect.
** Call ft_deselect and verify the outcome.
*/
des_parm_in( & return_event_name, & des_input_dcb, & des_inout_dcb );
res = ft_deselect(conn_id[i], return_event_name, des_input_dcb,
& des_inout_dcb);
if (res != SUCCESS)
error_handler(des_inout_dcb->result, des_inout_dcb->diagnostic);
/*
** Get the parameters for ft_egroup.
** Call ft_egroup and verify the outcome.
*/
egr_parm_in( & return_event_name, & egr_input_dcb, & egr_inout_dcb );
res = ft_egroup(conn_id[i], return_event_name, egr_input_dcb,
& egr_inout_dcb);
if (res != SUCCESS)
error_handler(egr_inout_dcb->result, diag);
/*
** Wait on the asynchronous events in the group.
*/
for (j = 1; j %<M=> 3; ++j) {
wait_parm_in( & time, & result );
res = em_wait(time, & return_event_name, & result);
if (res != SUCCESS)
error_handler(result, diag);
switch (return_event_name) {
case 1:
if (bgr_inout_dcb->result.return_code != SUCCESS)
error_handler(bgr_inout_dcb->result, diag);
break;
case 2:
if (clo_inout_dcb->result.return_code != SUCCESS)
error_handler(clo_inout_dcb->result,
clo_inout_dcb->diagnostic);
break;
case 3:
if (des_inout_dcb->result.return_code != SUCCESS)
error_handler(des_inout_dcb->result,
des_inout_dcb->diagnostic);
break;
default:
break;
}
}
/*
** Free memory.
*/
res = ft_dfdcb((Octet *)bgr_inout_dcb, & outcome);
if (res != SUCCESS)
error_handler(outcome, diag);
res = ft_dfdcb((Octet *)clo_inout_dcb, & outcome);
if (res != SUCCESS)
error_handler(outcome, diag);
res = ft_dfdcb((Octet *)des_inout_dcb, & outcome);
if (res != SUCCESS)
error_handler(outcome, diag);
res = ft_dfdcb((Octet *)egr_inout_dcb, & outcome);
if (res != SUCCESS)
error_handler(outcome, diag);
}