IBM MQ for z/OS

Before you can run a program written with IBM® MQ for z/OS®, you must link-edit it to the stub program supplied with IBM MQ for z/OS for the environment in which you are running the application.

The stub program provides the first stage of the processing of your calls into requests that IBM MQ for z/OS can process.

IBM MQ for z/OS supplies the following stub programs:
CSQBSTUB
Stub program for z/OS batch programs
CSQBRRSI
Stub program for z/OS batch programs using RRS by way of the MQI
CSQBRSTB
Stub program for z/OS batch programs using RRS directly
CSQCSTUB
Stub program for CICS® programs
CSQQSTUB
Stub program for IMS programs
CSQXSTUB
Stub program for distributed queuing non-CICS exits
CSQASTUB
Stub program for data-conversion exits
Attention: If you use a stub program other than one listed for a specific environment, it might have unpredictable results.
Note: If you use the CSQBRSTB stub program, link-edit with ATRSCSS from SYS1.CSSLIB. (SYS1.CSSLIB is also known as the Callable Services Library ). For more information about RRS see Transaction management and recoverable resource manager services.

Alternatively, you can dynamically call the stub from within your program. This technique is described in Dynamically calling the IBM MQ stub.

In IMS, you might also need to use a special language interface module that is supplied by IBM MQ.

Do not run applications that are link-edited with CSQBSTUB and CSQQSTUB in the same IMS MPP region. This can cause problems such as DFS3607I or CSQQ005E messages. The first MQCONN call in an address space determines which interface is used, therefore CSQQSTUB and CSQBSTUB transactions must run in different IMS message regions.