Allows you to bypass completely the default response
processing.
Syntax:
typedef cblt_rtncode (*PFI_IDP_EXIT)(mf_uns32 exit_point,
IDP_EXIT_INFO *exit_info);
On Entry:
exit point |
5 = Start of response processing |
exit_info
|
version |
Version of structure format |
|
flags |
0 |
|
funcs |
User exit support functions |
|
request_cxt
|
version |
Version of structure format |
|
argc |
Parameter count of loaded service |
|
return_code |
Service's return code, or run-time error
generated by service |
|
service_type |
Type of client request |
|
display_buf_len |
Length of data in display_buf |
|
flags |
Request context control flags |
|
protocol_attrs |
An array of pointers to protocol-specifc
attributes |
|
argv |
Parameter list of loaded service |
|
service_name |
Name of loaded service |
|
pgm_name |
Name of the main program associated with the
service |
|
display_buf |
Concatenation of strings output by ANSI
DISPLAY statements |
|
|
response
|
flags |
Control flags |
|
response_type |
Server's response type |
|
|
exit_data |
User exit-specific data |
|
On Exit:
exit_info
|
flags |
0 |
|
response
|
response_len |
Length of response_buf |
|
flags |
Control flags |
|
response_buf |
Server's response buffer |
|
content_type |
NULL-terminated content type string (HTTP)
only |
|
|
exit_data |
User exit-specific data |
|
Return codes:
IDP_EXIT_CONTINUE |
0 |
Continue with default response processing |
IDP_EXIT_STOP |
1 |
Terminate mapping processing. An error response will be
required |
IDP_EXIT_HANDLED |
2 |
The entire response has been built by the exit. No
further processing is required. The response is ready to be sent back to the
client. |
Comments:
This exit gives you the opportunity to bypass completely the default
response processing. If the exit wants the default response processing to be
bypassed, it must set up the response fields indicated above as being returned
fields, using the fn_alloc_mem support function of
the exit_info funcs structure to allocate the memory for the response buffer,
and return IDP_EXIT_HANDLED.
The user exit program owns the exit_data field of the IDP_EXIT_INFO
structure. You would typically use it to preserve context information between
exit point invocations. You can use it when returning any of the IDP_EXIT_
return values.
See Also: