WebSphere MQ API exit context structure (MQAXC)
The MQAXC structure is used as an input parameter to an API exit. MQAXC has the following C declaration:
typedef struct tagMQAXC { MQCHAR4 StrucId; /* Structure identifier */ MQLONG Version; /* Structure version number */ MQLONG Environment; /* Environment */ MQCHAR12 UserId; /* UserId associated with appl */ MQBYTE40 SecurityId /* Extension to UserId running appl */ MQCHAR264 ConnectionName; /* Connection name */ MQLONG LongMCAUserIdLength; /* long MCA user identifier length */ MQLONG LongRemoteUserIdLength; /* long remote user identifier length */ MQPTR LongMCAUserIdPtr; /* long MCA user identifier address */ MQPTR LongRemoteUserIdPtr; /* long remote user identifier address */ MQCHAR28 ApplName; /* Application name */ MQLONG ApplType; /* Application type */ MQPID ProcessId; /* Process identifier */ MQTID ThreadId; /* Thread identifier */ };The parameters to MQAXC are:
- StrucId (MQCHAR4) - input
- The exit context structure identifier, with a value of MQAXC_STRUC_ID. For C programs, the constant MQAXC_STRUC_ID_ARRAY is also defined, with the same value as MQAXC_STRUC_ID, but as an array of characters instead of a string.
The exit handler sets this field on entry to each exit function.
- V(MQLONG) - input
- The structure version number, with a value of:
The exit handler sets this field on entry to each exit function.
- MQAXC_VERSION_1
- Vnumber for the exit context structure.
- MQAXC_CURRENT_VERSION
- Current version number for the exit context structure.
- Environment (MQLONG) - input
- The environment from which a WebSphere MQ API call was issued that resulted in an exit function being driven. Valid values for this field are:
The exit handler sets this field on entry to each exit function.
- MQXE_OTHER
- An unrecognizable environment
- MQXE_MCA
- Message channel agent
- MQXE_MCA_SVRCONN
- A message channel agent acting on behalf of a client
- MQXE_COMMAND_SERVER
- The command server
- MQXE_MQSC
- The runmqsc command interpreter
- UserId (MQCHAR12) - input
- The user ID associated with the application. In particular, in the case of client connections, this field contains the user ID of the adopted user as opposed to the user ID under which the channel code is running.
The exit handler sets this field on entry to each exit function. The length of this field is given by MQ_USER_ID_LENGTH.
- SecurityId (MQBYTE40) - input
- An extension to the userid running the application. Its length is given by MQ_SECURITY_ID_LENGTH.
- ConnectionName (MQCHAR264) - input
- The connection name field, set to the address of the client. For example, for TCP/IP, it would be the client IP address.
The length of this field is given by MQ_CONN_NAME_LENGTH.
- LongMCAUserIdLength (MQLONG) - input
- The length of the long MCA user identifier.
When MCA connects to the queue manager this field is set to the length of the long MCA user identifier (or zero if there is no such identifier).
- LongRemoteUserIdLength (MQLONG) - input
- The length of the long remote user identifier.
When MCA connects to the queue manager this field is set to the length of the long remote user identifier. Otherwise this field will be set to zero
- LongMCAUserIdPtr (MQPTR) - input
- Address of long MCA user identifier.
When MCA connects to the queue manager this field is set to the address of the long MCA user identifier (or to a null pointer if there is no such identifier).
- LongRemoteUserIdPtr (MQPTR) - input
- The address of the long remote user identifier.
When MCA connects to the queue manager this field is set to the address of the long remote user identifier (or to a null pointer if there is no such identifier).
- ApplName (MQCHAR28) - input
- The name of the application or component that issued the WebSphere MQ API call.
The rules for generating the ApplName are the same as for generating the default name for an MQPUT.
The value of this field is found by querying the operating system for the program name. Its length is given by MQ_APPL_NAME_LENGTH.
- ApplType (MQLONG) - input
- The type of application or component that issued the WebSphere MQ API call.
The value is MQAT_DEFAULT for the platform on which the application is compiled, or it equates to one of the defined MQAT_* values.
The exit handler sets this field on entry to each exit function.
- ProcessId (MQPID) - input
- The operating system process identifier.
Where applicable, the exit handler sets this field on entry to each exit function.
- ThreadId (MQTID) - input
- The MQ thread identifier. This is the same identifier used in MQ trace and FFST™ dumps, but might be different from the operating system thread identifier.
Where applicable, the exit handler sets this field on entry to each exit function.
Parent topic:
External control blocks
fg14620_