Close - MQ_CLOSE_EXIT

MQ_CLOSE_EXIT provides a close exit function to perform before and after MQCLOSE call processing. Use function identifier MQXF_CLOSE with exit reasons MQXR_BEFORE and MQXR_AFTER to register before and after MQCLOSE call exit functions.

The interface to this function is:
MQ_CLOSE_EXIT (&ExitParms, &ExitContext, &Hconn, &pHobj,
               &Options, &CompCode, &Reason)
where the parameters are:
ExitParms (MQAXP) - input/output
Exit parameter structure.
ExitContext (MQAXC) - input/output
Exit context structure.
Hconn (MQHCONN) - input
Connection handle.
pHobj (PMQHOBJ) - input
Pointer to object handle.
Options (MQLONG)- input/output
Close options.
CompCode (MQLONG) - input/output
Completion code, valid values for which are:
MQCC_OK
Successful completion.
MQCC_FAILED
Call failed
Reason (MQLONG) - input/output
Reason code qualifying the completion code.
If the completion code is MQCC_OK, the only valid value is:
MQRC_NONE
(0, x'000') No reason to report.
If the completion code is MQCC_FAILED, the exit function can set the reason code field to any valid MQRC_* value.

C language invocation

The queue manager logically defines the following variables:
        MQAXP           ExitParms;      /* Exit parameter structure */
        MQAXC           ExitContext;    /* Exit context structure */
        MQHCONN         Hconn;          /* Connection handle */
        PMQHOBJ         pHobj;          /* Ptr to object handle */
        MQLONG          Options;        /* Close options */
        MQLONG          CompCode;       /* Completion code */
        MQLONG          Reason;         /* Reason code */
The queue manager then logically calls the exit as follows:
MQ_CLOSE_EXIT (&ExitParms, &ExitContext,&Hconn, &pHobj, &Options,
               &CompCode, &Reason);
Your exit must match the following C function prototype:
void MQENTRY MQ_CLOSE_EXIT (
PMQAXP          pExitParms,     /* Address of exit parameter structure */
PMQAXC          pExitContext,   /* Address of exit context structure */
PMQHCONN        pHconn,         /* Address of connection handle */
PPMQHOBJ        ppHobj,         /* Address of ptr to object handle */
PMQLONG         pOptions,       /* Address of close options */
PMQLONG         pCompCode,      /* Address of completion code */
PMQLONG         pReason);       /* Address of reason code qualifying
                                   completion code */