Begin - MQ_BEGIN_EXIT

MQ_BEGIN_EXIT provides a begin exit function to perform before and after MQBEGIN call processing. Use function identifier MQXF_BEGIN with exit reasons MQXR_BEFORE and MQXR_AFTER to register before and after MQBEGIN call exit functions.

The interface to this function is:
MQ_BEGIN_EXIT (&ExitParms, &ExitContext, &Hconn, &pBeginOptions, &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.
pBeginOptions (PMQBO)- input/output
Pointer to begin options.
CompCode (MQLONG) - input/output
Completion code, valid values for which are:
MQCC_OK
Successful completion.
MQCC_WARNING
Partial 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 or MQCC_WARNING, 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 */
        PMQBO    pBeginOptions;  /* Ptr to begin options */
        MQLONG   CompCode;       /* Completion code */
        MQLONG   Reason;         /* Reason code qualifying completion code */
The queue manager then logically calls the exit as follows:
MQ_BEGIN_EXIT (&ExitParms, &ExitContext, &Hconn, &pBeginOptions, &CompCode,
               &Reason);
Your exit must match the following C function prototype:
void MQENTRY MQ_BEGIN_EXIT (
PMQAXP    pExitParms,       /* Address of exit parameter structure */
PMQAXC    pExitContext,     /* Address of exit context structure */
PMQHCONN  pHconn,           /* Address of connection handle */
PPMQBO    ppBeginOptions,   /* Address of ptr to begin options */
PMQLONG   pCompCode,        /* Address of completion code */
PMQLONG   pReason);         /* Address of reason code qualifying completion
                               code */