/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/

/\ If the call is successful, call the exit programs.\/ /\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/ Call_Exit_Program(rcv_variable);

/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/

/\ If the continuation handle

field in the receiver variabl￿e is

\/

/\

not set to blanks, the

API

has more

information to return

\/

/\

than what could fit in

the

receiver

variable.

\/

/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/ rcv_ptr=rcv_variable;

while (memcmp(((Qus_EXTIð2ðð_t \)rcv_ptr)->Continue_Handle,

"",16)!=ð)

{

memcpy(continuation_hdl,

((Qus_EXTIð2ðð_t \)rcv_ptr)→Continue_Handle,16);

/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/

/\ Call the API to retrieve the exit program information. \/ /\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/ QusRetrieveExitInformation(continuation_hdl,

&rcv_variable, len_rcv_variable, "EXTIð2ðð", "EXAMPLE_EXIT_POINT ", "EXMPð1ðð", exit_pgm_num, &sel_criteria, &error_code);

/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/

/\ Verify that the call to the API is successful.\/ /\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/ if (error_code.ec_fields.Bytes_Available != ð)

{

printf("RETRIEVE EXIT PROGRAMS FAILED WITH EXCEPTION: %.7s￿", error_code.ec_fields.Exception_Id);

exit(1);

}

/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/

/\ If the call is successful, call the exit programs.

\/

/\ The receiver variable offers enough room for a minimum o￿f

\/

/\ one exit program entry because the receiver variable was￿

\/

/\ declared as 35ðð bytes. Therefore, this example only

\/

/\ checks the number of exit programs returned field. If the

\/

/\ receiver variable were not large enough to hold at least￿

\/

/\ one entry, the bytes available field would need to be

\/

/\ checked as well as the number of exit programs returned

\/

/\ field. If the number of exit programs returned field is

\/

/\ set to zero and the bytes available field is greater than￿

\/

/\ the bytes returned field, the API had at least one exit

\/

/\ program entry to return but was unable to because the

\/

/\ receiver variable was too small.

\/

/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/ Call_Exit_Program(rcv_variable);

} /\ While continuation handle not set to blanks \/

}/\ Number of exit programs not equal to zero \/

4-18System API Programming V4R1

Page 108
Image 108
IBM Version 4 manual 18System API Programming V4R1