MQ_CHANNEL_AUTO_DEF_EXIT - Channel auto-definition exit
The MQ_CHANNEL_AUTO_DEF_EXIT call describes the parameters that are passed to the channel auto-definition exit called by the Message Channel Agent.
No entry point called MQ_CHANNEL_AUTO_DEF_EXIT is provided by the queue manager; the name MQ_CHANNEL_AUTO_DEF_EXIT is of no special significance because the names of the auto-definition exits are provided in the queue manager.
Syntax
- MQ_CHANNEL_AUTO_DEF_EXIT (ChannelExitParms, ChannelDefinition)
Parameters
The MQ_CHANNEL_AUTO_DEF_EXIT call has the following parameters.
- ChannelExitParms (MQCXP) - input/output
-
Channel exit parameter block.
This structure contains additional information relating to the invocation of the exit. The exit sets information in this structure to indicate how the MCA proceeds.
- ChannelDefinition (MQCD) - input/output
-
Channel definition.
This structure contains parameters set by the administrator to control the behavior of channels which are created automatically. The exit sets information in this structure to modify the default behavior set by the administrator.
The MQCD fields listed must not be altered by the exit:- ChannelName
- ChannelType
- StrucLength
- Version
If other fields are changed, the value set by the exit must be valid. If the value is not valid, an error message is written to the error log file or displayed on the console (as appropriate to the environment).
Attention: Auto-defined channels created by a channel automatic definition (CHAD) exit cannot set the certificate label, because the TLS handshake has occurred by the time the channel is created. Setting the certificate label in a CHAD exit for inbound channels has no effect.
C invocation
exitname (&ChannelExitParms, &ChannelDefinition);The parameters passed to the exit are declared as follows:
MQCXP ChannelExitParms; /* Channel exit parameter block */ MQCD ChannelDefinition; /* Channel definition */
COBOL invocation
CALL 'exitname' USING CHANNELEXITPARMS, CHANNELDEFINITION.The parameters passed to the exit are declared as follows:
** Channel exit parameter block 01 CHANNELEXITPARMS. COPY CMQCXPV. ** Channel definition 01 CHANNELDEFINITION. COPY CMQCDV.
RPG invocation (ILE)
C*..1....:....2....:....3....:....4....:....5....:....6....:....7.. C CALLP exitname(MQCXP : MQCD)The prototype definition for the call is:
D*..1....:....2....:....3....:....4....:....5....:....6....:....7.. Dexitname PR EXTPROC('exitname') D* Channel exit parameter block D MQCXP 160A D* Channel definition D MQCD 1328A
System/390 assembler invocation
CALL EXITNAME,(CHANNELEXITPARMS,CHANNELDEFINITION)The parameters passed to the exit are declared as follows:
CHANNELEXITPARMS CMQCXPA, Channel exit parameter block CHANNELDEFINITION CMQCDA , Channel definition
Usage notes
- The function performed by the channel exit is defined by the provider of the exit. The exit, however, must conform to the rules defined here and in the associated control block, the MQCXP.
- The ChannelExitParms parameter passed to the channel auto-definition exit is an MQCXP structure. The version of MQCXP passed depends on the environment in which the exit is running; see the description of the Version field in MQCXP - Channel exit parameter for details.
- The ChannelDefinition parameter passed to the channel auto-definition exit is an MQCD structure. The version of MQCD passed depends on the environment in which the exit is running; see the description of the Version field in MQCD - Channel definition for details.
Parent topic: Channel-exit calls and data structures