PAM Programming Manual
Link-Level Programming Examples
PAM Programming Manual—142482
B-19
Receiving an Aggregate SDU
Receiving an Aggregate SDU
The application must also provide a procedure for receiving aggregate SDUs from a 
PORT.
#pragma page “PROCEDURE: Receive_”
/* ----------------------------------------------------------------
 PROCEDURE: Receive_
---------------------------------------------------------------- */
void Receive_ ( buffer_lst_ndx )
 long int buffer_lst_ndx;
 {
 int file_error;
 int cc;
 buffer_lst[ buffer_lst_ndx ].in_use_flag = True;
 buffer_lst[ buffer_lst_ndx ].test_char = test_char;
 buffer_lst[ buffer_lst_ndx ].user_data_size_b =
 Current_User_Data_Size_B;
 cc = READX ( L2SAP_file_num,
 (char *)(&buffer_lst[ buffer_lst_ndx ].buffer),
 Max_Req_Size,
 ,
 (int *)(&buffer_lst_ndx) );
 if (cc != condition_ok)
 {
 FILEINFO ( L2SAP_file_num, (int *)(&file_error ) );
 fprintf(stdout,”Read error: %d\n”, file_error);
 exit(Abend_exit);
 };
}
/* -------------------- End of Receive_ procedure -------------- */
Opening a PORT
The application must also provide a procedure for opening PORTs.
#pragma page “PROCEDURE: Open_”
/* ----------------------------------------------------------------
 PROCEDURE: Open_
---------------------------------------------------------------- */
void Open_()
 {
 int file_error;
 int cc;
 cc = OPEN ( (int *)L2SAP_file_name, 
 &L2SAP_file_num, NoWait_Depth );
 if (cc != condition_ok)
 {
 FILEINFO ( L2SAP_file_num, (int *)&file_error );
 fprintf(stdout, “Open failed - Error: %d\n”, file_error);
 exit(Abend_exit);
 };
 cc = SETMODE ( L2SAP_file_num, 30, 1, 0 );
 if (cc != condition_ok)
 {










