MQ_PUT_EXIT - Put message

 


Exit providers can supply an  MQ_PUT_EXIT  function to intercept the  MQPUT  call.

 

Syntax


 MQ_PUT_EXIT  (pExitParms, pExitContext, pHconn, pHobj, ppMsgDesc,
ppPutMsgOpts, pBufferLength, ppBuffer, pCompCode, pReason)

 

Parameters

The  MQ_PUT_EXIT  call has the following parameters.

 

pExitParms (PMQAXP) - input/output

Exit parameter structure.

 

pExitContext (PMQAXC) - input/output

Exit context structure.

 

pHconn (PMQHCONN) - input/output

Connection handle.

 

pHobj (PMQHOBJ) - input/output

Object handle.

 

ppMsgDesc (PPMQMD) - input/output

Message descriptor.

 

ppPutMsgOpts (PPMQPMO) - input/output

Options that control the action of  MQPUT .

 

pBufferLength (PMQLONG) - input/output

Length of the message in pBuffer.

 

ppBuffer (PPMQVOID) - input/output

Message data.

 

pCompCode (PMQLONG) - input/output

Completion code.

 

pReason (PMQLONG) - input/output

Reason code qualifying pCompCode.

 

Usage notes

  • Report messages generated by the queue manager skip the normal call processing. As a result, such messages cannot be intercepted by the  MQ_PUT_EXIT  function or the  MQPUT1  function. However, report messages generated by the message channel agent are processed normally, and hence can be intercepted by the  MQ_PUT_EXIT  function or the  MQ_PUT1_EXIT  function. To be sure to intercepting all of the report messages generated by the MCA, both  MQ_PUT_EXIT  and  MQ_PUT1_EXIT  should be used.

 

C invocation

MQ_PUT_EXIT (&ExitParms, &ExitContext, &Hconn, &Hobj,
            &pMsgDesc, &pPutMsgOpts, &BufferLength,
            &pBuffer, &CompCode, &Reason);

The parameters passed to the exit are declared as follows:

PMQAXP    pExitParms;     /* Exit parameter structure */
PMQAXC    pExitContext;   /* Exit context structure */
PMQHCONN  pHconn;         /* Connection handle */
PMQHOBJ   pHobj;          /* Object handle */
PPMQMD    ppMsgDesc;      /* Message descriptor */
PPMQPMO   ppPutMsgOpts;   /* Options that control the action of MQPUT */
PMQLONG   pBufferLength;  /* Length of the message in pBuffer */
PPMQVOID  ppBuffer;       /* Message data */
PMQLONG   pCompCode;      /* Completion code */
PMQLONG   pReason;        /* Reason code qualifying CompCode */