This document covers the following topics:
This table lists all Broker stubs available under the z/VM operating system which are to be used with the programming languages Natural, COBOL, Assembler, PL/I and C.
If your Broker kernel is running on another mainframe operating system, such as z/OS or z/VSE, you can use transport method NET or transport method TCP to communicate with the Broker kernel from z/VM.
If your Broker kernel is running under UNIX or Windows, you can use transport method TCP to communicate with the Broker kernel from z/VM.
Note:
z/VM stub does not currently support send/receive buffers greater than
32 KB when using transport method NET .
| Environment | Transport | Transport Timeout | Trace | Location Transparency | Compression | Stub Module | ||
|---|---|---|---|---|---|---|---|---|
| NET | TCP | SSL | ||||||
|
Yes | Yes | No | Yes | Yes | No | No | BKIMBCMS* |
* BKIMBCMS does not support multi-threading or multitasking applications.
This stub can be used with conventional as well as IBM Language Environment applications. It does not support multitasking applications.
Link your application to the TEXT member BKIMBCMS from the EntireX distribution package. BKIMBCMS has the entry point BROKER.
CMOD MYPROG BKIMBCMS
LOAD MYPROG INCLUDE BKIMBCMS GENMOD MYPROG
Natural running under z/VM uses the Broker stub BKIMBCMS. The TEXT module BKIMBCMS can be linked with the Natural nucleus or loaded dynamically. However, you must not link BKIMBCMS with the Natural nucleus - for example, using NATBLDS - if executing in a shared segment. To load the Broker stub dynamically, use the following Natural parameter:
RCA=NATETB23,RCALIAS=(BROKER,BKIMBCMS)
The following table describes the possible values for the transport methods:
| Transport Value | Description / Tips | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| NET |
|
||||||||||||||||
| TCP | Use TCP/IP as the transport method. | ||||||||||||||||
| SSL | Use Secure Sockets Layer (SSL) as the transport method (not yet available). | ||||||||||||||||
The default transport method for stub BKIMBCMS is TCP.
If the transport layer is interrupted, communication between the Broker and the stub - i.e., client or server application - is no longer possible. A client or server might possibly wait infinitely for a Broker reply or message in such a situation. To prevent this and return control to your calling application in such a situation, set a timeout value for the transport method.
The timeout settings for transport layers are independent of the Broker's.
The timeout value for the transport method is used together with the Broker timeout - which is set by the application in the WAIT field of the Broker ACI Control Block - to calculate the actual value for the transport layer's timeout.
The following table describes the possible values for the transport timeout.
| Transport Timeout Value | Description |
|---|---|
| 0 | Infinite wait for the application. |
| n | The transport method waits this additional time in seconds. Negative values will be treated as TIMEOUT=0 - i.e., infinite wait for the application. |
| nothing set | Infinite wait for the application. |
The actual timeout for transport layer = Broker timeout (WAIT field) + timeout value for transport method.
Tracing is supported by the z/VM Broker stub and can be activated by setting the environment variable ETB_STUBLOG.
The stub trace file is allocated as follows:
FILEDEF ETBLOG DISK <file-name> <file-type> <file-mode>
The following table describes the possible values for the Broker stub trace:
| Trace Level | Trace Level Description | |
|---|---|---|
| 0 | NONE | No tracing. Switch tracing off. |
| 1 | STANDARD | Traces initialization, errors, and all ACI request/reply strings. |
| 2 | ADVANCED | Used primarily by System Engineers, traces everything from level 1 and provides additional information - e.g., the Broker ACI Control Block, as well as information from the transports. |
| 3 | SUPPORT | This is full tracing through the stub, including detailed traces of control blocks, message information, etc. |
To use the Adabas/Entire Net-Work transport to communicate between an application with a Broker on another mainframe, link the ADAENTRY module against the Adabas link modulke ADALNK. Ensure that your Adabas TEXT library is available before running the link.
LOAD ETBADUSR (RLDSAVE RESET ETBADUSR) GENMOD ADAENTRY (AMODE 31 RMODE ANY)
Language Environment programs can specify the environment variable - for example, ETB_STUBLOG - in the command line:
MYPROG ENVAR(ETB_STUBLOG=1)/-bMYBROKER
Non-Language Environment applications require setting z/VM environments before executing the application:
GLOBALV SELECT CENV SETLP ETB_STUBLOG 1